From ba1f66367be7f56a1e80e39f63ed11f8f5f3dde9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 21 Jun 2024 10:17:03 +0800 Subject: [PATCH 001/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20postgres=20f?= =?UTF-8?q?lowable=20sql=20=E7=BC=BA=E5=A4=B1=E5=AD=97=E6=AE=B5=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- script/sql/postgres/flowable.sql | 73 +------------------------------- 1 file changed, 2 insertions(+), 71 deletions(-) diff --git a/script/sql/postgres/flowable.sql b/script/sql/postgres/flowable.sql index 6e75e4bb3..8a6078d07 100644 --- a/script/sql/postgres/flowable.sql +++ b/script/sql/postgres/flowable.sql @@ -39,29 +39,17 @@ create table test_leave ); comment on table test_leave is '请假申请表'; - comment on column test_leave.id is '主键'; - comment on column test_leave.leave_type is '请假类型'; - comment on column test_leave.start_date is '开始时间'; - comment on column test_leave.end_date is '结束时间'; - comment on column test_leave.remark is '请假原因'; - comment on column test_leave.status is '状态'; - comment on column test_leave.create_dept is '创建部门'; - comment on column test_leave.create_by is '创建者'; - comment on column test_leave.create_time is '创建时间'; - comment on column test_leave.update_by is '更新者'; - comment on column test_leave.update_time is '更新时间'; - comment on column test_leave.tenant_id is '租户编码'; alter table test_leave @@ -86,27 +74,16 @@ create table wf_category ); comment on table wf_category is '流程分类'; - comment on column wf_category.id is '主键'; - comment on column wf_category.category_name is '分类名称'; - comment on column wf_category.category_code is '分类编码'; - comment on column wf_category.parent_id is '父级id'; - comment on column wf_category.sort_num is '排序'; - comment on column wf_category.tenant_id is '租户id'; - comment on column wf_category.create_dept is '创建部门'; - comment on column wf_category.create_by is '创建者'; - comment on column wf_category.create_time is '创建时间'; - comment on column wf_category.update_by is '修改者'; - comment on column wf_category.update_time is '修改时间'; alter table wf_category @@ -137,31 +114,18 @@ create table wf_task_back_node ); comment on table wf_task_back_node is '节点审批记录'; - comment on column wf_task_back_node.id is '主键'; - comment on column wf_task_back_node.node_id is '节点id'; - comment on column wf_task_back_node.node_name is '节点名称'; - comment on column wf_task_back_node.order_no is '排序'; - comment on column wf_task_back_node.instance_id is '流程实例id'; - comment on column wf_task_back_node.task_type is '节点类型'; - comment on column wf_task_back_node.assignee is '审批人'; - comment on column wf_task_back_node.tenant_id is '租户id'; - comment on column wf_task_back_node.create_dept is '创建部门'; - comment on column wf_task_back_node.create_by is '创建者'; - comment on column wf_task_back_node.create_time is '创建时间'; - comment on column wf_task_back_node.update_by is '修改者'; - comment on column wf_task_back_node.update_time is '修改时间'; alter table wf_task_back_node @@ -177,6 +141,7 @@ create table wf_definition_config process_key varchar(255) not null, version bigint not null, tenant_id varchar(20), + remark varchar(500), create_dept bigint, create_by bigint, create_time timestamp, @@ -185,27 +150,17 @@ create table wf_definition_config ); comment on table wf_definition_config is '流程定义配置'; - comment on column wf_definition_config.id is '主键'; - comment on column wf_definition_config.table_name is '表名'; - comment on column wf_definition_config.definition_id is '流程定义ID'; - comment on column wf_definition_config.process_key is '流程KEY'; - comment on column wf_definition_config.version is '流程版本'; - comment on column wf_definition_config.tenant_id is '租户id'; - +comment on column wf_definition_config.remark is '备注'; comment on column wf_definition_config.create_dept is '创建部门'; - comment on column wf_definition_config.create_by is '创建者'; - comment on column wf_definition_config.create_time is '创建时间'; - comment on column wf_definition_config.update_by is '修改者'; - comment on column wf_definition_config.update_time is '修改时间'; alter table wf_definition_config @@ -231,27 +186,16 @@ create table wf_form_manage ); comment on table wf_form_manage is '表单管理'; - comment on column wf_form_manage.id is '主键'; - comment on column wf_form_manage.form_name is '表单名称'; - comment on column wf_form_manage.form_type is '表单类型'; - comment on column wf_form_manage.router is '路由地址/表单ID'; - comment on column wf_form_manage.remark is '备注'; - comment on column wf_form_manage.tenant_id is '租户id'; - comment on column wf_form_manage.create_dept is '创建部门'; - comment on column wf_form_manage.create_by is '创建者'; - comment on column wf_form_manage.create_time is '创建时间'; - comment on column wf_form_manage.update_by is '修改者'; - comment on column wf_form_manage.update_time is '修改时间'; insert into wf_form_manage(id, form_name, form_type, router, remark, tenant_id, create_dept, create_by, create_time, update_by, update_time) VALUES (1, '请假申请', 'static', '/workflow/leaveEdit/index', NULL, '000000', 103, 1, now(), 1, now()); @@ -276,31 +220,18 @@ create table wf_node_config ); comment on table wf_node_config is '节点配置'; - comment on column wf_node_config.id is '主键'; - comment on column wf_node_config.form_id is '表单id'; - comment on column wf_node_config.form_type is '表单类型'; - comment on column wf_node_config.node_id is '节点id'; - comment on column wf_node_config.node_name is '节点名称'; - comment on column wf_node_config.definition_id is '流程定义id'; - comment on column wf_node_config.apply_user_task is '是否为申请人节点 (0是 1否)'; - comment on column wf_node_config.tenant_id is '租户id'; - comment on column wf_node_config.create_dept is '创建部门'; - comment on column wf_node_config.create_by is '创建者'; - comment on column wf_node_config.create_time is '创建时间'; - comment on column wf_node_config.update_by is '修改者'; - comment on column wf_node_config.update_time is '修改时间'; INSERT INTO sys_menu(menu_id, menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_dept, create_by, create_time, update_by, update_time, remark) VALUES (11638, '请假申请', 5, 1, 'leave', 'workflow/leave/index', 1, 0, 'C', '0', '0', 'workflow:leave:list', '#', 103, 1, now(), NULL, NULL, '请假申请菜单'); -- Gitee From 475b1699526d80766973669f85aecd4a0e7cbd05 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 21 Jun 2024 10:50:41 +0800 Subject: [PATCH 002/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E6=9B=B4?= =?UTF-8?q?=E6=94=B9prod=E7=8E=AF=E5=A2=83=20snailjob=E7=8A=B6=E6=80=81=20?= =?UTF-8?q?=E9=BB=98=E8=AE=A4=E5=90=AF=E7=94=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ruoyi-admin/src/main/resources/application-prod.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ruoyi-admin/src/main/resources/application-prod.yml b/ruoyi-admin/src/main/resources/application-prod.yml index 0192d5936..d55dc1039 100644 --- a/ruoyi-admin/src/main/resources/application-prod.yml +++ b/ruoyi-admin/src/main/resources/application-prod.yml @@ -13,7 +13,7 @@ spring.boot.admin.client: --- # snail-job 配置 snail-job: - enabled: false + enabled: true # 需要在 SnailJob 后台组管理创建对应名称的组,然后创建任务的时候选择对应的组,才能正确分派任务 group: "ruoyi_group" # SnailJob 接入验证令牌 详见 script/sql/snail_job.sql `sj_group_config` 表 -- Gitee From 903d810edc4eaad729b268912413e9987776d5fa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 21 Jun 2024 12:34:50 +0800 Subject: [PATCH 003/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20=E6=96=B0?= =?UTF-8?q?=E7=89=88=E4=B8=8A=E4=BC=A0=E6=9C=AA=E8=AE=BE=E7=BD=AEacl?= =?UTF-8?q?=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/org/dromara/common/oss/core/OssClient.java | 1 + 1 file changed, 1 insertion(+) diff --git a/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java b/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java index 86668aa2c..aefbbd0bd 100644 --- a/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java +++ b/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java @@ -223,6 +223,7 @@ public class OssClient { y -> y.bucket(properties.getBucketName()) .key(key) .contentType(contentType) + .acl(getAccessPolicy().getObjectCannedACL()) .build()) .build()); -- Gitee From 52598e5c5cd11e90792735b672adf0ecbe616ebe Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 21 Jun 2024 12:35:54 +0800 Subject: [PATCH 004/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20=E6=96=B0?= =?UTF-8?q?=E7=89=88=E4=B8=8A=E4=BC=A0=E6=9C=AA=E8=AE=BE=E7=BD=AEacl?= =?UTF-8?q?=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/org/dromara/common/oss/core/OssClient.java | 1 + 1 file changed, 1 insertion(+) diff --git a/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java b/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java index aefbbd0bd..5e300da22 100644 --- a/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java +++ b/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java @@ -178,6 +178,7 @@ public class OssClient { .key(key) .contentMD5(StringUtils.isNotEmpty(md5Digest) ? md5Digest : null) .contentType(contentType) + .acl(getAccessPolicy().getObjectCannedACL()) .build()) .addTransferListener(LoggingTransferListener.create()) .source(filePath).build()); -- Gitee From 6d2cc6e87d609589a23ea8e95331bb64a1a9a88c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 21 Jun 2024 14:59:50 +0800 Subject: [PATCH 005/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E6=9B=BF?= =?UTF-8?q?=E6=8D=A2=E8=BF=87=E6=9C=9F=E6=96=B9=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dromara/web/service/impl/PasswordAuthStrategy.java | 3 +-- .../java/org/dromara/common/redis/utils/QueueUtils.java | 7 ++++--- .../demo/controller/queue/DelayedQueueController.java | 9 +++++++-- .../java/org/dromara/demo/mapper/TestDemoMapper.java | 2 +- .../dromara/demo/service/impl/TestDemoServiceImpl.java | 2 +- .../dromara/demo/service/impl/TestTreeServiceImpl.java | 2 +- .../dromara/generator/service/GenTableServiceImpl.java | 4 ++-- .../src/main/resources/vm/java/serviceImpl.java.vm | 2 +- .../system/service/impl/SysClientServiceImpl.java | 2 +- .../system/service/impl/SysConfigServiceImpl.java | 2 +- .../system/service/impl/SysDictTypeServiceImpl.java | 2 +- .../system/service/impl/SysLogininforServiceImpl.java | 2 +- .../system/service/impl/SysNoticeServiceImpl.java | 2 +- .../system/service/impl/SysOperLogServiceImpl.java | 2 +- .../system/service/impl/SysOssConfigServiceImpl.java | 2 +- .../dromara/system/service/impl/SysOssServiceImpl.java | 2 +- .../dromara/system/service/impl/SysPostServiceImpl.java | 2 +- .../dromara/system/service/impl/SysRoleServiceImpl.java | 2 +- .../system/service/impl/SysTenantPackageServiceImpl.java | 2 +- .../system/service/impl/SysTenantServiceImpl.java | 2 +- .../dromara/system/service/impl/SysUserServiceImpl.java | 2 +- .../workflow/service/impl/ActTaskServiceImpl.java | 2 +- .../workflow/service/impl/TestLeaveServiceImpl.java | 2 +- .../workflow/service/impl/WfCategoryServiceImpl.java | 2 +- .../service/impl/WfDefinitionConfigServiceImpl.java | 2 +- .../workflow/service/impl/WfFormManageServiceImpl.java | 2 +- .../workflow/service/impl/WfNodeConfigServiceImpl.java | 2 +- .../workflow/service/impl/WfTaskBackNodeServiceImpl.java | 2 +- 28 files changed, 38 insertions(+), 33 deletions(-) diff --git a/ruoyi-admin/src/main/java/org/dromara/web/service/impl/PasswordAuthStrategy.java b/ruoyi-admin/src/main/java/org/dromara/web/service/impl/PasswordAuthStrategy.java index cd33ea408..5d3ebd755 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/service/impl/PasswordAuthStrategy.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/service/impl/PasswordAuthStrategy.java @@ -24,7 +24,6 @@ import org.dromara.common.redis.utils.RedisUtils; import org.dromara.common.satoken.utils.LoginHelper; import org.dromara.common.tenant.helper.TenantHelper; import org.dromara.common.web.config.properties.CaptchaProperties; -import org.dromara.system.domain.SysClient; import org.dromara.system.domain.SysUser; import org.dromara.system.domain.vo.SysClientVo; import org.dromara.system.domain.vo.SysUserVo; @@ -95,7 +94,7 @@ public class PasswordAuthStrategy implements IAuthStrategy { * @param uuid 唯一标识 */ private void validateCaptcha(String tenantId, String username, String code, String uuid) { - String verifyKey = GlobalConstants.CAPTCHA_CODE_KEY + StringUtils.defaultString(uuid, ""); + String verifyKey = GlobalConstants.CAPTCHA_CODE_KEY + StringUtils.blankToDefault(uuid, ""); String captcha = RedisUtils.getCacheObject(verifyKey); RedisUtils.deleteObject(verifyKey); if (captcha == null) { diff --git a/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/utils/QueueUtils.java b/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/utils/QueueUtils.java index 4587e643d..e436a467f 100644 --- a/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/utils/QueueUtils.java +++ b/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/utils/QueueUtils.java @@ -1,12 +1,13 @@ package org.dromara.common.redis.utils; -import org.dromara.common.core.utils.SpringUtils; import lombok.AccessLevel; import lombok.NoArgsConstructor; +import org.dromara.common.core.utils.SpringUtils; import org.redisson.api.*; +import java.util.concurrent.CompletionStage; import java.util.concurrent.TimeUnit; -import java.util.function.Consumer; +import java.util.function.Function; /** * 分布式队列工具 @@ -224,7 +225,7 @@ public class QueueUtils { /** * 订阅阻塞队列(可订阅所有实现类 例如: 延迟 优先 有界 等) */ - public static void subscribeBlockingQueue(String queueName, Consumer consumer, boolean isDelayed) { + public static void subscribeBlockingQueue(String queueName, Function> consumer, boolean isDelayed) { RBlockingQueue queue = CLIENT.getBlockingQueue(queueName); if (isDelayed) { // 订阅延迟队列 diff --git a/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/queue/DelayedQueueController.java b/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/queue/DelayedQueueController.java index fb2aade7d..b6e51d3ee 100644 --- a/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/queue/DelayedQueueController.java +++ b/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/queue/DelayedQueueController.java @@ -1,14 +1,15 @@ package org.dromara.demo.controller.queue; import cn.dev33.satoken.annotation.SaIgnore; -import org.dromara.common.core.domain.R; -import org.dromara.common.redis.utils.QueueUtils; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; +import org.dromara.common.core.domain.R; +import org.dromara.common.redis.utils.QueueUtils; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; +import java.util.concurrent.CompletableFuture; import java.util.concurrent.TimeUnit; /** @@ -42,6 +43,10 @@ public class DelayedQueueController { QueueUtils.subscribeBlockingQueue(queueName, (String orderNum) -> { // 观察接收时间 log.info("通道: {}, 收到数据: {}", queueName, orderNum); + return CompletableFuture.runAsync(() -> { + // 异步处理数据逻辑 不要在上方处理业务逻辑 + log.info("数据处理: {}", orderNum); + }); }, true); return R.ok("操作成功"); } diff --git a/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/mapper/TestDemoMapper.java b/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/mapper/TestDemoMapper.java index ddf68f202..bd94b1ce6 100644 --- a/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/mapper/TestDemoMapper.java +++ b/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/mapper/TestDemoMapper.java @@ -55,5 +55,5 @@ public interface TestDemoMapper extends BaseMapperPlus { @DataColumn(key = "deptName", value = "dept_id"), @DataColumn(key = "userName", value = "user_id") }) - int deleteBatchIds(@Param(Constants.COLL) Collection idList); + int deleteByIds(@Param(Constants.COLL) Collection idList); } diff --git a/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/service/impl/TestDemoServiceImpl.java b/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/service/impl/TestDemoServiceImpl.java index b3c6ec223..86b39c2ae 100644 --- a/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/service/impl/TestDemoServiceImpl.java +++ b/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/service/impl/TestDemoServiceImpl.java @@ -101,7 +101,7 @@ public class TestDemoServiceImpl implements ITestDemoService { if (isValid) { //TODO 做一些业务上的校验,判断是否需要校验 } - return baseMapper.deleteBatchIds(ids) > 0; + return baseMapper.deleteByIds(ids) > 0; } @Override diff --git a/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/service/impl/TestTreeServiceImpl.java b/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/service/impl/TestTreeServiceImpl.java index 463934ce1..e4e548b65 100644 --- a/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/service/impl/TestTreeServiceImpl.java +++ b/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/service/impl/TestTreeServiceImpl.java @@ -83,6 +83,6 @@ public class TestTreeServiceImpl implements ITestTreeService { if (isValid) { //TODO 做一些业务上的校验,判断是否需要校验 } - return baseMapper.deleteBatchIds(ids) > 0; + return baseMapper.deleteByIds(ids) > 0; } } diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java index d41881585..02a9fa77d 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java +++ b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java @@ -165,7 +165,7 @@ public class GenTableServiceImpl implements IGenTableService { @Override public void deleteGenTableByIds(Long[] tableIds) { List ids = Arrays.asList(tableIds); - baseMapper.deleteBatchIds(ids); + baseMapper.deleteByIds(ids); genTableColumnMapper.delete(new LambdaQueryWrapper().in(GenTableColumn::getTableId, ids)); } @@ -332,7 +332,7 @@ public class GenTableServiceImpl implements IGenTableService { if (CollUtil.isNotEmpty(delColumns)) { List ids = StreamUtils.toList(delColumns, GenTableColumn::getColumnId); if (CollUtil.isNotEmpty(ids)) { - genTableColumnMapper.deleteBatchIds(ids); + genTableColumnMapper.deleteByIds(ids); } } } diff --git a/ruoyi-modules/ruoyi-generator/src/main/resources/vm/java/serviceImpl.java.vm b/ruoyi-modules/ruoyi-generator/src/main/resources/vm/java/serviceImpl.java.vm index e7236fd10..67690ca6e 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/resources/vm/java/serviceImpl.java.vm +++ b/ruoyi-modules/ruoyi-generator/src/main/resources/vm/java/serviceImpl.java.vm @@ -149,6 +149,6 @@ public class ${ClassName}ServiceImpl implements I${ClassName}Service { if(isValid){ //TODO 做一些业务上的校验,判断是否需要校验 } - return baseMapper.deleteBatchIds(ids) > 0; + return baseMapper.deleteByIds(ids) > 0; } } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysClientServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysClientServiceImpl.java index 26bc49157..1c6924320 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysClientServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysClientServiceImpl.java @@ -146,6 +146,6 @@ public class SysClientServiceImpl implements ISysClientService { if (isValid) { //TODO 做一些业务上的校验,判断是否需要校验 } - return baseMapper.deleteBatchIds(ids) > 0; + return baseMapper.deleteByIds(ids) > 0; } } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysConfigServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysConfigServiceImpl.java index bebfdadf4..46526bd98 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysConfigServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysConfigServiceImpl.java @@ -178,7 +178,7 @@ public class SysConfigServiceImpl implements ISysConfigService, ConfigService { } CacheUtils.evict(CacheNames.SYS_CONFIG, config.getConfigKey()); } - baseMapper.deleteBatchIds(Arrays.asList(configIds)); + baseMapper.deleteByIds(Arrays.asList(configIds)); } /** diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDictTypeServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDictTypeServiceImpl.java index bc6663f0c..1be0b7f40 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDictTypeServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDictTypeServiceImpl.java @@ -141,7 +141,7 @@ public class SysDictTypeServiceImpl implements ISysDictTypeService, DictService } CacheUtils.evict(CacheNames.SYS_DICT, dictType.getDictType()); } - baseMapper.deleteBatchIds(Arrays.asList(dictIds)); + baseMapper.deleteByIds(Arrays.asList(dictIds)); } /** diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysLogininforServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysLogininforServiceImpl.java index 9c930a0c5..b95baf44b 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysLogininforServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysLogininforServiceImpl.java @@ -163,7 +163,7 @@ public class SysLogininforServiceImpl implements ISysLogininforService { */ @Override public int deleteLogininforByIds(Long[] infoIds) { - return baseMapper.deleteBatchIds(Arrays.asList(infoIds)); + return baseMapper.deleteByIds(Arrays.asList(infoIds)); } /** diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysNoticeServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysNoticeServiceImpl.java index 18b7a08da..db63e61d0 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysNoticeServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysNoticeServiceImpl.java @@ -119,6 +119,6 @@ public class SysNoticeServiceImpl implements ISysNoticeService { */ @Override public int deleteNoticeByIds(Long[] noticeIds) { - return baseMapper.deleteBatchIds(Arrays.asList(noticeIds)); + return baseMapper.deleteByIds(Arrays.asList(noticeIds)); } } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOperLogServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOperLogServiceImpl.java index 2a76b82f3..b78b9dcc8 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOperLogServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOperLogServiceImpl.java @@ -122,7 +122,7 @@ public class SysOperLogServiceImpl implements ISysOperLogService { */ @Override public int deleteOperLogByIds(Long[] operIds) { - return baseMapper.deleteBatchIds(Arrays.asList(operIds)); + return baseMapper.deleteByIds(Arrays.asList(operIds)); } /** diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssConfigServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssConfigServiceImpl.java index 2ecd59276..a1eefcefd 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssConfigServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssConfigServiceImpl.java @@ -135,7 +135,7 @@ public class SysOssConfigServiceImpl implements ISysOssConfigService { SysOssConfig config = baseMapper.selectById(configId); list.add(config); } - boolean flag = baseMapper.deleteBatchIds(ids) > 0; + boolean flag = baseMapper.deleteByIds(ids) > 0; if (flag) { list.forEach(sysOssConfig -> CacheUtils.evict(CacheNames.SYS_OSS_CONFIG, sysOssConfig.getConfigKey())); diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssServiceImpl.java index aa094b2e7..d167e8dcc 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssServiceImpl.java @@ -247,7 +247,7 @@ public class SysOssServiceImpl implements ISysOssService, OssService { OssClient storage = OssFactory.instance(sysOss.getService()); storage.delete(sysOss.getUrl()); } - return baseMapper.deleteBatchIds(ids) > 0; + return baseMapper.deleteByIds(ids) > 0; } /** diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysPostServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysPostServiceImpl.java index 17cd5caae..b8a7e607a 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysPostServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysPostServiceImpl.java @@ -202,7 +202,7 @@ public class SysPostServiceImpl implements ISysPostService { throw new ServiceException(String.format("%1$s已分配,不能删除!", post.getPostName())); } } - return baseMapper.deleteBatchIds(Arrays.asList(postIds)); + return baseMapper.deleteByIds(Arrays.asList(postIds)); } /** diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysRoleServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysRoleServiceImpl.java index abd294f3e..3a0ace0bc 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysRoleServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysRoleServiceImpl.java @@ -417,7 +417,7 @@ public class SysRoleServiceImpl implements ISysRoleService { roleMenuMapper.delete(new LambdaQueryWrapper().in(SysRoleMenu::getRoleId, ids)); // 删除角色与部门关联 roleDeptMapper.delete(new LambdaQueryWrapper().in(SysRoleDept::getRoleId, ids)); - return baseMapper.deleteBatchIds(ids); + return baseMapper.deleteByIds(ids); } /** diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantPackageServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantPackageServiceImpl.java index f7f8d46ed..5fd04af8e 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantPackageServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantPackageServiceImpl.java @@ -140,6 +140,6 @@ public class SysTenantPackageServiceImpl implements ISysTenantPackageService { throw new ServiceException("租户套餐已被使用"); } } - return baseMapper.deleteBatchIds(ids) > 0; + return baseMapper.deleteByIds(ids) > 0; } } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java index 516149f15..d30750db5 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java @@ -294,7 +294,7 @@ public class SysTenantServiceImpl implements ISysTenantService { throw new ServiceException("超管租户不能删除"); } } - return baseMapper.deleteBatchIds(ids) > 0; + return baseMapper.deleteByIds(ids) > 0; } /** diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java index d8f481dbf..d932b461e 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java @@ -541,7 +541,7 @@ public class SysUserServiceImpl implements ISysUserService, UserService { // 删除用户与岗位表 userPostMapper.delete(new LambdaQueryWrapper().in(SysUserPost::getUserId, ids)); // 防止更新失败导致的数据删除 - int flag = baseMapper.deleteBatchIds(ids); + int flag = baseMapper.deleteByIds(ids); if (flag < 1) { throw new ServiceException("删除用户失败!"); } diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActTaskServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActTaskServiceImpl.java index 6fe0b4e65..f60d720df 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActTaskServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActTaskServiceImpl.java @@ -696,7 +696,7 @@ public class ActTaskServiceImpl implements IActTaskService { if (multiInstance == null && taskList.size() > 1) { List tasks = StreamUtils.filter(taskList, e -> !e.getTaskDefinitionKey().equals(task.getTaskDefinitionKey())); if (CollUtil.isNotEmpty(tasks)) { - actHiTaskinstMapper.deleteBatchIds(StreamUtils.toList(tasks, Task::getId)); + actHiTaskinstMapper.deleteByIds(StreamUtils.toList(tasks, Task::getId)); } } diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/TestLeaveServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/TestLeaveServiceImpl.java index 13a1bb204..a62ce5f4c 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/TestLeaveServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/TestLeaveServiceImpl.java @@ -111,7 +111,7 @@ public class TestLeaveServiceImpl implements ITestLeaveService { public Boolean deleteWithValidByIds(Collection ids) { List idList = StreamUtils.toList(ids, String::valueOf); workflowService.deleteRunAndHisInstance(idList); - return baseMapper.deleteBatchIds(ids) > 0; + return baseMapper.deleteByIds(ids) > 0; } /** diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WfCategoryServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WfCategoryServiceImpl.java index c5cb28887..b498262c2 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WfCategoryServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WfCategoryServiceImpl.java @@ -114,7 +114,7 @@ public class WfCategoryServiceImpl implements IWfCategoryService { if (isValid) { //TODO 做一些业务上的校验,判断是否需要校验 } - return baseMapper.deleteBatchIds(ids) > 0; + return baseMapper.deleteByIds(ids) > 0; } /** diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WfDefinitionConfigServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WfDefinitionConfigServiceImpl.java index 947882570..ab55ff80e 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WfDefinitionConfigServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WfDefinitionConfigServiceImpl.java @@ -107,7 +107,7 @@ public class WfDefinitionConfigServiceImpl implements IWfDefinitionConfigService */ @Override public Boolean deleteByIds(Collection ids) { - return baseMapper.deleteBatchIds(ids) > 0; + return baseMapper.deleteByIds(ids) > 0; } @Override diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WfFormManageServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WfFormManageServiceImpl.java index e0850d7ae..da2e777d0 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WfFormManageServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WfFormManageServiceImpl.java @@ -106,6 +106,6 @@ public class WfFormManageServiceImpl implements IWfFormManageService { */ @Override public Boolean deleteByIds(Collection ids) { - return baseMapper.deleteBatchIds(ids) > 0; + return baseMapper.deleteByIds(ids) > 0; } } diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WfNodeConfigServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WfNodeConfigServiceImpl.java index c677102c0..2f71482fa 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WfNodeConfigServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WfNodeConfigServiceImpl.java @@ -50,7 +50,7 @@ public class WfNodeConfigServiceImpl implements IWfNodeConfigService { */ @Override public Boolean deleteByIds(Collection ids) { - return baseMapper.deleteBatchIds(ids) > 0; + return baseMapper.deleteByIds(ids) > 0; } diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WfTaskBackNodeServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WfTaskBackNodeServiceImpl.java index 55d9883f2..ba1fdbb6d 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WfTaskBackNodeServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WfTaskBackNodeServiceImpl.java @@ -106,7 +106,7 @@ public class WfTaskBackNodeServiceImpl implements IWfTaskBackNodeService { } } if (CollUtil.isNotEmpty(ids)) { - wfTaskBackNodeMapper.deleteBatchIds(ids); + wfTaskBackNodeMapper.deleteByIds(ids); } } return true; -- Gitee From 12338fc0b4ef025ecd418b08015cd72b9b197f6e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 21 Jun 2024 15:51:39 +0800 Subject: [PATCH 006/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E7=A7=9F?= =?UTF-8?q?=E6=88=B7=E5=88=97=E8=A1=A8=E6=8E=A5=E5=8F=A3=20=E9=81=BF?= =?UTF-8?q?=E5=85=8D=E7=99=BB=E5=BD=95=E4=B9=8B=E5=90=8E=E5=88=97=E8=A1=A8?= =?UTF-8?q?=E8=A2=AB=E5=9F=9F=E5=90=8D=E8=BF=87=E6=BB=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../web/controller/AuthController.java | 26 +++++++++++++++---- 1 file changed, 21 insertions(+), 5 deletions(-) diff --git a/ruoyi-admin/src/main/java/org/dromara/web/controller/AuthController.java b/ruoyi-admin/src/main/java/org/dromara/web/controller/AuthController.java index d99af5b62..1db68f106 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/controller/AuthController.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/controller/AuthController.java @@ -1,6 +1,7 @@ package org.dromara.web.controller; import cn.dev33.satoken.annotation.SaIgnore; +import cn.dev33.satoken.exception.NotLoginException; import cn.hutool.core.codec.Base64; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.util.ObjectUtil; @@ -194,8 +195,26 @@ public class AuthController { */ @GetMapping("/tenant/list") public R tenantList(HttpServletRequest request) throws Exception { + // 返回对象 + LoginTenantVo result = new LoginTenantVo(); + boolean enable = TenantHelper.isEnable(); + result.setTenantEnabled(enable); + // 如果未开启租户这直接返回 + if (!enable) { + return R.ok(result); + } + List tenantList = tenantService.queryList(new SysTenantBo()); List voList = MapstructUtils.convert(tenantList, TenantListVo.class); + try { + // 如果只超管返回所有租户 + if (LoginHelper.isSuperAdmin()) { + result.setVoList(voList); + return R.ok(result); + } + } catch (NotLoginException ignored) { + } + // 获取域名 String host; String referer = request.getHeader("referer"); @@ -208,11 +227,8 @@ public class AuthController { // 根据域名进行筛选 List list = StreamUtils.filter(voList, vo -> StringUtils.equals(vo.getDomain(), host)); - // 返回对象 - LoginTenantVo vo = new LoginTenantVo(); - vo.setVoList(CollUtil.isNotEmpty(list) ? list : voList); - vo.setTenantEnabled(TenantHelper.isEnable()); - return R.ok(vo); + result.setVoList(CollUtil.isNotEmpty(list) ? list : voList); + return R.ok(result); } } -- Gitee From 4f9ceb0a8057284a0d9d69da58df630d8bc2e84f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 21 Jun 2024 16:31:05 +0800 Subject: [PATCH 007/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20spring?= =?UTF-8?q?=E9=87=8D=E5=A4=A7bug=20=E5=AF=BC=E8=87=B4=20actuator=20?= =?UTF-8?q?=E6=B3=84=E6=BC=8F=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- script/docker/nginx/conf/nginx.conf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/script/docker/nginx/conf/nginx.conf b/script/docker/nginx/conf/nginx.conf index dcc4525ec..a6fc07363 100644 --- a/script/docker/nginx/conf/nginx.conf +++ b/script/docker/nginx/conf/nginx.conf @@ -63,7 +63,7 @@ http { # } # 限制外网访问内网 actuator 相关路径 - location ~ ^(/[^/]*)?/actuator(/.*)?$ { + location ~ ^(/[^/]*)?/actuator.*(/.*)?$ { return 403; } -- Gitee From a144fa449b152935931793ec8f8edf2d549f9a92 Mon Sep 17 00:00:00 2001 From: AprilWind <2100166581@qq.com> Date: Thu, 27 Jun 2024 14:43:33 +0800 Subject: [PATCH 008/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=E8=8E=B7?= =?UTF-8?q?=E5=8F=96=E7=94=A8=E6=88=B7=E8=B4=A6=E6=88=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dromara/common/satoken/utils/LoginHelper.java | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/ruoyi-common/ruoyi-common-satoken/src/main/java/org/dromara/common/satoken/utils/LoginHelper.java b/ruoyi-common/ruoyi-common-satoken/src/main/java/org/dromara/common/satoken/utils/LoginHelper.java index 1e0d8a7ab..99f6afce0 100644 --- a/ruoyi-common/ruoyi-common-satoken/src/main/java/org/dromara/common/satoken/utils/LoginHelper.java +++ b/ruoyi-common/ruoyi-common-satoken/src/main/java/org/dromara/common/satoken/utils/LoginHelper.java @@ -87,6 +87,13 @@ public class LoginHelper { return Convert.toLong(getExtra(USER_KEY)); } + /** + * 获取用户账户 + */ + public static String getUsername() { + return Convert.toStr(getExtra(USER_NAME_KEY)); + } + /** * 获取租户ID */ @@ -129,13 +136,6 @@ public class LoginHelper { } } - /** - * 获取用户账户 - */ - public static String getUsername() { - return getLoginUser().getUsername(); - } - /** * 获取用户类型 */ -- Gitee From f0b4fcbdf053f81d61e14ee5294cd84e1cd661a8 Mon Sep 17 00:00:00 2001 From: AprilWind <2100166581@qq.com> Date: Thu, 27 Jun 2024 15:30:24 +0800 Subject: [PATCH 009/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=E7=94=A8?= =?UTF-8?q?=E6=88=B7ID=E6=9F=A5=E8=AF=A2=E8=A7=92=E8=89=B2=E5=88=97?= =?UTF-8?q?=E8=A1=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../system/service/impl/SysRoleServiceImpl.java | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysRoleServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysRoleServiceImpl.java index 3a0ace0bc..6c89082e8 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysRoleServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysRoleServiceImpl.java @@ -37,6 +37,7 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.util.*; +import java.util.stream.Collectors; /** * 角色 业务层处理 @@ -104,12 +105,11 @@ public class SysRoleServiceImpl implements ISysRoleService { public List selectRolesAuthByUserId(Long userId) { List userRoles = baseMapper.selectRolePermissionByUserId(userId); List roles = selectRoleAll(); + // 使用HashSet提高查找效率 + Set userRoleIds = userRoles.stream().map(SysRoleVo::getRoleId).collect(Collectors.toSet()); for (SysRoleVo role : roles) { - for (SysRoleVo userRole : userRoles) { - if (role.getRoleId().longValue() == userRole.getRoleId().longValue()) { - role.setFlag(true); - break; - } + if (userRoleIds.contains(role.getRoleId())) { + role.setFlag(true); } } return roles; -- Gitee From 3dff5299206a365ab4b61e9050aeb6b52a733433 Mon Sep 17 00:00:00 2001 From: AprilWind <2100166581@qq.com> Date: Thu, 27 Jun 2024 09:46:17 +0000 Subject: [PATCH 010/540] =?UTF-8?q?!556=20=E6=96=B0=E5=A2=9Emybatis?= =?UTF-8?q?=E6=B3=A8=E9=87=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * docs 新增mybatis注释 --- .../common/mybatis/annotation/DataColumn.java | 13 +- .../mybatis/annotation/DataPermission.java | 7 +- .../mybatis/core/domain/BaseEntity.java | 1 - .../mybatis/core/mapper/BaseMapperPlus.java | 159 ++++++++++++++++-- .../common/mybatis/core/page/PageQuery.java | 6 +- .../mybatis/core/page/TableDataInfo.java | 10 +- .../common/mybatis/enums/DataBaseType.java | 11 +- .../common/mybatis/enums/DataScopeType.java | 37 ++-- .../handler/InjectionMetaObjectHandler.java | 30 +++- .../handler/MybatisExceptionHandler.java | 5 +- .../handler/PlusDataPermissionHandler.java | 55 +++++- .../common/mybatis/helper/DataBaseHelper.java | 5 +- .../mybatis/helper/DataPermissionHelper.java | 22 ++- .../PlusDataPermissionInterceptor.java | 70 +++++++- .../service/impl/SysDataScopeServiceImpl.java | 18 +- 15 files changed, 386 insertions(+), 63 deletions(-) diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/annotation/DataColumn.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/annotation/DataColumn.java index aca470fd6..f8c5cd009 100644 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/annotation/DataColumn.java +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/annotation/DataColumn.java @@ -3,9 +3,10 @@ package org.dromara.common.mybatis.annotation; import java.lang.annotation.*; /** - * 数据权限 - * + * 数据权限注解,用于标记数据权限的占位符关键字和替换值 + *

* 一个注解只能对应一个模板 + *

* * @author Lion Li * @version 3.5.0 @@ -16,12 +17,16 @@ import java.lang.annotation.*; public @interface DataColumn { /** - * 占位符关键字 + * 数据权限模板的占位符关键字,默认为 "deptName" + * + * @return 占位符关键字数组 */ String[] key() default "deptName"; /** - * 占位符替换值 + * 数据权限模板的占位符替换值,默认为 "dept_id" + * + * @return 占位符替换值数组 */ String[] value() default "dept_id"; diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/annotation/DataPermission.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/annotation/DataPermission.java index f4351e38d..6fd3c3e07 100644 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/annotation/DataPermission.java +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/annotation/DataPermission.java @@ -3,7 +3,7 @@ package org.dromara.common.mybatis.annotation; import java.lang.annotation.*; /** - * 数据权限组 + * 数据权限组注解,用于标记数据权限配置数组 * * @author Lion Li * @version 3.5.0 @@ -13,6 +13,11 @@ import java.lang.annotation.*; @Documented public @interface DataPermission { + /** + * 数据权限配置数组,用于指定数据权限的占位符关键字和替换值 + * + * @return 数据权限配置数组 + */ DataColumn[] value(); } diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/core/domain/BaseEntity.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/core/domain/BaseEntity.java index 820b49afc..13a794162 100644 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/core/domain/BaseEntity.java +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/core/domain/BaseEntity.java @@ -17,7 +17,6 @@ import java.util.Map; * * @author Lion Li */ - @Data public class BaseEntity implements Serializable { diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/core/mapper/BaseMapperPlus.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/core/mapper/BaseMapperPlus.java index 388925001..a68d96f68 100644 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/core/mapper/BaseMapperPlus.java +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/core/mapper/BaseMapperPlus.java @@ -34,20 +34,38 @@ public interface BaseMapperPlus extends BaseMapper { Log log = LogFactory.getLog(BaseMapperPlus.class); + /** + * 获取当前实例对象关联的泛型类型 V 的 Class 对象 + * + * @return 返回当前实例对象关联的泛型类型 V 的 Class 对象 + */ default Class currentVoClass() { return (Class) GenericTypeUtils.resolveTypeArguments(this.getClass(), BaseMapperPlus.class)[1]; } + /** + * 获取当前实例对象关联的泛型类型 T 的 Class 对象 + * + * @return 返回当前实例对象关联的泛型类型 T 的 Class 对象 + */ default Class currentModelClass() { return (Class) GenericTypeUtils.resolveTypeArguments(this.getClass(), BaseMapperPlus.class)[0]; } + /** + * 使用默认的查询条件查询并返回结果列表 + * + * @return 返回查询结果的列表 + */ default List selectList() { return this.selectList(new QueryWrapper<>()); } /** - * 批量插入 + * 批量插入实体对象集合 + * + * @param entityList 实体对象集合 + * @return 插入操作是否成功的布尔值 */ default boolean insertBatch(Collection entityList) { Db.saveBatch(entityList); @@ -56,7 +74,10 @@ public interface BaseMapperPlus extends BaseMapper { } /** - * 批量更新 + * 批量根据ID更新实体对象集合 + * + * @param entityList 实体对象集合 + * @return 更新操作是否成功的布尔值 */ default boolean updateBatchById(Collection entityList) { Db.updateBatchById(entityList); @@ -65,7 +86,10 @@ public interface BaseMapperPlus extends BaseMapper { } /** - * 批量插入或更新 + * 批量插入或更新实体对象集合 + * + * @param entityList 实体对象集合 + * @return 插入或更新操作是否成功的布尔值 */ default boolean insertOrUpdateBatch(Collection entityList) { Db.saveOrUpdateBatch(entityList); @@ -74,7 +98,11 @@ public interface BaseMapperPlus extends BaseMapper { } /** - * 批量插入(包含限制条数) + * 批量插入实体对象集合并指定批处理大小 + * + * @param entityList 实体对象集合 + * @param batchSize 批处理大小 + * @return 插入操作是否成功的布尔值 */ default boolean insertBatch(Collection entityList, int batchSize) { Db.saveBatch(entityList, batchSize); @@ -83,7 +111,11 @@ public interface BaseMapperPlus extends BaseMapper { } /** - * 批量更新(包含限制条数) + * 批量根据ID更新实体对象集合并指定批处理大小 + * + * @param entityList 实体对象集合 + * @param batchSize 批处理大小 + * @return 更新操作是否成功的布尔值 */ default boolean updateBatchById(Collection entityList, int batchSize) { Db.updateBatchById(entityList, batchSize); @@ -92,7 +124,11 @@ public interface BaseMapperPlus extends BaseMapper { } /** - * 批量插入或更新(包含限制条数) + * 批量插入或更新实体对象集合并指定批处理大小 + * + * @param entityList 实体对象集合 + * @param batchSize 批处理大小 + * @return 插入或更新操作是否成功的布尔值 */ default boolean insertOrUpdateBatch(Collection entityList, int batchSize) { Db.saveOrUpdateBatch(entityList, batchSize); @@ -100,12 +136,23 @@ public interface BaseMapperPlus extends BaseMapper { return true; } + /** + * 根据ID查询单个VO对象 + * + * @param id 主键ID + * @return 查询到的单个VO对象 + */ default V selectVoById(Serializable id) { return selectVoById(id, this.currentVoClass()); } /** - * 根据 ID 查询 + * 根据ID查询单个VO对象并将其转换为指定的VO类 + * + * @param id 主键ID + * @param voClass 要转换的VO类的Class对象 + * @param VO类的类型 + * @return 查询到的单个VO对象,经过转换为指定的VO类后返回 */ default C selectVoById(Serializable id, Class voClass) { T obj = this.selectById(id); @@ -115,12 +162,23 @@ public interface BaseMapperPlus extends BaseMapper { return MapstructUtils.convert(obj, voClass); } + /** + * 根据ID集合批量查询VO对象列表 + * + * @param idList 主键ID集合 + * @return 查询到的VO对象列表 + */ default List selectVoBatchIds(Collection idList) { return selectVoBatchIds(idList, this.currentVoClass()); } /** - * 查询(根据ID 批量查询) + * 根据ID集合批量查询实体对象列表,并将其转换为指定的VO对象列表 + * + * @param idList 主键ID集合 + * @param voClass 要转换的VO类的Class对象 + * @param VO类的类型 + * @return 查询到的VO对象列表,经过转换为指定的VO类后返回 */ default List selectVoBatchIds(Collection idList, Class voClass) { List list = this.selectBatchIds(idList); @@ -130,12 +188,23 @@ public interface BaseMapperPlus extends BaseMapper { return MapstructUtils.convert(list, voClass); } + /** + * 根据查询条件Map查询VO对象列表 + * + * @param map 查询条件Map + * @return 查询到的VO对象列表 + */ default List selectVoByMap(Map map) { return selectVoByMap(map, this.currentVoClass()); } /** - * 查询(根据 columnMap 条件) + * 根据查询条件Map查询实体对象列表,并将其转换为指定的VO对象列表 + * + * @param map 查询条件Map + * @param voClass 要转换的VO类的Class对象 + * @param VO类的类型 + * @return 查询到的VO对象列表,经过转换为指定的VO类后返回 */ default List selectVoByMap(Map map, Class voClass) { List list = this.selectByMap(map); @@ -145,23 +214,47 @@ public interface BaseMapperPlus extends BaseMapper { return MapstructUtils.convert(list, voClass); } + /** + * 根据条件查询单个VO对象 + * + * @param wrapper 查询条件Wrapper + * @return 查询到的单个VO对象 + */ default V selectVoOne(Wrapper wrapper) { return selectVoOne(wrapper, this.currentVoClass()); } + /** + * 根据条件查询单个VO对象,并根据需要决定是否抛出异常 + * + * @param wrapper 查询条件Wrapper + * @param throwEx 是否抛出异常的标志 + * @return 查询到的单个VO对象 + */ default V selectVoOne(Wrapper wrapper, boolean throwEx) { return selectVoOne(wrapper, this.currentVoClass(), throwEx); } /** - * 根据 entity 条件,查询一条记录 + * 根据条件查询单个VO对象,并指定返回的VO对象的类型 + * + * @param wrapper 查询条件Wrapper + * @param voClass 返回的VO对象的Class对象 + * @param 返回的VO对象的类型 + * @return 查询到的单个VO对象,经过类型转换为指定的VO类后返回 */ default C selectVoOne(Wrapper wrapper, Class voClass) { return selectVoOne(wrapper, voClass, true); } /** - * 根据 entity 条件,查询一条记录 + * 根据条件查询单个实体对象,并将其转换为指定的VO对象 + * + * @param wrapper 查询条件Wrapper + * @param voClass 要转换的VO类的Class对象 + * @param throwEx 是否抛出异常的标志 + * @param VO类的类型 + * @return 查询到的单个VO对象,经过转换为指定的VO类后返回 */ default C selectVoOne(Wrapper wrapper, Class voClass, boolean throwEx) { T obj = this.selectOne(wrapper, throwEx); @@ -171,16 +264,32 @@ public interface BaseMapperPlus extends BaseMapper { return MapstructUtils.convert(obj, voClass); } + /** + * 查询所有VO对象列表 + * + * @return 查询到的VO对象列表 + */ default List selectVoList() { return selectVoList(new QueryWrapper<>(), this.currentVoClass()); } + /** + * 根据条件查询VO对象列表 + * + * @param wrapper 查询条件Wrapper + * @return 查询到的VO对象列表 + */ default List selectVoList(Wrapper wrapper) { return selectVoList(wrapper, this.currentVoClass()); } /** - * 根据 entity 条件,查询全部记录 + * 根据条件查询实体对象列表,并将其转换为指定的VO对象列表 + * + * @param wrapper 查询条件Wrapper + * @param voClass 要转换的VO类的Class对象 + * @param VO类的类型 + * @return 查询到的VO对象列表,经过转换为指定的VO类后返回 */ default List selectVoList(Wrapper wrapper, Class voClass) { List list = this.selectList(wrapper); @@ -190,15 +299,31 @@ public interface BaseMapperPlus extends BaseMapper { return MapstructUtils.convert(list, voClass); } + /** + * 根据条件分页查询VO对象列表 + * + * @param page 分页信息 + * @param wrapper 查询条件Wrapper + * @return 查询到的VO对象分页列表 + */ default

> P selectVoPage(IPage page, Wrapper wrapper) { return selectVoPage(page, wrapper, this.currentVoClass()); } /** - * 分页查询VO + * 根据条件分页查询实体对象列表,并将其转换为指定的VO对象分页列表 + * + * @param page 分页信息 + * @param wrapper 查询条件Wrapper + * @param voClass 要转换的VO类的Class对象 + * @param VO类的类型 + * @param

VO对象分页列表的类型 + * @return 查询到的VO对象分页列表,经过转换为指定的VO类后返回 */ default > P selectVoPage(IPage page, Wrapper wrapper, Class voClass) { + // 根据条件分页查询实体对象列表 List list = this.selectList(page, wrapper); + // 创建一个新的VO对象分页列表,并设置分页信息 IPage voPage = new Page<>(page.getCurrent(), page.getSize(), page.getTotal()); if (CollUtil.isEmpty(list)) { return (P) voPage; @@ -207,6 +332,14 @@ public interface BaseMapperPlus extends BaseMapper { return (P) voPage; } + /** + * 根据条件查询符合条件的对象,并将其转换为指定类型的对象列表 + * + * @param wrapper 查询条件Wrapper + * @param mapper 转换函数,用于将查询到的对象转换为指定类型的对象 + * @param 要转换的对象的类型 + * @return 查询到的符合条件的对象列表,经过转换为指定类型的对象后返回 + */ default List selectObjs(Wrapper wrapper, Function mapper) { return this.selectObjs(wrapper).stream().filter(Objects::nonNull).map(mapper).collect(Collectors.toList()); } diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/core/page/PageQuery.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/core/page/PageQuery.java index 40b7530e5..6ca9b2756 100644 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/core/page/PageQuery.java +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/core/page/PageQuery.java @@ -4,10 +4,10 @@ import cn.hutool.core.collection.CollUtil; import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.metadata.OrderItem; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import lombok.Data; import org.dromara.common.core.exception.ServiceException; import org.dromara.common.core.utils.StringUtils; import org.dromara.common.core.utils.sql.SqlUtil; -import lombok.Data; import java.io.Serial; import java.io.Serializable; @@ -19,7 +19,6 @@ import java.util.List; * * @author Lion Li */ - @Data public class PageQuery implements Serializable { @@ -56,6 +55,9 @@ public class PageQuery implements Serializable { */ public static final int DEFAULT_PAGE_SIZE = Integer.MAX_VALUE; + /** + * 构建分页对象 + */ public Page build() { Integer pageNum = ObjectUtil.defaultIfNull(getPageNum(), DEFAULT_PAGE_NUM); Integer pageSize = ObjectUtil.defaultIfNull(getPageSize(), DEFAULT_PAGE_SIZE); diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/core/page/TableDataInfo.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/core/page/TableDataInfo.java index a4b67997d..8ecfb54aa 100644 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/core/page/TableDataInfo.java +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/core/page/TableDataInfo.java @@ -14,7 +14,6 @@ import java.util.List; * * @author Lion Li */ - @Data @NoArgsConstructor public class TableDataInfo implements Serializable { @@ -53,6 +52,9 @@ public class TableDataInfo implements Serializable { this.total = total; } + /** + * 根据分页对象构建表格分页数据对象 + */ public static TableDataInfo build(IPage page) { TableDataInfo rspData = new TableDataInfo<>(); rspData.setCode(HttpStatus.HTTP_OK); @@ -62,6 +64,9 @@ public class TableDataInfo implements Serializable { return rspData; } + /** + * 根据数据列表构建表格分页数据对象 + */ public static TableDataInfo build(List list) { TableDataInfo rspData = new TableDataInfo<>(); rspData.setCode(HttpStatus.HTTP_OK); @@ -71,6 +76,9 @@ public class TableDataInfo implements Serializable { return rspData; } + /** + * 构建表格分页数据对象 + */ public static TableDataInfo build() { TableDataInfo rspData = new TableDataInfo<>(); rspData.setCode(HttpStatus.HTTP_OK); diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/enums/DataBaseType.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/enums/DataBaseType.java index 93487e947..5084424eb 100644 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/enums/DataBaseType.java +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/enums/DataBaseType.java @@ -1,8 +1,8 @@ package org.dromara.common.mybatis.enums; -import org.dromara.common.core.utils.StringUtils; import lombok.AllArgsConstructor; import lombok.Getter; +import org.dromara.common.core.utils.StringUtils; /** * 数据库类型 @@ -33,8 +33,17 @@ public enum DataBaseType { */ SQL_SERVER("Microsoft SQL Server"); + /** + * 数据库类型 + */ private final String type; + /** + * 根据数据库产品名称查找对应的数据库类型 + * + * @param databaseProductName 数据库产品名称 + * @return 对应的数据库类型枚举值,如果未找到则返回 null + */ public static DataBaseType find(String databaseProductName) { if (StringUtils.isBlank(databaseProductName)) { return null; diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/enums/DataScopeType.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/enums/DataScopeType.java index 9ea66b0a0..455cecb2e 100644 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/enums/DataScopeType.java +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/enums/DataScopeType.java @@ -1,19 +1,22 @@ package org.dromara.common.mybatis.enums; -import org.dromara.common.core.utils.StringUtils; import lombok.AllArgsConstructor; import lombok.Getter; +import org.dromara.common.core.domain.model.LoginUser; +import org.dromara.common.core.utils.StringUtils; import org.dromara.common.mybatis.helper.DataPermissionHelper; /** - * 数据权限类型 - *

- * 语法支持 spel 模板表达式 + * 数据权限类型枚举 *

- * 内置数据 user 当前用户 内容参考 LoginUser - * 如需扩展数据 可使用 {@link DataPermissionHelper} 操作 - * 内置服务 sdss 系统数据权限服务 内容参考 SysDataScopeService - * 如需扩展更多自定义服务 可以参考 sdss 自行编写 + * 支持使用 SpEL 模板表达式定义 SQL 查询条件 + * 内置数据: + * - {@code user}: 当前登录用户信息,参考 {@link LoginUser} + * 内置服务: + * - {@code sdss}: 系统数据权限服务,参考 {@link ISysDataScopeService} + * 如需扩展数据,可以通过 {@link DataPermissionHelper} 进行操作 + * 如需扩展服务,可以通过 {@link ISysDataScopeService} 自行编写 + *

* * @author Lion Li * @version 3.5.0 @@ -29,36 +32,50 @@ public enum DataScopeType { /** * 自定数据权限 + * 使用 SpEL 表达式:`#{#deptName} IN ( #{@sdss.getRoleCustom( #user.roleId )} )` + * 如果不满足条件,则使用默认 SQL 表达式:`1 = 0` */ CUSTOM("2", " #{#deptName} IN ( #{@sdss.getRoleCustom( #user.roleId )} ) ", " 1 = 0 "), /** * 部门数据权限 + * 使用 SpEL 表达式:`#{#deptName} = #{#user.deptId}` + * 如果不满足条件,则使用默认 SQL 表达式:`1 = 0` */ DEPT("3", " #{#deptName} = #{#user.deptId} ", " 1 = 0 "), /** * 部门及以下数据权限 + * 使用 SpEL 表达式:`#{#deptName} IN ( #{@sdss.getDeptAndChild( #user.deptId )}` + * 如果不满足条件,则使用默认 SQL 表达式:`1 = 0` */ DEPT_AND_CHILD("4", " #{#deptName} IN ( #{@sdss.getDeptAndChild( #user.deptId )} )", " 1 = 0 "), /** * 仅本人数据权限 + * 使用 SpEL 表达式:`#{#userName} = #{#user.userId}` + * 如果不满足条件,则使用默认 SQL 表达式:`1 = 0` */ SELF("5", " #{#userName} = #{#user.userId} ", " 1 = 0 "); private final String code; /** - * 语法 采用 spel 模板表达式 + * SpEL 模板表达式,用于构建 SQL 查询条件 */ private final String sqlTemplate; /** - * 不满足 sqlTemplate 则填充 + * 如果不满足 {@code sqlTemplate} 的条件,则使用此默认 SQL 表达式 */ private final String elseSql; + /** + * 根据枚举代码查找对应的枚举值 + * + * @param code 枚举代码 + * @return 对应的枚举值,如果未找到则返回 null + */ public static DataScopeType findCode(String code) { if (StringUtils.isBlank(code)) { return null; diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/InjectionMetaObjectHandler.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/InjectionMetaObjectHandler.java index a66908f09..99e6b3888 100644 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/InjectionMetaObjectHandler.java +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/InjectionMetaObjectHandler.java @@ -3,12 +3,12 @@ package org.dromara.common.mybatis.handler; import cn.hutool.core.util.ObjectUtil; import cn.hutool.http.HttpStatus; import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler; +import lombok.extern.slf4j.Slf4j; +import org.apache.ibatis.reflection.MetaObject; import org.dromara.common.core.domain.model.LoginUser; import org.dromara.common.core.exception.ServiceException; import org.dromara.common.mybatis.core.domain.BaseEntity; import org.dromara.common.satoken.utils.LoginHelper; -import lombok.extern.slf4j.Slf4j; -import org.apache.ibatis.reflection.MetaObject; import java.util.Date; @@ -21,21 +21,28 @@ import java.util.Date; @Slf4j public class InjectionMetaObjectHandler implements MetaObjectHandler { + /** + * 插入填充方法,用于在插入数据时自动填充实体对象中的创建时间、更新时间、创建人、更新人等信息 + * + * @param metaObject 元对象,用于获取原始对象并进行填充 + */ @Override public void insertFill(MetaObject metaObject) { try { if (ObjectUtil.isNotNull(metaObject) && metaObject.getOriginalObject() instanceof BaseEntity baseEntity) { + // 获取当前时间作为创建时间和更新时间,如果创建时间不为空,则使用创建时间,否则使用当前时间 Date current = ObjectUtil.isNotNull(baseEntity.getCreateTime()) ? baseEntity.getCreateTime() : new Date(); baseEntity.setCreateTime(current); baseEntity.setUpdateTime(current); + + // 如果创建人为空,则填充当前登录用户的信息 if (ObjectUtil.isNull(baseEntity.getCreateBy())) { LoginUser loginUser = getLoginUser(); if (ObjectUtil.isNotNull(loginUser)) { Long userId = loginUser.getUserId(); - // 当前已登录 且 创建人为空 则填充 + // 填充创建人、更新人和创建部门信息 baseEntity.setCreateBy(userId); - // 当前已登录 且 更新人为空 则填充 baseEntity.setUpdateBy(userId); baseEntity.setCreateDept(ObjectUtil.isNotNull(baseEntity.getCreateDept()) ? baseEntity.getCreateDept() : loginUser.getDeptId()); @@ -47,19 +54,24 @@ public class InjectionMetaObjectHandler implements MetaObjectHandler { } } + /** + * 更新填充方法,用于在更新数据时自动填充实体对象中的更新时间和更新人信息 + * + * @param metaObject 元对象,用于获取原始对象并进行填充 + */ @Override public void updateFill(MetaObject metaObject) { try { if (ObjectUtil.isNotNull(metaObject) && metaObject.getOriginalObject() instanceof BaseEntity baseEntity) { + // 获取当前时间作为更新时间,无论原始对象中的更新时间是否为空都填充 Date current = new Date(); - // 更新时间填充(不管为不为空) baseEntity.setUpdateTime(current); - // 当前已登录 更新人填充(不管为不为空) + + // 获取当前登录用户的ID,并填充更新人信息 Long userId = LoginHelper.getUserId(); if (ObjectUtil.isNotNull(userId)) { baseEntity.setUpdateBy(userId); } - } } catch (Exception e) { throw new ServiceException("自动注入异常 => " + e.getMessage(), HttpStatus.HTTP_UNAUTHORIZED); @@ -67,7 +79,9 @@ public class InjectionMetaObjectHandler implements MetaObjectHandler { } /** - * 获取登录用户名 + * 获取当前登录用户信息 + * + * @return 当前登录用户的信息,如果用户未登录则返回 null */ private LoginUser getLoginUser() { LoginUser loginUser; diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/MybatisExceptionHandler.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/MybatisExceptionHandler.java index ec3ee0df7..518d52d23 100644 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/MybatisExceptionHandler.java +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/MybatisExceptionHandler.java @@ -1,15 +1,14 @@ package org.dromara.common.mybatis.handler; -import org.dromara.common.core.domain.R; +import jakarta.servlet.http.HttpServletRequest; import lombok.extern.slf4j.Slf4j; +import org.dromara.common.core.domain.R; import org.dromara.common.core.utils.StringUtils; import org.mybatis.spring.MyBatisSystemException; import org.springframework.dao.DuplicateKeyException; import org.springframework.web.bind.annotation.ExceptionHandler; import org.springframework.web.bind.annotation.RestControllerAdvice; -import jakarta.servlet.http.HttpServletRequest; - /** * Mybatis异常处理器 * diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/PlusDataPermissionHandler.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/PlusDataPermissionHandler.java index 7d7fd84a9..74279bde0 100644 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/PlusDataPermissionHandler.java +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/PlusDataPermissionHandler.java @@ -68,13 +68,27 @@ public class PlusDataPermissionHandler { */ private final BeanResolver beanResolver = new BeanFactoryResolver(SpringUtils.getBeanFactory()); + /** + * 构造方法,扫描指定包下的 Mapper 类并初始化缓存 + * + * @param mapperPackage Mapper 类所在的包路径 + */ public PlusDataPermissionHandler(String mapperPackage) { scanMapperClasses(mapperPackage); } - + /** + * 获取数据过滤条件的 SQL 片段 + * + * @param where 原始的查询条件表达式 + * @param mappedStatementId Mapper 方法的 ID + * @param isSelect 是否为查询语句 + * @return 数据过滤条件的 SQL 片段 + */ public Expression getSqlSegment(Expression where, String mappedStatementId, boolean isSelect) { + // 获取数据权限配置 DataPermission dataPermission = getDataPermission(mappedStatementId); + // 获取当前登录用户信息 LoginUser currentUser = DataPermissionHelper.getVariable("user"); if (ObjectUtil.isNull(currentUser)) { currentUser = LoginHelper.getLoginUser(); @@ -84,6 +98,7 @@ public class PlusDataPermissionHandler { if (LoginHelper.isSuperAdmin() || LoginHelper.isTenantAdmin()) { return where; } + // 构造数据过滤条件的 SQL 片段 String dataFilterSql = buildDataFilter(dataPermission.value(), isSelect); if (StringUtils.isBlank(dataFilterSql)) { return where; @@ -103,7 +118,12 @@ public class PlusDataPermissionHandler { } /** - * 构造数据过滤sql + * 构建数据过滤条件的 SQL 语句 + * + * @param dataColumns 数据权限注解中的列信息 + * @param isSelect 标志当前操作是否为查询操作,查询操作和更新或删除操作在处理过滤条件时会有不同的处理方式 + * @return 构建的数据过滤条件的 SQL 语句 + * @throws ServiceException 如果角色的数据范围异常或者 key 与 value 的长度不匹配,则抛出 ServiceException 异常 */ private String buildDataFilter(DataColumn[] dataColumns, boolean isSelect) { // 更新或删除需满足所有条件 @@ -159,20 +179,29 @@ public class PlusDataPermissionHandler { } /** - * 通过 mapperPackage 设置的扫描包 扫描缓存有注解的方法与类 + * 扫描指定包下的 Mapper 类,并查找其中带有特定注解的方法或类 + * + * @param mapperPackage Mapper 类所在的包路径 */ private void scanMapperClasses(String mapperPackage) { + // 创建资源解析器和元数据读取工厂 PathMatchingResourcePatternResolver resolver = new PathMatchingResourcePatternResolver(); CachingMetadataReaderFactory factory = new CachingMetadataReaderFactory(); + // 将 Mapper 包路径按分隔符拆分为数组 String[] packagePatternArray = StringUtils.splitPreserveAllTokens(mapperPackage, ConfigurableApplicationContext.CONFIG_LOCATION_DELIMITERS); String classpath = ResourcePatternResolver.CLASSPATH_ALL_URL_PREFIX; try { for (String packagePattern : packagePatternArray) { + // 将包路径转换为资源路径 String path = ClassUtils.convertClassNameToResourcePath(packagePattern); + // 获取指定路径下的所有 .class 文件资源 Resource[] resources = resolver.getResources(classpath + path + "/*.class"); for (Resource resource : resources) { + // 获取资源的类元数据 ClassMetadata classMetadata = factory.getMetadataReader(resource).getClassMetadata(); + // 获取资源对应的类对象 Class clazz = Resources.classForName(classMetadata.getClassName()); + // 查找类中的特定注解 findAnnotation(clazz); } } @@ -181,9 +210,13 @@ public class PlusDataPermissionHandler { } } + /** + * 在指定的类中查找特定的注解 DataPermission,并将带有这个注解的方法或类存储到 dataPermissionCacheMap 中 + * + * @param clazz 要查找的类 + */ private void findAnnotation(Class clazz) { DataPermission dataPermission; - // 获取方法注解 for (Method method : clazz.getMethods()) { if (method.isDefault() || method.isVarArgs()) { continue; @@ -194,17 +227,24 @@ public class PlusDataPermissionHandler { dataPermissionCacheMap.put(mappedStatementId, dataPermission); } } - // 获取类注解 if (AnnotationUtil.hasAnnotation(clazz, DataPermission.class)) { dataPermission = AnnotationUtil.getAnnotation(clazz, DataPermission.class); dataPermissionCacheMap.put(clazz.getName(), dataPermission); } } + /** + * 根据映射语句 ID 或类名获取对应的 DataPermission 注解对象 + * + * @param mapperId 映射语句 ID + * @return DataPermission 注解对象,如果不存在则返回 null + */ public DataPermission getDataPermission(String mapperId) { + // 检查缓存中是否包含映射语句 ID 对应的 DataPermission 注解对象 if (dataPermissionCacheMap.containsKey(mapperId)) { return dataPermissionCacheMap.get(mapperId); } + // 如果缓存中不包含映射语句 ID 对应的 DataPermission 注解对象,则尝试使用类名作为键查找 String clazzName = mapperId.substring(0, mapperId.lastIndexOf(".")); if (dataPermissionCacheMap.containsKey(clazzName)) { return dataPermissionCacheMap.get(clazzName); @@ -213,7 +253,10 @@ public class PlusDataPermissionHandler { } /** - * 是否无效 + * 检查给定的映射语句 ID 是否有效,即是否能够找到对应的 DataPermission 注解对象 + * + * @param mapperId 映射语句 ID + * @return 如果找到对应的 DataPermission 注解对象,则返回 false;否则返回 true */ public boolean invalid(String mapperId) { return getDataPermission(mapperId) == null; diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/helper/DataBaseHelper.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/helper/DataBaseHelper.java index bb20f4b3a..a7cfee50b 100644 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/helper/DataBaseHelper.java +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/helper/DataBaseHelper.java @@ -2,11 +2,11 @@ package org.dromara.common.mybatis.helper; import cn.hutool.core.convert.Convert; import com.baomidou.dynamic.datasource.DynamicRoutingDataSource; +import lombok.AccessLevel; +import lombok.NoArgsConstructor; import org.dromara.common.core.exception.ServiceException; import org.dromara.common.core.utils.SpringUtils; import org.dromara.common.mybatis.enums.DataBaseType; -import lombok.AccessLevel; -import lombok.NoArgsConstructor; import javax.sql.DataSource; import java.sql.Connection; @@ -14,7 +14,6 @@ import java.sql.DatabaseMetaData; import java.sql.SQLException; import java.util.ArrayList; import java.util.List; -import java.util.Set; /** * 数据库助手 diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/helper/DataPermissionHelper.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/helper/DataPermissionHelper.java index 7f6ab1f00..2afe9ee47 100644 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/helper/DataPermissionHelper.java +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/helper/DataPermissionHelper.java @@ -24,17 +24,35 @@ public class DataPermissionHelper { private static final String DATA_PERMISSION_KEY = "data:permission"; + /** + * 从上下文中获取指定键的变量值,并将其转换为指定的类型 + * + * @param key 变量的键 + * @param 变量值的类型 + * @return 指定键的变量值,如果不存在则返回 null + */ public static T getVariable(String key) { Map context = getContext(); return (T) context.get(key); } - + /** + * 向上下文中设置指定键的变量值 + * + * @param key 要设置的变量的键 + * @param value 要设置的变量值 + */ public static void setVariable(String key, Object value) { Map context = getContext(); context.put(key, value); } + /** + * 获取数据权限上下文 + * + * @return 存储在SaStorage中的Map对象,用于存储数据权限相关的上下文信息 + * @throws NullPointerException 如果数据权限上下文类型异常,则抛出NullPointerException + */ public static Map getContext() { SaStorage saStorage = SaHolder.getStorage(); Object attribute = saStorage.get(DATA_PERMISSION_KEY); @@ -64,6 +82,7 @@ public class DataPermissionHelper { /** * 在忽略数据权限中执行 + *

禁止在忽略数据权限中执行忽略数据权限

* * @param handle 处理执行方法 */ @@ -78,6 +97,7 @@ public class DataPermissionHelper { /** * 在忽略数据权限中执行 + *

禁止在忽略数据权限中执行忽略数据权限

* * @param handle 处理执行方法 */ diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/interceptor/PlusDataPermissionInterceptor.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/interceptor/PlusDataPermissionInterceptor.java index 6eed8f770..85a4d0abc 100644 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/interceptor/PlusDataPermissionInterceptor.java +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/interceptor/PlusDataPermissionInterceptor.java @@ -37,17 +37,33 @@ public class PlusDataPermissionInterceptor extends BaseMultiTableInnerIntercepto private final PlusDataPermissionHandler dataPermissionHandler; + /** + * 构造函数,初始化 PlusDataPermissionHandler 实例 + * + * @param mapperPackage 扫描的映射器包 + */ public PlusDataPermissionInterceptor(String mapperPackage) { this.dataPermissionHandler = new PlusDataPermissionHandler(mapperPackage); } + /** + * 在执行查询之前,检查并处理数据权限相关逻辑 + * + * @param executor MyBatis 执行器对象 + * @param ms 映射语句对象 + * @param parameter 方法参数 + * @param rowBounds 分页对象 + * @param resultHandler 结果处理器 + * @param boundSql 绑定的 SQL 对象 + * @throws SQLException 如果发生 SQL 异常 + */ @Override public void beforeQuery(Executor executor, MappedStatement ms, Object parameter, RowBounds rowBounds, ResultHandler resultHandler, BoundSql boundSql) throws SQLException { - // 检查忽略注解 + // 检查是否需要忽略数据权限处理 if (InterceptorIgnoreHelper.willIgnoreDataPermission(ms.getId())) { return; } - // 检查是否无效 无数据权限注解 + // 检查是否缺少有效的数据权限注解 if (dataPermissionHandler.invalid(ms.getId())) { return; } @@ -56,16 +72,26 @@ public class PlusDataPermissionInterceptor extends BaseMultiTableInnerIntercepto mpBs.sql(parserSingle(mpBs.sql(), ms.getId())); } + /** + * 在准备 SQL 语句之前,检查并处理更新和删除操作的数据权限相关逻辑 + * + * @param sh MyBatis StatementHandler 对象 + * @param connection 数据库连接对象 + * @param transactionTimeout 事务超时时间 + */ @Override public void beforePrepare(StatementHandler sh, Connection connection, Integer transactionTimeout) { PluginUtils.MPStatementHandler mpSh = PluginUtils.mpStatementHandler(sh); MappedStatement ms = mpSh.mappedStatement(); + // 获取 SQL 命令类型(增、删、改、查) SqlCommandType sct = ms.getSqlCommandType(); + + // 只处理更新和删除操作的 SQL 语句 if (sct == SqlCommandType.UPDATE || sct == SqlCommandType.DELETE) { if (InterceptorIgnoreHelper.willIgnoreDataPermission(ms.getId())) { return; } - // 检查是否无效 无数据权限注解 + // 检查是否缺少有效的数据权限注解 if (dataPermissionHandler.invalid(ms.getId())) { return; } @@ -74,6 +100,14 @@ public class PlusDataPermissionInterceptor extends BaseMultiTableInnerIntercepto } } + /** + * 处理 SELECT 查询语句中的 WHERE 条件 + * + * @param select SELECT 查询对象 + * @param index 查询语句的索引 + * @param sql 查询语句 + * @param obj WHERE 条件参数 + */ @Override protected void processSelect(Select select, int index, String sql, Object obj) { if (select instanceof PlainSelect) { @@ -84,6 +118,14 @@ public class PlusDataPermissionInterceptor extends BaseMultiTableInnerIntercepto } } + /** + * 处理 UPDATE 语句中的 WHERE 条件 + * + * @param update UPDATE 查询对象 + * @param index 查询语句的索引 + * @param sql 查询语句 + * @param obj WHERE 条件参数 + */ @Override protected void processUpdate(Update update, int index, String sql, Object obj) { Expression sqlSegment = dataPermissionHandler.getSqlSegment(update.getWhere(), (String) obj, false); @@ -92,6 +134,14 @@ public class PlusDataPermissionInterceptor extends BaseMultiTableInnerIntercepto } } + /** + * 处理 DELETE 语句中的 WHERE 条件 + * + * @param delete DELETE 查询对象 + * @param index 查询语句的索引 + * @param sql 查询语句 + * @param obj WHERE 条件参数 + */ @Override protected void processDelete(Delete delete, int index, String sql, Object obj) { Expression sqlSegment = dataPermissionHandler.getSqlSegment(delete.getWhere(), (String) obj, false); @@ -101,10 +151,10 @@ public class PlusDataPermissionInterceptor extends BaseMultiTableInnerIntercepto } /** - * 设置 where 条件 + * 设置 SELECT 语句的 WHERE 条件 * - * @param plainSelect 查询对象 - * @param mappedStatementId 执行方法id + * @param plainSelect SELECT 查询对象 + * @param mappedStatementId 映射语句的 ID */ protected void setWhere(PlainSelect plainSelect, String mappedStatementId) { Expression sqlSegment = dataPermissionHandler.getSqlSegment(plainSelect.getWhere(), mappedStatementId, true); @@ -113,6 +163,14 @@ public class PlusDataPermissionInterceptor extends BaseMultiTableInnerIntercepto } } + /** + * 构建表达式,用于处理表的数据权限 + * + * @param table 表对象 + * @param where WHERE 条件表达式 + * @param whereSegment WHERE 条件片段 + * @return 构建的表达式 + */ @Override public Expression buildTableExpression(Table table, Expression where, String whereSegment) { // 只有新版数据权限处理器才会执行到这里 diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDataScopeServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDataScopeServiceImpl.java index d7ba934f2..a31c42635 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDataScopeServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDataScopeServiceImpl.java @@ -3,14 +3,14 @@ package org.dromara.system.service.impl; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.convert.Convert; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import org.dromara.system.domain.SysDept; -import org.dromara.common.mybatis.helper.DataBaseHelper; +import lombok.RequiredArgsConstructor; import org.dromara.common.core.utils.StreamUtils; +import org.dromara.common.mybatis.helper.DataBaseHelper; +import org.dromara.system.domain.SysDept; import org.dromara.system.domain.SysRoleDept; import org.dromara.system.mapper.SysDeptMapper; import org.dromara.system.mapper.SysRoleDeptMapper; import org.dromara.system.service.ISysDataScopeService; -import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Service; import java.util.List; @@ -30,6 +30,12 @@ public class SysDataScopeServiceImpl implements ISysDataScopeService { private final SysRoleDeptMapper roleDeptMapper; private final SysDeptMapper deptMapper; + /** + * 获取角色自定义权限 + * + * @param roleId 角色Id + * @return 部门Id组 + */ @Override public String getRoleCustom(Long roleId) { List list = roleDeptMapper.selectList( @@ -42,6 +48,12 @@ public class SysDataScopeServiceImpl implements ISysDataScopeService { return null; } + /** + * 获取部门及以下权限 + * + * @param deptId 部门Id + * @return 部门Id组 + */ @Override public String getDeptAndChild(Long deptId) { List deptList = deptMapper.selectList(new LambdaQueryWrapper() -- Gitee From bfa77361b787c409dc75a52518058ffdba3568fb Mon Sep 17 00:00:00 2001 From: mxyyyy <2668244006@qq.com> Date: Fri, 28 Jun 2024 12:05:03 +0800 Subject: [PATCH 011/540] =?UTF-8?q?docs:=20README=E6=96=87=E6=A1=A3?= =?UTF-8?q?=E9=94=99=E5=88=AB=E5=AD=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 7ac544898..d280c3f8f 100644 --- a/README.md +++ b/README.md @@ -56,7 +56,7 @@ CCFlow 驰聘低代码-流程-表单 - https://gitee.com/opencc/RuoYi-JFlow
| 数据加解密 | 采用 注解 + mybatis 拦截器 对存取数据期间自动加解密
支持多种策略 如BASE64、AES、RSA、SM2、SM4等 | 无 | | 接口传输加密 | 采用 动态 AES + RSA 加密请求 body 每一次请求秘钥都不同大幅度降低可破解性 | 无 | | 数据翻译 | 采用 注解 + jackson 序列化期间动态修改数据 数据进行翻译
支持多种模式: `映射翻译` `直接翻译` `其他扩展条件翻译` 接口化两步即可完成自定义扩展 内置多种翻译实现 | 无 | -| 多数据源框架 | 采用 dynamic-datasource 支持世面大部分数据库
通过yml配置即可动态管理异构不同种类的数据库 也可通过前端页面添加数据源
支持spel表达式从请求头参数等条件切换数据源 | 基于 druid 手动编写代码配置数据源 配置繁琐 支持性差 | +| 多数据源框架 | 采用 dynamic-datasource 支持市面大部分数据库
通过yml配置即可动态管理异构不同种类的数据库 也可通过前端页面添加数据源
支持spel表达式从请求头参数等条件切换数据源 | 基于 druid 手动编写代码配置数据源 配置繁琐 支持性差 | | 多数据源事务 | 采用 dynamic-datasource 支持多数据源不同种类的数据库事务回滚 | 不支持 | | 数据库连接池 | 采用 HikariCP Spring官方内置连接池 配置简单 以性能与稳定性闻名天下 | 采用 druid bug众多 社区维护差 活跃度低 配置众多繁琐性能一般 | | 数据库主键 | 采用 雪花ID 基于时间戳的 有序增长 唯一ID 再也不用为分库分表 数据合并主键冲突重复而发愁 | 采用 数据库自增ID 支持数据量有限 不支持多数据源主键唯一 | -- Gitee From a4fe077a231ed2ae0094af0fc6fa0735b764c862 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 28 Jun 2024 12:49:58 +0800 Subject: [PATCH 012/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E5=A4=A7?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=E9=87=8F=E4=B8=8Bjoin=E5=8D=A1=E9=A1=BF?= =?UTF-8?q?=E9=97=AE=E9=A2=98=20=E4=BD=BF=E7=94=A8=E5=AD=90=E6=9F=A5?= =?UTF-8?q?=E8=AF=A2=E6=8F=90=E9=AB=98=E6=80=A7=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dromara/system/mapper/SysMenuMapper.java | 7 ---- .../service/impl/SysMenuServiceImpl.java | 2 +- .../service/impl/SysRoleServiceImpl.java | 4 +-- .../resources/mapper/system/SysMenuMapper.xml | 33 +++++-------------- .../resources/mapper/system/SysRoleMapper.xml | 4 +-- 5 files changed, 13 insertions(+), 37 deletions(-) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysMenuMapper.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysMenuMapper.java index b2be0e988..ac646c096 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysMenuMapper.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysMenuMapper.java @@ -18,13 +18,6 @@ import java.util.List; */ public interface SysMenuMapper extends BaseMapperPlus { - /** - * 根据用户所有权限 - * - * @return 权限列表 - */ - List selectMenuPerms(); - /** * 根据用户查询系统菜单列表 * diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysMenuServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysMenuServiceImpl.java index 6e1765ba5..dd56ef6ab 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysMenuServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysMenuServiceImpl.java @@ -75,7 +75,7 @@ public class SysMenuServiceImpl implements ISysMenuService { .orderByAsc(SysMenu::getOrderNum)); } else { QueryWrapper wrapper = Wrappers.query(); - wrapper.eq("sur.user_id", userId) + wrapper.inSql("r.role_id", "select role_id from sys_user_role where user_id = " + userId) .like(StringUtils.isNotBlank(menu.getMenuName()), "m.menu_name", menu.getMenuName()) .eq(StringUtils.isNotBlank(menu.getVisible()), "m.visible", menu.getVisible()) .eq(StringUtils.isNotBlank(menu.getStatus()), "m.status", menu.getStatus()) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysRoleServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysRoleServiceImpl.java index 6c89082e8..01fb5640b 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysRoleServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysRoleServiceImpl.java @@ -103,7 +103,7 @@ public class SysRoleServiceImpl implements ISysRoleService { */ @Override public List selectRolesAuthByUserId(Long userId) { - List userRoles = baseMapper.selectRolePermissionByUserId(userId); + List userRoles = baseMapper.selectRolesByUserId(userId); List roles = selectRoleAll(); // 使用HashSet提高查找效率 Set userRoleIds = userRoles.stream().map(SysRoleVo::getRoleId).collect(Collectors.toSet()); @@ -123,7 +123,7 @@ public class SysRoleServiceImpl implements ISysRoleService { */ @Override public Set selectRolePermissionByUserId(Long userId) { - List perms = baseMapper.selectRolePermissionByUserId(userId); + List perms = baseMapper.selectRolesByUserId(userId); Set permsSet = new HashSet<>(); for (SysRoleVo perm : perms) { if (ObjectUtil.isNotNull(perm)) { diff --git a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysMenuMapper.xml b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysMenuMapper.xml index fad181278..a9d488642 100644 --- a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysMenuMapper.xml +++ b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysMenuMapper.xml @@ -11,9 +11,8 @@ select distinct m.menu_id, m.parent_id, m.menu_name, m.path, m.component, m.query_param, m.visible, m.status, m.perms, m.is_frame, m.is_cache, m.menu_type, m.icon, m.order_num, m.create_time from sys_menu m - left join sys_role_menu rm on m.menu_id = rm.menu_id - left join sys_user_role sur on rm.role_id = sur.role_id - left join sys_role ro on sur.role_id = ro.role_id + left join sys_role_menu rm on m.menu_id = rm.menu_id + left join sys_role r on sur.role_id = r.role_id ${ew.getCustomSqlSegment} @@ -34,14 +33,10 @@ m.order_num, m.create_time from sys_menu m - left join sys_role_menu rm on m.menu_id = rm.menu_id - left join sys_user_role sur on rm.role_id = sur.role_id - left join sys_role ro on sur.role_id = ro.role_id - left join sys_user u on sur.user_id = u.user_id - where u.user_id = #{userId} - and m.menu_type in ('M', 'C') - and m.status = '0' - and ro.status = '0' + left join sys_role_menu rm on m.menu_id = rm.menu_id and m.status = '0' + left join sys_role r on rm.role_id = r.role_id and r.status = '0' + where m.menu_type in ('M', 'C') + and r.role_id in (select role_id from sys_user_role where user_id = #{userId}) order by m.parent_id, m.order_num @@ -57,22 +52,12 @@ order by m.parent_id, m.order_num - - -- Gitee From ebb7242b718e5af304503ec7ab6dc4736ce9688f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Wed, 3 Jul 2024 11:43:59 +0800 Subject: [PATCH 025/540] =?UTF-8?q?update=20=E6=9B=B4=E6=96=B0=20redis=20?= =?UTF-8?q?=E5=AF=86=E7=A0=81=E7=AD=96=E7=95=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ruoyi-admin/src/main/resources/application-dev.yml | 4 ++-- ruoyi-admin/src/main/resources/application-prod.yml | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/ruoyi-admin/src/main/resources/application-dev.yml b/ruoyi-admin/src/main/resources/application-dev.yml index dd769ca94..ea5cafac0 100644 --- a/ruoyi-admin/src/main/resources/application-dev.yml +++ b/ruoyi-admin/src/main/resources/application-dev.yml @@ -96,8 +96,8 @@ spring.data: port: 6379 # 数据库索引 database: 0 - # 密码(如没有密码请注释掉) - # password: + # redis 密码必须配置 + password: ruoyi123 # 连接超时时间 timeout: 10s # 是否开启ssl diff --git a/ruoyi-admin/src/main/resources/application-prod.yml b/ruoyi-admin/src/main/resources/application-prod.yml index 6ccb16f18..2a4bc11e9 100644 --- a/ruoyi-admin/src/main/resources/application-prod.yml +++ b/ruoyi-admin/src/main/resources/application-prod.yml @@ -99,8 +99,8 @@ spring.data: port: 6379 # 数据库索引 database: 0 - # 密码(如没有密码请注释掉) - # password: + # redis 密码必须配置 + password: ruoyi123 # 连接超时时间 timeout: 10s # 是否开启ssl -- Gitee From 00502a4689caf92947254306c449505fc80f148f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 4 Jul 2024 15:54:43 +0800 Subject: [PATCH 026/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E6=9B=B4?= =?UTF-8?q?=E6=96=B0=E4=BD=BF=E7=94=A8=20Spring=20=E5=AE=98=E6=96=B9?= =?UTF-8?q?=E6=8E=A8=E8=8D=90=20JDK?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ruoyi-admin/Dockerfile | 6 ++++-- ruoyi-extend/ruoyi-monitor-admin/Dockerfile | 6 ++++-- ruoyi-extend/ruoyi-snailjob-server/Dockerfile | 6 ++++-- 3 files changed, 12 insertions(+), 6 deletions(-) diff --git a/ruoyi-admin/Dockerfile b/ruoyi-admin/Dockerfile index 609b04a43..372f82ba3 100644 --- a/ruoyi-admin/Dockerfile +++ b/ruoyi-admin/Dockerfile @@ -1,7 +1,9 @@ +# 贝尔实验室 Spring 官方推荐镜像 JDK下载地址 https://bell-sw.com/pages/downloads/ +FROM bellsoft/liberica-openjdk-alpine:17.0.11-cds +#FROM bellsoft/liberica-openjdk-alpine:21.0.3-cds #FROM findepi/graalvm:java17-native -FROM openjdk:17.0.2-oraclelinux8 -MAINTAINER Lion Li +LABEL maintainer="Lion Li" RUN mkdir -p /ruoyi/server/logs \ /ruoyi/server/temp \ diff --git a/ruoyi-extend/ruoyi-monitor-admin/Dockerfile b/ruoyi-extend/ruoyi-monitor-admin/Dockerfile index a54f81686..6fbee5f31 100644 --- a/ruoyi-extend/ruoyi-monitor-admin/Dockerfile +++ b/ruoyi-extend/ruoyi-monitor-admin/Dockerfile @@ -1,7 +1,9 @@ +# 贝尔实验室 Spring 官方推荐镜像 JDK下载地址 https://bell-sw.com/pages/downloads/ +FROM bellsoft/liberica-openjdk-alpine:17.0.11-cds +#FROM bellsoft/liberica-openjdk-alpine:21.0.3-cds #FROM findepi/graalvm:java17-native -FROM openjdk:17.0.2-oraclelinux8 -MAINTAINER Lion Li +LABEL maintainer="Lion Li" RUN mkdir -p /ruoyi/monitor/logs diff --git a/ruoyi-extend/ruoyi-snailjob-server/Dockerfile b/ruoyi-extend/ruoyi-snailjob-server/Dockerfile index 42bb88139..8200c6f36 100644 --- a/ruoyi-extend/ruoyi-snailjob-server/Dockerfile +++ b/ruoyi-extend/ruoyi-snailjob-server/Dockerfile @@ -1,7 +1,9 @@ +# 贝尔实验室 Spring 官方推荐镜像 JDK下载地址 https://bell-sw.com/pages/downloads/ +FROM bellsoft/liberica-openjdk-alpine:17.0.11-cds +#FROM bellsoft/liberica-openjdk-alpine:21.0.3-cds #FROM findepi/graalvm:java17-native -FROM openjdk:17.0.2-oraclelinux8 -MAINTAINER Lion Li +LABEL maintainer="Lion Li" RUN mkdir -p /ruoyi/snailjob/logs -- Gitee From 0cb3105cea85d423d21cceeb94ef639affe5db58 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 5 Jul 2024 10:12:09 +0800 Subject: [PATCH 027/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E4=B8=BA?= =?UTF-8?q?=E9=9C=80=E8=A6=81=E5=AD=97=E4=BD=93=E7=9A=84=E6=9C=8D=E5=8A=A1?= =?UTF-8?q?=20=E8=A1=A5=E5=85=85=E5=AD=97=E4=BD=93?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ruoyi-admin/Dockerfile | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/ruoyi-admin/Dockerfile b/ruoyi-admin/Dockerfile index 372f82ba3..10dabc47e 100644 --- a/ruoyi-admin/Dockerfile +++ b/ruoyi-admin/Dockerfile @@ -11,6 +11,10 @@ RUN mkdir -p /ruoyi/server/logs \ WORKDIR /ruoyi/server +# 补全alpine镜像缺失字体问题 +RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g' /etc/apk/repositories +RUN apk add fontconfig && apk add --update ttf-dejavu && fc-cache --force + ENV SERVER_PORT=8080 LANG=C.UTF-8 LC_ALL=C.UTF-8 JAVA_OPTS="" EXPOSE ${SERVER_PORT} -- Gitee From 6cc24dc763c4da6d4105a79b9cf534f23f4af19b Mon Sep 17 00:00:00 2001 From: DoubleH <1402818247@qq.com> Date: Sat, 6 Jul 2024 05:58:26 +0000 Subject: [PATCH 028/540] =?UTF-8?q?!561=20=E4=BD=BF=E7=94=A8=E5=B0=81?= =?UTF-8?q?=E8=A3=85=E5=A5=BD=E7=9A=84StreamUtils=E5=B7=A5=E5=85=B7?= =?UTF-8?q?=E7=B1=BB=E4=BB=A3=E6=9B=BF=E9=A1=B9=E7=9B=AE=E4=B8=AD=E7=9A=84?= =?UTF-8?q?=E9=83=A8=E5=88=86stream=E6=93=8D=E4=BD=9C=20*=20refactor=20:?= =?UTF-8?q?=20=E4=BD=BF=E7=94=A8=E5=B0=81=E8=A3=85=E5=A5=BD=E7=9A=84Stream?= =?UTF-8?q?Utils=E5=B7=A5=E5=85=B7=E7=B1=BB=E4=BB=A3=E6=9B=BF=E9=A1=B9?= =?UTF-8?q?=E7=9B=AE=E4=B8=AD=E7=9A=84=E9=83=A8=E5=88=86stream=E6=93=8D?= =?UTF-8?q?=E4=BD=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../web/service/impl/SocialAuthStrategy.java | 3 +- .../common/core/utils/StreamUtils.java | 29 +++++++++++++++++++ .../common/doc/handler/OpenApiHandler.java | 3 +- .../mybatis/core/mapper/BaseMapperPlus.java | 3 +- .../service/impl/SysRoleServiceImpl.java | 3 +- .../cmd/DeleteSequenceMultiInstanceCmd.java | 3 +- .../impl/ActProcessInstanceServiceImpl.java | 6 ++-- .../impl/WfTaskBackNodeServiceImpl.java | 3 +- 8 files changed, 43 insertions(+), 10 deletions(-) diff --git a/ruoyi-admin/src/main/java/org/dromara/web/service/impl/SocialAuthStrategy.java b/ruoyi-admin/src/main/java/org/dromara/web/service/impl/SocialAuthStrategy.java index 66941651c..01db20027 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/service/impl/SocialAuthStrategy.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/service/impl/SocialAuthStrategy.java @@ -16,6 +16,7 @@ import org.dromara.common.core.domain.model.SocialLoginBody; import org.dromara.common.core.enums.UserStatus; import org.dromara.common.core.exception.ServiceException; import org.dromara.common.core.exception.user.UserException; +import org.dromara.common.core.utils.StreamUtils; import org.dromara.common.core.utils.ValidatorUtils; import org.dromara.common.json.utils.JsonUtils; import org.dromara.common.satoken.utils.LoginHelper; @@ -83,7 +84,7 @@ public class SocialAuthStrategy implements IAuthStrategy { } SysSocialVo social; if (TenantHelper.isEnable()) { - Optional opt = list.stream().filter(x -> x.getTenantId().equals(loginBody.getTenantId())).findAny(); + Optional opt = StreamUtils.findAny(list, x -> x.getTenantId().equals(loginBody.getTenantId())); if (opt.isEmpty()) { throw new ServiceException("对不起,你没有权限登录当前租户!"); } diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/StreamUtils.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/StreamUtils.java index 967612ef9..1342deb71 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/StreamUtils.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/StreamUtils.java @@ -7,6 +7,7 @@ import lombok.NoArgsConstructor; import java.util.*; import java.util.function.BiFunction; +import java.util.function.Consumer; import java.util.function.Function; import java.util.function.Predicate; import java.util.stream.Collectors; @@ -34,6 +35,34 @@ public class StreamUtils { return collection.stream().filter(function).collect(Collectors.toList()); } + /** + * 找到流中满足条件的第一个元素 + * + * @param collection 需要查询的集合 + * @param function 过滤方法 + * @return 找到符合条件的第一个元素,没有则返回null + */ + public static E findFirst(Collection collection, Predicate function) { + if (CollUtil.isEmpty(collection)) { + return null; + } + return collection.stream().filter(function).findFirst().orElse(null); + } + + /** + * 找到流中任意一个满足条件的元素 + * + * @param collection 需要查询的集合 + * @param function 过滤方法 + * @return 找到符合条件的任意一个元素,没有则返回null + */ + public static Optional findAny(Collection collection, Predicate function) { + if (CollUtil.isEmpty(collection)) { + return Optional.empty(); + } + return collection.stream().filter(function).findAny(); + } + /** * 将collection拼接 * diff --git a/ruoyi-common/ruoyi-common-doc/src/main/java/org/dromara/common/doc/handler/OpenApiHandler.java b/ruoyi-common/ruoyi-common-doc/src/main/java/org/dromara/common/doc/handler/OpenApiHandler.java index a35cc643a..56b73694d 100644 --- a/ruoyi-common/ruoyi-common-doc/src/main/java/org/dromara/common/doc/handler/OpenApiHandler.java +++ b/ruoyi-common/ruoyi-common-doc/src/main/java/org/dromara/common/doc/handler/OpenApiHandler.java @@ -11,6 +11,7 @@ import io.swagger.v3.oas.models.Paths; import io.swagger.v3.oas.models.tags.Tag; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; +import org.dromara.common.core.utils.StreamUtils; import org.springdoc.core.customizers.OpenApiBuilderCustomizer; import org.springdoc.core.customizers.ServerBaseUrlCustomizer; import org.springdoc.core.properties.SpringDocConfigProperties; @@ -230,7 +231,7 @@ public class OpenApiHandler extends OpenAPIService { .flatMap(x -> Stream.of(x.value())).collect(Collectors.toSet()); methodTags.addAll(AnnotatedElementUtils.findAllMergedAnnotations(method, io.swagger.v3.oas.annotations.tags.Tag.class)); if (!CollectionUtils.isEmpty(methodTags)) { - tagsStr.addAll(methodTags.stream().map(tag -> propertyResolverUtils.resolve(tag.name(), locale)).collect(Collectors.toSet())); + tagsStr.addAll(StreamUtils.toSet(methodTags, tag -> propertyResolverUtils.resolve(tag.name(), locale))); List allTags = new ArrayList<>(methodTags); addTags(allTags, tags, locale); } diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/core/mapper/BaseMapperPlus.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/core/mapper/BaseMapperPlus.java index a68d96f68..956be9fb9 100644 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/core/mapper/BaseMapperPlus.java +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/core/mapper/BaseMapperPlus.java @@ -12,6 +12,7 @@ import com.baomidou.mybatisplus.extension.toolkit.Db; import org.apache.ibatis.logging.Log; import org.apache.ibatis.logging.LogFactory; import org.dromara.common.core.utils.MapstructUtils; +import org.dromara.common.core.utils.StreamUtils; import java.io.Serializable; import java.util.Collection; @@ -341,7 +342,7 @@ public interface BaseMapperPlus extends BaseMapper { * @return 查询到的符合条件的对象列表,经过转换为指定类型的对象后返回 */ default List selectObjs(Wrapper wrapper, Function mapper) { - return this.selectObjs(wrapper).stream().filter(Objects::nonNull).map(mapper).collect(Collectors.toList()); + return StreamUtils.toList(this.selectObjs(wrapper), mapper); } } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysRoleServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysRoleServiceImpl.java index 01fb5640b..31f949836 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysRoleServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysRoleServiceImpl.java @@ -37,7 +37,6 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.util.*; -import java.util.stream.Collectors; /** * 角色 业务层处理 @@ -106,7 +105,7 @@ public class SysRoleServiceImpl implements ISysRoleService { List userRoles = baseMapper.selectRolesByUserId(userId); List roles = selectRoleAll(); // 使用HashSet提高查找效率 - Set userRoleIds = userRoles.stream().map(SysRoleVo::getRoleId).collect(Collectors.toSet()); + Set userRoleIds = StreamUtils.toSet(userRoles, SysRoleVo::getRoleId); for (SysRoleVo role : roles) { if (userRoleIds.contains(role.getRoleId())) { role.setFlag(true); diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/flowable/cmd/DeleteSequenceMultiInstanceCmd.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/flowable/cmd/DeleteSequenceMultiInstanceCmd.java index 6773eefff..a61daebc5 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/flowable/cmd/DeleteSequenceMultiInstanceCmd.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/flowable/cmd/DeleteSequenceMultiInstanceCmd.java @@ -2,6 +2,7 @@ package org.dromara.workflow.flowable.cmd; import cn.hutool.core.util.ObjectUtil; import lombok.AllArgsConstructor; +import org.dromara.common.core.utils.StreamUtils; import org.flowable.common.engine.impl.interceptor.Command; import org.flowable.common.engine.impl.interceptor.CommandContext; import org.flowable.engine.impl.persistence.entity.ExecutionEntity; @@ -59,7 +60,7 @@ public class DeleteSequenceMultiInstanceCmd implements Command { } List userIdList = new ArrayList<>(); userIds.forEach(e -> { - Long userId = assignees.stream().filter(id -> ObjectUtil.equals(id, e)).findFirst().orElse(null); + Long userId = StreamUtils.findFirst(assignees, id -> ObjectUtil.equals(id, e)); if (userId == null) { userIdList.add(e); } diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActProcessInstanceServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActProcessInstanceServiceImpl.java index b833bcc28..3b18b6153 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActProcessInstanceServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActProcessInstanceServiceImpl.java @@ -270,10 +270,10 @@ public class ActProcessInstanceServiceImpl implements IActProcessInstanceService } ProcessInstance processInstance = QueryUtils.instanceQuery(processInstanceId).singleResult(); if (processInstance != null) { - taskList = taskList.stream().filter(e -> !e.get("activityType").equals(FlowConstant.END_EVENT)).collect(Collectors.toList()); + taskList = StreamUtils.filter(taskList, e -> !e.get("activityType").equals(FlowConstant.END_EVENT)); } //查询出运行中节点 - List> runtimeNodeList = taskList.stream().filter(e -> !(Boolean) e.get("completed")).collect(Collectors.toList()); + List> runtimeNodeList = StreamUtils.filter(taskList, e -> !(Boolean) e.get("completed")); if (CollUtil.isNotEmpty(runtimeNodeList)) { Iterator> iterator = taskList.iterator(); while (iterator.hasNext()) { @@ -389,7 +389,7 @@ public class ActProcessInstanceServiceImpl implements IActProcessInstanceService } //附件 if (CollUtil.isNotEmpty(attachmentList)) { - List attachments = attachmentList.stream().filter(e -> e.getTaskId().equals(historicTaskInstance.getId())).collect(Collectors.toList()); + List attachments = StreamUtils.filter(attachmentList, e -> e.getTaskId().equals(historicTaskInstance.getId())); if (CollUtil.isNotEmpty(attachments)) { actHistoryInfoVo.setAttachmentList(attachments); } diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WfTaskBackNodeServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WfTaskBackNodeServiceImpl.java index ba1fdbb6d..6c255d3b0 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WfTaskBackNodeServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WfTaskBackNodeServiceImpl.java @@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.dromara.common.core.exception.ServiceException; +import org.dromara.common.core.utils.StreamUtils; import org.dromara.common.core.utils.StringUtils; import org.dromara.common.satoken.utils.LoginHelper; import org.dromara.workflow.domain.WfTaskBackNode; @@ -56,7 +57,7 @@ public class WfTaskBackNodeServiceImpl implements IWfTaskBackNodeService { wfTaskBackNode.setOrderNo(0); wfTaskBackNodeMapper.insert(wfTaskBackNode); } else { - WfTaskBackNode taskNode = list.stream().filter(e -> e.getNodeId().equals(wfTaskBackNode.getNodeId()) && e.getOrderNo() == 0).findFirst().orElse(null); + WfTaskBackNode taskNode = StreamUtils.findFirst(list, e -> e.getNodeId().equals(wfTaskBackNode.getNodeId()) && e.getOrderNo() == 0); if (ObjectUtil.isEmpty(taskNode)) { wfTaskBackNode.setOrderNo(list.get(0).getOrderNo() + 1); WfTaskBackNode node = getListByInstanceIdAndNodeId(wfTaskBackNode.getInstanceId(), wfTaskBackNode.getNodeId()); -- Gitee From b0b6d013577b2641703a017e5a4144ce8f8d763e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Sat, 6 Jul 2024 14:42:08 +0800 Subject: [PATCH 029/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E5=B7=A5?= =?UTF-8?q?=E4=BD=9C=E6=B5=81=E7=9B=B8=E5=85=B3=E4=BB=A3=E7=A0=81=E6=96=B9?= =?UTF-8?q?=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/ActProcessInstanceServiceImpl.java | 23 +++++++++---------- .../service/impl/ActTaskServiceImpl.java | 16 ++----------- 2 files changed, 13 insertions(+), 26 deletions(-) diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActProcessInstanceServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActProcessInstanceServiceImpl.java index 3b18b6153..e22e80053 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActProcessInstanceServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActProcessInstanceServiceImpl.java @@ -9,6 +9,7 @@ import cn.hutool.core.util.ObjectUtil; import lombok.RequiredArgsConstructor; import lombok.SneakyThrows; import lombok.extern.slf4j.Slf4j; +import org.dromara.common.core.enums.BusinessStatusEnum; import org.dromara.common.core.exception.ServiceException; import org.dromara.common.core.service.UserService; import org.dromara.common.core.utils.StreamUtils; @@ -17,7 +18,6 @@ import org.dromara.common.mybatis.core.page.PageQuery; import org.dromara.common.mybatis.core.page.TableDataInfo; import org.dromara.common.satoken.utils.LoginHelper; import org.dromara.workflow.common.constant.FlowConstant; -import org.dromara.common.core.enums.BusinessStatusEnum; import org.dromara.workflow.common.enums.TaskStatusEnum; import org.dromara.workflow.domain.ActHiProcinst; import org.dromara.workflow.domain.bo.ProcessInstanceBo; @@ -34,7 +34,7 @@ import org.dromara.workflow.service.IWfNodeConfigService; import org.dromara.workflow.service.IWfTaskBackNodeService; import org.dromara.workflow.utils.QueryUtils; import org.dromara.workflow.utils.WorkflowUtils; -import org.flowable.bpmn.model.*; +import org.flowable.bpmn.model.BpmnModel; import org.flowable.engine.*; import org.flowable.engine.history.HistoricActivityInstance; import org.flowable.engine.history.HistoricProcessInstance; @@ -57,7 +57,6 @@ import java.io.InputStream; import java.nio.charset.StandardCharsets; import java.util.List; import java.util.*; -import java.util.stream.Collectors; /** * 流程实例 服务层实现 @@ -257,15 +256,15 @@ public class ActProcessInstanceServiceImpl implements IActProcessInstanceService List highLightedFlowList = QueryUtils.hisActivityInstanceQuery(processInstanceId).orderByHistoricActivityInstanceStartTime().asc().list(); for (HistoricActivityInstance tempActivity : highLightedFlowList) { Map task = new HashMap<>(); - if (!FlowConstant.SEQUENCE_FLOW.equals(tempActivity.getActivityType()) && - !FlowConstant.PARALLEL_GATEWAY.equals(tempActivity.getActivityType()) && - !FlowConstant.EXCLUSIVE_GATEWAY.equals(tempActivity.getActivityType()) && - !FlowConstant.INCLUSIVE_GATEWAY.equals(tempActivity.getActivityType()) - ) { - task.put("key", tempActivity.getActivityId()); - task.put("completed", tempActivity.getEndTime() != null); - task.put("activityType", tempActivity.getActivityType()); - taskList.add(task); + switch (tempActivity.getActivityType()) { + case FlowConstant.SEQUENCE_FLOW, FlowConstant.PARALLEL_GATEWAY, + FlowConstant.EXCLUSIVE_GATEWAY, FlowConstant.INCLUSIVE_GATEWAY -> {} + default -> { + task.put("key", tempActivity.getActivityId()); + task.put("completed", tempActivity.getEndTime() != null); + task.put("activityType", tempActivity.getActivityType()); + taskList.add(task); + } } } ProcessInstance processInstance = QueryUtils.instanceQuery(processInstanceId).singleResult(); diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActTaskServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActTaskServiceImpl.java index f60d720df..32e6aec08 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActTaskServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActTaskServiceImpl.java @@ -260,7 +260,8 @@ public class ActTaskServiceImpl implements IActTaskService { String userId = String.valueOf(LoginHelper.getUserId()); queryWrapper.eq("t.business_status_", BusinessStatusEnum.WAITING.getStatus()); queryWrapper.eq(TenantHelper.isEnable(), "t.tenant_id_", TenantHelper.getTenantId()); - queryWrapper.and(w1 -> w1.eq("t.assignee_", userId).or(w2 -> w2.isNull("t.assignee_").apply("exists ( select LINK.ID_ from ACT_RU_IDENTITYLINK LINK where LINK.TASK_ID_ = t.ID_ and LINK.TYPE_ = 'candidate' " + "and (LINK.USER_ID_ = {0} or ( LINK.GROUP_ID_ IN " + getInParam(roleIds) + " ) ))", userId))); + String ids = StreamUtils.join(roleIds, x -> "'" + x + "'"); + queryWrapper.and(w1 -> w1.eq("t.assignee_", userId).or(w2 -> w2.isNull("t.assignee_").apply("exists ( select LINK.ID_ from ACT_RU_IDENTITYLINK LINK where LINK.TASK_ID_ = t.ID_ and LINK.TYPE_ = 'candidate' and (LINK.USER_ID_ = {0} or ( LINK.GROUP_ID_ IN ({1}) ) ))", userId, ids))); if (StringUtils.isNotBlank(taskBo.getName())) { queryWrapper.like("t.name_", taskBo.getName()); } @@ -289,19 +290,6 @@ public class ActTaskServiceImpl implements IActTaskService { return TableDataInfo.build(page); } - private String getInParam(List param) { - StringBuilder sb = new StringBuilder(); - sb.append("("); - for (int i = 0; i < param.size(); i++) { - sb.append("'").append(param.get(i)).append("'"); - if (i != param.size() - 1) { - sb.append(","); - } - } - sb.append(")"); - return sb.toString(); - } - /** * 查询当前租户所有待办任务 * -- Gitee From 113da3437bfc6b8c908999b9cf3b91fbc05eff2c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Tue, 9 Jul 2024 09:23:01 +0800 Subject: [PATCH 030/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20isLogin=20?= =?UTF-8?q?=E6=96=B9=E6=B3=95=E6=8A=9B=E5=BC=82=E5=B8=B8=E6=97=A0=E6=B3=95?= =?UTF-8?q?=E6=AD=A3=E5=B8=B8=E8=BF=94=E5=9B=9E=E5=80=BC=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/org/dromara/common/satoken/utils/LoginHelper.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/ruoyi-common/ruoyi-common-satoken/src/main/java/org/dromara/common/satoken/utils/LoginHelper.java b/ruoyi-common/ruoyi-common-satoken/src/main/java/org/dromara/common/satoken/utils/LoginHelper.java index 0f4235c76..4ab7d4eeb 100644 --- a/ruoyi-common/ruoyi-common-satoken/src/main/java/org/dromara/common/satoken/utils/LoginHelper.java +++ b/ruoyi-common/ruoyi-common-satoken/src/main/java/org/dromara/common/satoken/utils/LoginHelper.java @@ -192,7 +192,11 @@ public class LoginHelper { * @return 结果 */ public static boolean isLogin() { - return getLoginUser() != null; + try { + return getLoginUser() != null; + } catch (Exception e) { + return false; + } } } -- Gitee From 835de64bea4fab855f3633691afae25361525359 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Tue, 9 Jul 2024 10:42:16 +0800 Subject: [PATCH 031/540] =?UTF-8?q?=E2=99=A5=EF=B8=8F=E5=8F=91=E5=B8=83=20?= =?UTF-8?q?5.2.1=20=E6=AD=A3=E5=BC=8F=E7=89=88=E6=9C=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .run/ruoyi-monitor-admin.run.xml | 2 +- .run/ruoyi-server.run.xml | 2 +- .run/ruoyi-snailjob-server.run.xml | 2 +- README.md | 2 +- pom.xml | 2 +- ruoyi-common/ruoyi-common-bom/pom.xml | 2 +- script/docker/docker-compose.yml | 8 ++++---- 7 files changed, 10 insertions(+), 10 deletions(-) diff --git a/.run/ruoyi-monitor-admin.run.xml b/.run/ruoyi-monitor-admin.run.xml index 095b3d7cb..5b32519c5 100644 --- a/.run/ruoyi-monitor-admin.run.xml +++ b/.run/ruoyi-monitor-admin.run.xml @@ -2,7 +2,7 @@ - diff --git a/.run/ruoyi-server.run.xml b/.run/ruoyi-server.run.xml index 0463c3439..9fefae69a 100644 --- a/.run/ruoyi-server.run.xml +++ b/.run/ruoyi-server.run.xml @@ -2,7 +2,7 @@ - diff --git a/.run/ruoyi-snailjob-server.run.xml b/.run/ruoyi-snailjob-server.run.xml index 761915ecb..914809dbf 100644 --- a/.run/ruoyi-snailjob-server.run.xml +++ b/.run/ruoyi-snailjob-server.run.xml @@ -2,7 +2,7 @@ - diff --git a/README.md b/README.md index d280c3f8f..ad9c2cee7 100644 --- a/README.md +++ b/README.md @@ -9,7 +9,7 @@ [![License](https://img.shields.io/badge/License-MIT-blue.svg)](https://gitee.com/dromara/RuoYi-Vue-Plus/blob/master/LICENSE) [![使用IntelliJ IDEA开发维护](https://img.shields.io/badge/IntelliJ%20IDEA-提供支持-blue.svg)](https://www.jetbrains.com/?from=RuoYi-Vue-Plus)
-[![RuoYi-Vue-Plus](https://img.shields.io/badge/RuoYi_Vue_Plus-5.2.0-success.svg)](https://gitee.com/dromara/RuoYi-Vue-Plus) +[![RuoYi-Vue-Plus](https://img.shields.io/badge/RuoYi_Vue_Plus-5.2.1-success.svg)](https://gitee.com/dromara/RuoYi-Vue-Plus) [![Spring Boot](https://img.shields.io/badge/Spring%20Boot-3.2-blue.svg)]() [![JDK-17](https://img.shields.io/badge/JDK-17-green.svg)]() [![JDK-21](https://img.shields.io/badge/JDK-21-green.svg)]() diff --git a/pom.xml b/pom.xml index 900b61b53..7094419ca 100644 --- a/pom.xml +++ b/pom.xml @@ -13,7 +13,7 @@ RuoYi-Vue-Plus多租户管理系统 - 5.2.0 + 5.2.1 3.2.6 UTF-8 UTF-8 diff --git a/ruoyi-common/ruoyi-common-bom/pom.xml b/ruoyi-common/ruoyi-common-bom/pom.xml index d546275c9..5388d8c46 100644 --- a/ruoyi-common/ruoyi-common-bom/pom.xml +++ b/ruoyi-common/ruoyi-common-bom/pom.xml @@ -14,7 +14,7 @@ - 5.2.0 + 5.2.1 diff --git a/script/docker/docker-compose.yml b/script/docker/docker-compose.yml index b9614cfe0..b4f96aa44 100644 --- a/script/docker/docker-compose.yml +++ b/script/docker/docker-compose.yml @@ -100,7 +100,7 @@ services: network_mode: "host" ruoyi-server1: - image: ruoyi/ruoyi-server:5.2.0 + image: ruoyi/ruoyi-server:5.2.1 container_name: ruoyi-server1 environment: # 时区上海 @@ -115,7 +115,7 @@ services: network_mode: "host" ruoyi-server2: - image: ruoyi/ruoyi-server:5.2.0 + image: ruoyi/ruoyi-server:5.2.1 container_name: ruoyi-server2 environment: # 时区上海 @@ -130,7 +130,7 @@ services: network_mode: "host" ruoyi-monitor-admin: - image: ruoyi/ruoyi-monitor-admin:5.2.0 + image: ruoyi/ruoyi-monitor-admin:5.2.1 container_name: ruoyi-monitor-admin environment: # 时区上海 @@ -142,7 +142,7 @@ services: network_mode: "host" ruoyi-snailjob-server: - image: ruoyi/ruoyi-snailjob-server:5.2.0 + image: ruoyi/ruoyi-snailjob-server:5.2.1 container_name: ruoyi-snailjob-server environment: # 时区上海 -- Gitee From 94467273c5fa8d4d8f26f798bd9351a17c218ad9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Tue, 9 Jul 2024 16:37:05 +0800 Subject: [PATCH 032/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E6=9B=B4?= =?UTF-8?q?=E6=8D=A2docker=E9=95=9C=E5=83=8F=E5=BA=95=E5=B1=82=E7=B3=BB?= =?UTF-8?q?=E7=BB=9F=20=E9=81=BF=E5=85=8D=E6=97=A0=E5=AD=97=E4=BD=93?= =?UTF-8?q?=E6=83=85=E5=86=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ruoyi-admin/Dockerfile | 8 ++------ ruoyi-extend/ruoyi-monitor-admin/Dockerfile | 4 ++-- ruoyi-extend/ruoyi-snailjob-server/Dockerfile | 4 ++-- 3 files changed, 6 insertions(+), 10 deletions(-) diff --git a/ruoyi-admin/Dockerfile b/ruoyi-admin/Dockerfile index 10dabc47e..737cbfc78 100644 --- a/ruoyi-admin/Dockerfile +++ b/ruoyi-admin/Dockerfile @@ -1,6 +1,6 @@ # 贝尔实验室 Spring 官方推荐镜像 JDK下载地址 https://bell-sw.com/pages/downloads/ -FROM bellsoft/liberica-openjdk-alpine:17.0.11-cds -#FROM bellsoft/liberica-openjdk-alpine:21.0.3-cds +FROM bellsoft/liberica-openjdk-debian:17.0.11-cds +#FROM bellsoft/liberica-openjdk-debian:21.0.3-cds #FROM findepi/graalvm:java17-native LABEL maintainer="Lion Li" @@ -11,10 +11,6 @@ RUN mkdir -p /ruoyi/server/logs \ WORKDIR /ruoyi/server -# 补全alpine镜像缺失字体问题 -RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g' /etc/apk/repositories -RUN apk add fontconfig && apk add --update ttf-dejavu && fc-cache --force - ENV SERVER_PORT=8080 LANG=C.UTF-8 LC_ALL=C.UTF-8 JAVA_OPTS="" EXPOSE ${SERVER_PORT} diff --git a/ruoyi-extend/ruoyi-monitor-admin/Dockerfile b/ruoyi-extend/ruoyi-monitor-admin/Dockerfile index 6fbee5f31..99aaa7467 100644 --- a/ruoyi-extend/ruoyi-monitor-admin/Dockerfile +++ b/ruoyi-extend/ruoyi-monitor-admin/Dockerfile @@ -1,6 +1,6 @@ # 贝尔实验室 Spring 官方推荐镜像 JDK下载地址 https://bell-sw.com/pages/downloads/ -FROM bellsoft/liberica-openjdk-alpine:17.0.11-cds -#FROM bellsoft/liberica-openjdk-alpine:21.0.3-cds +FROM bellsoft/liberica-openjdk-debian:17.0.11-cds +#FROM bellsoft/liberica-openjdk-debian:21.0.3-cds #FROM findepi/graalvm:java17-native LABEL maintainer="Lion Li" diff --git a/ruoyi-extend/ruoyi-snailjob-server/Dockerfile b/ruoyi-extend/ruoyi-snailjob-server/Dockerfile index 8200c6f36..a66ca66e4 100644 --- a/ruoyi-extend/ruoyi-snailjob-server/Dockerfile +++ b/ruoyi-extend/ruoyi-snailjob-server/Dockerfile @@ -1,6 +1,6 @@ # 贝尔实验室 Spring 官方推荐镜像 JDK下载地址 https://bell-sw.com/pages/downloads/ -FROM bellsoft/liberica-openjdk-alpine:17.0.11-cds -#FROM bellsoft/liberica-openjdk-alpine:21.0.3-cds +FROM bellsoft/liberica-openjdk-debian:17.0.11-cds +#FROM bellsoft/liberica-openjdk-debian:21.0.3-cds #FROM findepi/graalvm:java17-native LABEL maintainer="Lion Li" -- Gitee From fc89d62f1ae4fcb6a6c303c2f9b69327728f74c3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 12 Jul 2024 12:57:45 +0800 Subject: [PATCH 033/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20TestDemo?= =?UTF-8?q?=20=E5=88=A0=E9=99=A4=E5=89=8D=E6=A0=A1=E9=AA=8C=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E6=9D=83=E9=99=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/org/dromara/demo/mapper/TestDemoMapper.java | 9 +++++---- .../dromara/demo/service/impl/TestDemoServiceImpl.java | 9 +++++++-- 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/mapper/TestDemoMapper.java b/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/mapper/TestDemoMapper.java index bd94b1ce6..97183a65b 100644 --- a/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/mapper/TestDemoMapper.java +++ b/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/mapper/TestDemoMapper.java @@ -4,14 +4,14 @@ import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.Constants; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import org.apache.poi.ss.formula.functions.T; +import org.apache.ibatis.annotations.Param; import org.dromara.common.mybatis.annotation.DataColumn; import org.dromara.common.mybatis.annotation.DataPermission; import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; import org.dromara.demo.domain.TestDemo; import org.dromara.demo.domain.vo.TestDemoVo; -import org.apache.ibatis.annotations.Param; +import java.io.Serializable; import java.util.Collection; import java.util.List; @@ -48,12 +48,13 @@ public interface TestDemoMapper extends BaseMapperPlus { @DataColumn(key = "deptName", value = "dept_id"), @DataColumn(key = "userName", value = "user_id") }) - int updateById(@Param(Constants.ENTITY) TestDemo entity); + List selectBatchIds(@Param(Constants.COLL) Collection idList); @Override @DataPermission({ @DataColumn(key = "deptName", value = "dept_id"), @DataColumn(key = "userName", value = "user_id") }) - int deleteByIds(@Param(Constants.COLL) Collection idList); + int updateById(@Param(Constants.ENTITY) TestDemo entity); + } diff --git a/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/service/impl/TestDemoServiceImpl.java b/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/service/impl/TestDemoServiceImpl.java index 86b39c2ae..3cfde3a2d 100644 --- a/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/service/impl/TestDemoServiceImpl.java +++ b/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/service/impl/TestDemoServiceImpl.java @@ -3,6 +3,8 @@ package org.dromara.demo.service.impl; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import lombok.RequiredArgsConstructor; +import org.dromara.common.core.exception.ServiceException; import org.dromara.common.core.utils.MapstructUtils; import org.dromara.common.core.utils.StringUtils; import org.dromara.common.mybatis.core.page.PageQuery; @@ -12,7 +14,6 @@ import org.dromara.demo.domain.bo.TestDemoBo; import org.dromara.demo.domain.vo.TestDemoVo; import org.dromara.demo.mapper.TestDemoMapper; import org.dromara.demo.service.ITestDemoService; -import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Service; import java.util.Collection; @@ -99,7 +100,11 @@ public class TestDemoServiceImpl implements ITestDemoService { @Override public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { if (isValid) { - //TODO 做一些业务上的校验,判断是否需要校验 + // 做一些业务上的校验,判断是否需要校验 + List list = baseMapper.selectBatchIds(ids); + if (list.size() != ids.size()) { + throw new ServiceException("您没有删除权限!"); + } } return baseMapper.deleteByIds(ids) > 0; } -- Gitee From 5444ccc8575ec402ba51daa256e372b5e9716520 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 12 Jul 2024 13:15:23 +0800 Subject: [PATCH 034/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E6=9D=83=E9=99=90=E6=94=AF=E6=8C=81=E8=87=AA=E5=AE=9A?= =?UTF-8?q?=E4=B9=89=E8=BF=9E=E6=8E=A5=E7=AC=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/mybatis/annotation/DataPermission.java | 7 +++++++ .../mybatis/handler/PlusDataPermissionHandler.java | 13 ++++++++----- .../org/dromara/demo/mapper/TestDemoMapper.java | 4 ++-- 3 files changed, 17 insertions(+), 7 deletions(-) diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/annotation/DataPermission.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/annotation/DataPermission.java index 6fd3c3e07..f5f22d599 100644 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/annotation/DataPermission.java +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/annotation/DataPermission.java @@ -20,4 +20,11 @@ public @interface DataPermission { */ DataColumn[] value(); + /** + * 权限拼接标识符(用于指定连接语句的sql符号) + * 如不填 默认 select 用 OR 其他语句用 AND + * 内容 OR 或者 AND + */ + String joinStr() default ""; + } diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/PlusDataPermissionHandler.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/PlusDataPermissionHandler.java index 74279bde0..239285cea 100644 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/PlusDataPermissionHandler.java +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/PlusDataPermissionHandler.java @@ -99,7 +99,7 @@ public class PlusDataPermissionHandler { return where; } // 构造数据过滤条件的 SQL 片段 - String dataFilterSql = buildDataFilter(dataPermission.value(), isSelect); + String dataFilterSql = buildDataFilter(dataPermission, isSelect); if (StringUtils.isBlank(dataFilterSql)) { return where; } @@ -120,14 +120,17 @@ public class PlusDataPermissionHandler { /** * 构建数据过滤条件的 SQL 语句 * - * @param dataColumns 数据权限注解中的列信息 - * @param isSelect 标志当前操作是否为查询操作,查询操作和更新或删除操作在处理过滤条件时会有不同的处理方式 + * @param dataPermission 数据权限注解 + * @param isSelect 标志当前操作是否为查询操作,查询操作和更新或删除操作在处理过滤条件时会有不同的处理方式 * @return 构建的数据过滤条件的 SQL 语句 * @throws ServiceException 如果角色的数据范围异常或者 key 与 value 的长度不匹配,则抛出 ServiceException 异常 */ - private String buildDataFilter(DataColumn[] dataColumns, boolean isSelect) { + private String buildDataFilter(DataPermission dataPermission, boolean isSelect) { // 更新或删除需满足所有条件 String joinStr = isSelect ? " OR " : " AND "; + if (StringUtils.isNotBlank(dataPermission.joinStr())) { + joinStr = " " + dataPermission.joinStr() + " "; + } LoginUser user = DataPermissionHelper.getVariable("user"); StandardEvaluationContext context = new StandardEvaluationContext(); context.setBeanResolver(beanResolver); @@ -145,7 +148,7 @@ public class PlusDataPermissionHandler { return ""; } boolean isSuccess = false; - for (DataColumn dataColumn : dataColumns) { + for (DataColumn dataColumn : dataPermission.value()) { if (dataColumn.key().length != dataColumn.value().length) { throw new ServiceException("角色数据范围异常 => key与value长度不匹配"); } diff --git a/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/mapper/TestDemoMapper.java b/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/mapper/TestDemoMapper.java index 97183a65b..6aeeb5062 100644 --- a/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/mapper/TestDemoMapper.java +++ b/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/mapper/TestDemoMapper.java @@ -44,10 +44,10 @@ public interface TestDemoMapper extends BaseMapperPlus { List selectList(@Param(Constants.WRAPPER) Wrapper queryWrapper); @Override - @DataPermission({ + @DataPermission(value = { @DataColumn(key = "deptName", value = "dept_id"), @DataColumn(key = "userName", value = "user_id") - }) + }, joinStr = "AND") List selectBatchIds(@Param(Constants.COLL) Collection idList); @Override -- Gitee From ab147df2f1e378e43c8c71a5119fc12153ffad18 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 12 Jul 2024 13:51:34 +0800 Subject: [PATCH 035/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E6=9D=83=E9=99=90=E6=94=AF=E6=8C=81=E9=80=9A=E8=BF=87?= =?UTF-8?q?=E8=8F=9C=E5=8D=95=E6=A0=87=E8=AF=86=E7=AC=A6=E8=8E=B7=E5=8F=96?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=E6=89=80=E6=9C=89=E6=9D=83?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/dromara/common/mybatis/annotation/DataColumn.java | 7 +++++++ .../common/mybatis/handler/PlusDataPermissionHandler.java | 6 ++++++ 2 files changed, 13 insertions(+) diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/annotation/DataColumn.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/annotation/DataColumn.java index f8c5cd009..2879b9d1c 100644 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/annotation/DataColumn.java +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/annotation/DataColumn.java @@ -30,4 +30,11 @@ public @interface DataColumn { */ String[] value() default "dept_id"; + /** + * 权限标识符 用于通过菜单权限标识符来获取数据权限 + * 拥有此标识符的角色 将不会拼接此角色的数据过滤sql + * + * @return 权限标识符 + */ + String permission() default ""; } diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/PlusDataPermissionHandler.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/PlusDataPermissionHandler.java index 239285cea..61c86ff36 100644 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/PlusDataPermissionHandler.java +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/PlusDataPermissionHandler.java @@ -158,6 +158,12 @@ public class PlusDataPermissionHandler { )) { continue; } + // 包含权限标识符 这直接跳过 + if (StringUtils.isNotBlank(dataColumn.permission()) && + CollUtil.contains(user.getMenuPermission(), dataColumn.permission()) + ) { + continue; + } // 设置注解变量 key 为表达式变量 value 为变量值 for (int i = 0; i < dataColumn.key().length; i++) { context.setVariable(dataColumn.key()[i], dataColumn.value()[i]); -- Gitee From f76738e02b70f7aef7b7fdc462456c14b8c33087 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Mon, 15 Jul 2024 15:18:29 +0800 Subject: [PATCH 036/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20bug=20?= =?UTF-8?q?=E6=A8=A1=E6=9D=BF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitee/ISSUE_TEMPLATE.zh-CN.md | 49 ---------------------------------- .gitee/ISSUE_TEMPLATE/bug.yml | 5 ++-- 2 files changed, 3 insertions(+), 51 deletions(-) delete mode 100644 .gitee/ISSUE_TEMPLATE.zh-CN.md diff --git a/.gitee/ISSUE_TEMPLATE.zh-CN.md b/.gitee/ISSUE_TEMPLATE.zh-CN.md deleted file mode 100644 index cf82237f3..000000000 --- a/.gitee/ISSUE_TEMPLATE.zh-CN.md +++ /dev/null @@ -1,49 +0,0 @@ -### 使用版本(未按照模板填写直接删除) - -- jdk版本(带上尾号): 例如 1.8.0_202 -- 框架版本(项目启动时输出的版本号): 例如 4.4.0 -- 其他依赖版本(你觉得有必要的): - -### 问题前提 - -> 功能不好用 不会用 是否已经看过项目文档 -> 项目运行报错 是否已经拿着报错信息去百度 常见报错百度百度足以 -> 是否搜索过其他issue 一些已经解决的问题 会在issue内留下解决方法 -> 无法线上解决或者与框架无关的问题的欢迎加VIP群跟作者一对一谈 - -### 异常模块 - -> 此报错都涉及到那些系统模块 - -例如 ruoyi-system ruoyi-auth 等等 - -### 问题描述 - -> 越详细越容易直击问题所在 - -已知: XXX功能不好用 或 XXX数据不正常 等等 - -### 希望结果 - -> 想知道你觉得怎么样是正常或者合理的 - -希望功能可以有XXX结果 或者 XXX现象 - -### 重现步骤 - -> 作者并不知道这个问题是如何出现的 - -- 1 -- 2 -- 3 - -### 相关代码与报错信息(请勿发混乱格式) - -> 代码可按照如下形式提供或者截图均可 越详细越好 -> 大多数问题都是 代码编写错误问题 逻辑问题 或者用法错误等问题 - -```java -public class XXX { - -} -``` \ No newline at end of file diff --git a/.gitee/ISSUE_TEMPLATE/bug.yml b/.gitee/ISSUE_TEMPLATE/bug.yml index 8a5d06500..045001336 100644 --- a/.gitee/ISSUE_TEMPLATE/bug.yml +++ b/.gitee/ISSUE_TEMPLATE/bug.yml @@ -9,8 +9,9 @@ body: label: 版本 description: 你当前正在使用我们软件的哪个版本(pom文件内的版本号)? value: | - jdk版本(带上尾号): 例如 17.0.8 - 框架版本(项目启动时输出的版本号): 例如 5.1.1 + 注意: 未填写版本号不予处理直接关闭或删除 + jdk版本(带上尾号): + 框架版本(项目启动时输出的版本号): 其他依赖版本(你觉得有必要的): validations: required: true -- Gitee From 08d4493994a649b725d94e917b31d42c930284ff Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Mon, 15 Jul 2024 15:18:29 +0800 Subject: [PATCH 037/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20bug=20?= =?UTF-8?q?=E6=A8=A1=E6=9D=BF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitee/ISSUE_TEMPLATE.zh-CN.md | 49 ---------------------------------- .gitee/ISSUE_TEMPLATE/bug.yml | 5 ++-- 2 files changed, 3 insertions(+), 51 deletions(-) delete mode 100644 .gitee/ISSUE_TEMPLATE.zh-CN.md diff --git a/.gitee/ISSUE_TEMPLATE.zh-CN.md b/.gitee/ISSUE_TEMPLATE.zh-CN.md deleted file mode 100644 index cf82237f3..000000000 --- a/.gitee/ISSUE_TEMPLATE.zh-CN.md +++ /dev/null @@ -1,49 +0,0 @@ -### 使用版本(未按照模板填写直接删除) - -- jdk版本(带上尾号): 例如 1.8.0_202 -- 框架版本(项目启动时输出的版本号): 例如 4.4.0 -- 其他依赖版本(你觉得有必要的): - -### 问题前提 - -> 功能不好用 不会用 是否已经看过项目文档 -> 项目运行报错 是否已经拿着报错信息去百度 常见报错百度百度足以 -> 是否搜索过其他issue 一些已经解决的问题 会在issue内留下解决方法 -> 无法线上解决或者与框架无关的问题的欢迎加VIP群跟作者一对一谈 - -### 异常模块 - -> 此报错都涉及到那些系统模块 - -例如 ruoyi-system ruoyi-auth 等等 - -### 问题描述 - -> 越详细越容易直击问题所在 - -已知: XXX功能不好用 或 XXX数据不正常 等等 - -### 希望结果 - -> 想知道你觉得怎么样是正常或者合理的 - -希望功能可以有XXX结果 或者 XXX现象 - -### 重现步骤 - -> 作者并不知道这个问题是如何出现的 - -- 1 -- 2 -- 3 - -### 相关代码与报错信息(请勿发混乱格式) - -> 代码可按照如下形式提供或者截图均可 越详细越好 -> 大多数问题都是 代码编写错误问题 逻辑问题 或者用法错误等问题 - -```java -public class XXX { - -} -``` \ No newline at end of file diff --git a/.gitee/ISSUE_TEMPLATE/bug.yml b/.gitee/ISSUE_TEMPLATE/bug.yml index 8a5d06500..045001336 100644 --- a/.gitee/ISSUE_TEMPLATE/bug.yml +++ b/.gitee/ISSUE_TEMPLATE/bug.yml @@ -9,8 +9,9 @@ body: label: 版本 description: 你当前正在使用我们软件的哪个版本(pom文件内的版本号)? value: | - jdk版本(带上尾号): 例如 17.0.8 - 框架版本(项目启动时输出的版本号): 例如 5.1.1 + 注意: 未填写版本号不予处理直接关闭或删除 + jdk版本(带上尾号): + 框架版本(项目启动时输出的版本号): 其他依赖版本(你觉得有必要的): validations: required: true -- Gitee From 77a7a8f30ed85f15766ea3d13aaa95e53986f972 Mon Sep 17 00:00:00 2001 From: dhb52 Date: Mon, 15 Jul 2024 18:16:43 +0800 Subject: [PATCH 038/540] =?UTF-8?q?chore:=20=E5=8D=87=E7=BA=A7SnailJob?= =?UTF-8?q?=E7=89=88=E6=9C=AC=E5=88=B01.1.0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 2 +- script/sql/oracle/snail_job_oracle.sql | 25 +++++-- script/sql/postgres/snail_job_postgre.sql | 23 +++++-- script/sql/snail_job.sql | 17 +++-- script/sql/sqlserver/snail_job_sqlserver.sql | 70 +++++++++++++++++--- 5 files changed, 106 insertions(+), 31 deletions(-) diff --git a/pom.xml b/pom.xml index 7094419ca..74b0b9d6d 100644 --- a/pom.xml +++ b/pom.xml @@ -34,7 +34,7 @@ 2.2.7 4.3.1 2.14.4 - 1.0.1 + 1.1.0 1.3.6 0.2.0 1.18.32 diff --git a/script/sql/oracle/snail_job_oracle.sql b/script/sql/oracle/snail_job_oracle.sql index 19aa07e10..ce59b47d5 100644 --- a/script/sql/oracle/snail_job_oracle.sql +++ b/script/sql/oracle/snail_job_oracle.sql @@ -2,7 +2,7 @@ SnailJob Database Transfer Tool Source Server Type : MySQL Target Server Type : Oracle - Date: 2024-05-14 23:36:38 + Date: 2024-07-06 12:49:36 */ @@ -136,7 +136,7 @@ CREATE INDEX idx_sj_notify_recipient_01 ON sj_notify_recipient (namespace_id); COMMENT ON COLUMN sj_notify_recipient.id IS '主键'; COMMENT ON COLUMN sj_notify_recipient.namespace_id IS '命名空间id'; COMMENT ON COLUMN sj_notify_recipient.recipient_name IS '接收人名称'; -COMMENT ON COLUMN sj_notify_recipient.notify_type IS '通知类型 1、钉钉 2、邮件 3、企业微信 4 飞书'; +COMMENT ON COLUMN sj_notify_recipient.notify_type IS '通知类型 1、钉钉 2、邮件 3、企业微信 4 飞书 5 webhook'; COMMENT ON COLUMN sj_notify_recipient.notify_attribute IS '配置属性'; COMMENT ON COLUMN sj_notify_recipient.description IS '描述'; COMMENT ON COLUMN sj_notify_recipient.create_dt IS '创建时间'; @@ -389,8 +389,7 @@ COMMENT ON TABLE sj_server_node IS '服务器节点'; -- sj_distributed_lock CREATE TABLE sj_distributed_lock ( - id number GENERATED ALWAYS AS IDENTITY, - name varchar2(64) NULL, + name varchar2(64) NOT NULL, lock_until timestamp(3) DEFAULT CURRENT_TIMESTAMP(3) NOT NULL, locked_at timestamp(3) DEFAULT CURRENT_TIMESTAMP(3) NOT NULL, locked_by varchar2(255) NULL, @@ -399,9 +398,8 @@ CREATE TABLE sj_distributed_lock ); ALTER TABLE sj_distributed_lock - ADD CONSTRAINT pk_sj_distributed_lock PRIMARY KEY (id); + ADD CONSTRAINT pk_sj_distributed_lock PRIMARY KEY (name); -COMMENT ON COLUMN sj_distributed_lock.id IS '主键'; COMMENT ON COLUMN sj_distributed_lock.name IS '锁名称'; COMMENT ON COLUMN sj_distributed_lock.lock_until IS '锁定时长'; COMMENT ON COLUMN sj_distributed_lock.locked_at IS '锁定时间'; @@ -598,7 +596,11 @@ CREATE TABLE sj_job_task parent_id number DEFAULT 0 NOT NULL, task_status smallint DEFAULT 0 NOT NULL, retry_count number DEFAULT 0 NOT NULL, + mr_stage smallint DEFAULT NULL NULL, + leaf smallint DEFAULT '1' NOT NULL, + task_name varchar2(255) DEFAULT '' NULL, client_info varchar2(128) DEFAULT NULL NULL, + wf_context clob DEFAULT NULL NULL, result_message clob NULL, args_str clob DEFAULT NULL NULL, args_type smallint DEFAULT 1 NOT NULL, @@ -622,7 +624,11 @@ COMMENT ON COLUMN sj_job_task.task_batch_id IS '调度任务id'; COMMENT ON COLUMN sj_job_task.parent_id IS '父执行器id'; COMMENT ON COLUMN sj_job_task.task_status IS '执行的状态 0、失败 1、成功'; COMMENT ON COLUMN sj_job_task.retry_count IS '重试次数'; +COMMENT ON COLUMN sj_job_task.mr_stage IS '动态分片所处阶段 1:map 2:reduce 3:mergeReduce'; +COMMENT ON COLUMN sj_job_task.leaf IS '叶子节点'; +COMMENT ON COLUMN sj_job_task.task_name IS '任务名称'; COMMENT ON COLUMN sj_job_task.client_info IS '客户端地址 clientId#ip:port'; +COMMENT ON COLUMN sj_job_task.wf_context IS '工作流全局上下文'; COMMENT ON COLUMN sj_job_task.result_message IS '执行结果'; COMMENT ON COLUMN sj_job_task.args_str IS '执行方法参数'; COMMENT ON COLUMN sj_job_task.args_type IS '参数类型 '; @@ -773,6 +779,7 @@ CREATE TABLE sj_workflow executor_timeout number DEFAULT 0 NOT NULL, description varchar2(256) DEFAULT '' NULL, flow_info clob DEFAULT NULL NULL, + wf_context clob DEFAULT NULL NULL, bucket_index number DEFAULT 0 NOT NULL, version number NOT NULL, ext_attrs varchar2(256) DEFAULT '' NULL, @@ -799,6 +806,7 @@ COMMENT ON COLUMN sj_workflow.block_strategy IS '阻塞策略 1、丢弃 2、覆 COMMENT ON COLUMN sj_workflow.executor_timeout IS '任务执行超时时间,单位秒'; COMMENT ON COLUMN sj_workflow.description IS '描述'; COMMENT ON COLUMN sj_workflow.flow_info IS '流程信息'; +COMMENT ON COLUMN sj_workflow.wf_context IS '上下文'; COMMENT ON COLUMN sj_workflow.bucket_index IS 'bucket'; COMMENT ON COLUMN sj_workflow.version IS '版本号'; COMMENT ON COLUMN sj_workflow.ext_attrs IS '扩展字段'; @@ -864,8 +872,10 @@ CREATE TABLE sj_workflow_task_batch task_batch_status smallint DEFAULT 0 NOT NULL, operation_reason smallint DEFAULT 0 NOT NULL, flow_info clob DEFAULT NULL NULL, + wf_context clob DEFAULT NULL NULL, execution_at number DEFAULT 0 NOT NULL, ext_attrs varchar2(256) DEFAULT '' NULL, + version number DEFAULT 1 NOT NULL, deleted smallint DEFAULT 0 NOT NULL, create_dt date DEFAULT CURRENT_TIMESTAMP NOT NULL, update_dt date DEFAULT CURRENT_TIMESTAMP NOT NULL @@ -885,10 +895,11 @@ COMMENT ON COLUMN sj_workflow_task_batch.workflow_id IS '工作流任务id'; COMMENT ON COLUMN sj_workflow_task_batch.task_batch_status IS '任务批次状态 0、失败 1、成功'; COMMENT ON COLUMN sj_workflow_task_batch.operation_reason IS '操作原因'; COMMENT ON COLUMN sj_workflow_task_batch.flow_info IS '流程信息'; +COMMENT ON COLUMN sj_workflow_task_batch.wf_context IS '全局上下文'; COMMENT ON COLUMN sj_workflow_task_batch.execution_at IS '任务执行时间'; COMMENT ON COLUMN sj_workflow_task_batch.ext_attrs IS '扩展字段'; +COMMENT ON COLUMN sj_workflow_task_batch.version IS '版本号'; COMMENT ON COLUMN sj_workflow_task_batch.deleted IS '逻辑删除 1、删除'; COMMENT ON COLUMN sj_workflow_task_batch.create_dt IS '创建时间'; COMMENT ON COLUMN sj_workflow_task_batch.update_dt IS '修改时间'; COMMENT ON TABLE sj_workflow_task_batch IS '工作流批次'; - diff --git a/script/sql/postgres/snail_job_postgre.sql b/script/sql/postgres/snail_job_postgre.sql index 30a871e76..c8abc6816 100644 --- a/script/sql/postgres/snail_job_postgre.sql +++ b/script/sql/postgres/snail_job_postgre.sql @@ -2,7 +2,7 @@ SnailJob Database Transfer Tool Source Server Type : MySQL Target Server Type : PostgreSQL - Date: 2024-05-13 22:49:34 + Date: 2024-07-06 11:45:40 */ @@ -124,7 +124,7 @@ CREATE INDEX idx_sj_notify_recipient_01 ON sj_notify_recipient (namespace_id); COMMENT ON COLUMN sj_notify_recipient.id IS '主键'; COMMENT ON COLUMN sj_notify_recipient.namespace_id IS '命名空间id'; COMMENT ON COLUMN sj_notify_recipient.recipient_name IS '接收人名称'; -COMMENT ON COLUMN sj_notify_recipient.notify_type IS '通知类型 1、钉钉 2、邮件 3、企业微信 4 飞书'; +COMMENT ON COLUMN sj_notify_recipient.notify_type IS '通知类型 1、钉钉 2、邮件 3、企业微信 4 飞书 5 webhook'; COMMENT ON COLUMN sj_notify_recipient.notify_attribute IS '配置属性'; COMMENT ON COLUMN sj_notify_recipient.description IS '描述'; COMMENT ON COLUMN sj_notify_recipient.create_dt IS '创建时间'; @@ -359,8 +359,7 @@ COMMENT ON TABLE sj_server_node IS '服务器节点'; -- sj_distributed_lock CREATE TABLE sj_distributed_lock ( - id bigserial PRIMARY KEY, - name varchar(64) NOT NULL, + name varchar(64) PRIMARY KEY, lock_until timestamp(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3), locked_at timestamp(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3), locked_by varchar(255) NOT NULL, @@ -368,7 +367,6 @@ CREATE TABLE sj_distributed_lock update_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ); -COMMENT ON COLUMN sj_distributed_lock.id IS '主键'; COMMENT ON COLUMN sj_distributed_lock.name IS '锁名称'; COMMENT ON COLUMN sj_distributed_lock.lock_until IS '锁定时长'; COMMENT ON COLUMN sj_distributed_lock.locked_at IS '锁定时间'; @@ -550,7 +548,11 @@ CREATE TABLE sj_job_task parent_id bigint NOT NULL DEFAULT 0, task_status smallint NOT NULL DEFAULT 0, retry_count int NOT NULL DEFAULT 0, + mr_stage smallint NULL DEFAULT NULL, + leaf smallint NOT NULL DEFAULT '1', + task_name varchar(255) NOT NULL DEFAULT '', client_info varchar(128) NULL DEFAULT NULL, + wf_context text NULL DEFAULT NULL, result_message text NOT NULL, args_str text NULL DEFAULT NULL, args_type smallint NOT NULL DEFAULT 1, @@ -571,7 +573,11 @@ COMMENT ON COLUMN sj_job_task.task_batch_id IS '调度任务id'; COMMENT ON COLUMN sj_job_task.parent_id IS '父执行器id'; COMMENT ON COLUMN sj_job_task.task_status IS '执行的状态 0、失败 1、成功'; COMMENT ON COLUMN sj_job_task.retry_count IS '重试次数'; +COMMENT ON COLUMN sj_job_task.mr_stage IS '动态分片所处阶段 1:map 2:reduce 3:mergeReduce'; +COMMENT ON COLUMN sj_job_task.leaf IS '叶子节点'; +COMMENT ON COLUMN sj_job_task.task_name IS '任务名称'; COMMENT ON COLUMN sj_job_task.client_info IS '客户端地址 clientId#ip:port'; +COMMENT ON COLUMN sj_job_task.wf_context IS '工作流全局上下文'; COMMENT ON COLUMN sj_job_task.result_message IS '执行结果'; COMMENT ON COLUMN sj_job_task.args_str IS '执行方法参数'; COMMENT ON COLUMN sj_job_task.args_type IS '参数类型 '; @@ -713,6 +719,7 @@ CREATE TABLE sj_workflow executor_timeout int NOT NULL DEFAULT 0, description varchar(256) NOT NULL DEFAULT '', flow_info text NULL DEFAULT NULL, + wf_context text NULL DEFAULT NULL, bucket_index int NOT NULL DEFAULT 0, version int NOT NULL, ext_attrs varchar(256) NULL DEFAULT '', @@ -736,6 +743,7 @@ COMMENT ON COLUMN sj_workflow.block_strategy IS '阻塞策略 1、丢弃 2、覆 COMMENT ON COLUMN sj_workflow.executor_timeout IS '任务执行超时时间,单位秒'; COMMENT ON COLUMN sj_workflow.description IS '描述'; COMMENT ON COLUMN sj_workflow.flow_info IS '流程信息'; +COMMENT ON COLUMN sj_workflow.wf_context IS '上下文'; COMMENT ON COLUMN sj_workflow.bucket_index IS 'bucket'; COMMENT ON COLUMN sj_workflow.version IS '版本号'; COMMENT ON COLUMN sj_workflow.ext_attrs IS '扩展字段'; @@ -798,8 +806,10 @@ CREATE TABLE sj_workflow_task_batch task_batch_status smallint NOT NULL DEFAULT 0, operation_reason smallint NOT NULL DEFAULT 0, flow_info text NULL DEFAULT NULL, + wf_context text NULL DEFAULT NULL, execution_at bigint NOT NULL DEFAULT 0, ext_attrs varchar(256) NULL DEFAULT '', + version int NOT NULL DEFAULT 1, deleted smallint NOT NULL DEFAULT 0, create_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, update_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP @@ -816,10 +826,11 @@ COMMENT ON COLUMN sj_workflow_task_batch.workflow_id IS '工作流任务id'; COMMENT ON COLUMN sj_workflow_task_batch.task_batch_status IS '任务批次状态 0、失败 1、成功'; COMMENT ON COLUMN sj_workflow_task_batch.operation_reason IS '操作原因'; COMMENT ON COLUMN sj_workflow_task_batch.flow_info IS '流程信息'; +COMMENT ON COLUMN sj_workflow_task_batch.wf_context IS '全局上下文'; COMMENT ON COLUMN sj_workflow_task_batch.execution_at IS '任务执行时间'; COMMENT ON COLUMN sj_workflow_task_batch.ext_attrs IS '扩展字段'; +COMMENT ON COLUMN sj_workflow_task_batch.version IS '版本号'; COMMENT ON COLUMN sj_workflow_task_batch.deleted IS '逻辑删除 1、删除'; COMMENT ON COLUMN sj_workflow_task_batch.create_dt IS '创建时间'; COMMENT ON COLUMN sj_workflow_task_batch.update_dt IS '修改时间'; COMMENT ON TABLE sj_workflow_task_batch IS '工作流批次'; - diff --git a/script/sql/snail_job.sql b/script/sql/snail_job.sql index ce93e11d7..c3aa7601b 100644 --- a/script/sql/snail_job.sql +++ b/script/sql/snail_job.sql @@ -68,7 +68,7 @@ CREATE TABLE `sj_notify_recipient` `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键', `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id', `recipient_name` varchar(64) NOT NULL COMMENT '接收人名称', - `notify_type` tinyint(4) NOT NULL DEFAULT 0 COMMENT '通知类型 1、钉钉 2、邮件 3、企业微信 4 飞书', + `notify_type` tinyint(4) NOT NULL DEFAULT 0 COMMENT '通知类型 1、钉钉 2、邮件 3、企业微信 4 飞书 5 webhook', `notify_attribute` varchar(512) NOT NULL COMMENT '配置属性', `description` varchar(256) NOT NULL DEFAULT '' COMMENT '描述', `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', @@ -222,15 +222,13 @@ CREATE TABLE `sj_server_node` CREATE TABLE `sj_distributed_lock` ( - `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键', `name` varchar(64) NOT NULL COMMENT '锁名称', `lock_until` timestamp(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON UPDATE CURRENT_TIMESTAMP(3) COMMENT '锁定时长', `locked_at` timestamp(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '锁定时间', `locked_by` varchar(255) NOT NULL COMMENT '锁定者', `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '修改时间', - PRIMARY KEY (`id`), - UNIQUE KEY `uk_name` (`name`) + PRIMARY KEY (`name`) ) ENGINE = InnoDB AUTO_INCREMENT = 0 DEFAULT CHARSET = utf8mb4 COMMENT ='锁定表'; @@ -345,12 +343,16 @@ CREATE TABLE `sj_job_task` `job_id` bigint(20) NOT NULL COMMENT '任务信息id', `task_batch_id` bigint(20) NOT NULL COMMENT '调度任务id', `parent_id` bigint(20) NOT NULL DEFAULT 0 COMMENT '父执行器id', - `task_status` tinyint(4) NOT NULL DEFAULT 0 COMMENT '执行的状态 0、失败 1、成功', + `task_status` tinyint NOT NULL DEFAULT 0 COMMENT '执行的状态 0、失败 1、成功', `retry_count` int(11) NOT NULL DEFAULT 0 COMMENT '重试次数', + `mr_stage` tinyint DEFAULT NULL COMMENT '动态分片所处阶段 1:map 2:reduce 3:mergeReduce', + `leaf` tinyint NOT NULL DEFAULT '1' COMMENT '叶子节点', + `task_name` varchar(255) NOT NULL DEFAULT '' COMMENT '任务名称', `client_info` varchar(128) DEFAULT NULL COMMENT '客户端地址 clientId#ip:port', + `wf_context` text DEFAULT NULL COMMENT '工作流全局上下文', `result_message` text NOT NULL COMMENT '执行结果', `args_str` text DEFAULT NULL COMMENT '执行方法参数', - `args_type` tinyint(4) NOT NULL DEFAULT 1 COMMENT '参数类型 ', + `args_type` tinyint NOT NULL DEFAULT 1 COMMENT '参数类型 ', `ext_attrs` varchar(256) NULL DEFAULT '' COMMENT '扩展字段', `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间', @@ -447,6 +449,7 @@ CREATE TABLE `sj_workflow` `executor_timeout` int(11) NOT NULL DEFAULT 0 COMMENT '任务执行超时时间,单位秒', `description` varchar(256) NOT NULL DEFAULT '' COMMENT '描述', `flow_info` text DEFAULT NULL COMMENT '流程信息', + `wf_context` text DEFAULT NULL COMMENT '上下文', `bucket_index` int(11) NOT NULL DEFAULT 0 COMMENT 'bucket', `version` int(11) NOT NULL COMMENT '版本号', `ext_attrs` varchar(256) NULL DEFAULT '' COMMENT '扩展字段', @@ -495,8 +498,10 @@ CREATE TABLE `sj_workflow_task_batch` `task_batch_status` tinyint(4) NOT NULL DEFAULT 0 COMMENT '任务批次状态 0、失败 1、成功', `operation_reason` tinyint(4) NOT NULL DEFAULT 0 COMMENT '操作原因', `flow_info` text DEFAULT NULL COMMENT '流程信息', + `wf_context` text DEFAULT NULL COMMENT '全局上下文', `execution_at` bigint(13) NOT NULL DEFAULT 0 COMMENT '任务执行时间', `ext_attrs` varchar(256) NULL DEFAULT '' COMMENT '扩展字段', + `version` int(11) NOT NULL DEFAULT 1 COMMENT '版本号', `deleted` tinyint(4) NOT NULL DEFAULT 0 COMMENT '逻辑删除 1、删除', `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间', diff --git a/script/sql/sqlserver/snail_job_sqlserver.sql b/script/sql/sqlserver/snail_job_sqlserver.sql index d6fa1ae7c..249842b98 100644 --- a/script/sql/sqlserver/snail_job_sqlserver.sql +++ b/script/sql/sqlserver/snail_job_sqlserver.sql @@ -2,7 +2,7 @@ SnailJob Database Transfer Tool Source Server Type : MySQL Target Server Type : Microsoft SQL Server - Date: 2024-05-13 23:03:34 + Date: 2024-07-06 12:55:47 */ @@ -370,7 +370,7 @@ EXEC sp_addextendedproperty GO EXEC sp_addextendedproperty - 'MS_Description', N'通知类型 1、钉钉 2、邮件 3、企业微信 4 飞书', + 'MS_Description', N'通知类型 1、钉钉 2、邮件 3、企业微信 4 飞书 5 webhook', 'SCHEMA', N'dbo', 'TABLE', N'sj_notify_recipient', 'COLUMN', N'notify_type' @@ -1142,8 +1142,7 @@ GO -- sj_distributed_lock CREATE TABLE sj_distributed_lock ( - id bigint NOT NULL PRIMARY KEY IDENTITY, - name nvarchar(64) NOT NULL, + name nvarchar(64) NOT NULL PRIMARY KEY, lock_until datetime2 NOT NULL DEFAULT CURRENT_TIMESTAMP, locked_at datetime2 NOT NULL DEFAULT CURRENT_TIMESTAMP, locked_by nvarchar(255) NOT NULL, @@ -1152,13 +1151,6 @@ CREATE TABLE sj_distributed_lock ) GO -EXEC sp_addextendedproperty - 'MS_Description', N'主键', - 'SCHEMA', N'dbo', - 'TABLE', N'sj_distributed_lock', - 'COLUMN', N'id' -GO - EXEC sp_addextendedproperty 'MS_Description', N'锁名称', 'SCHEMA', N'dbo', @@ -1745,7 +1737,11 @@ CREATE TABLE sj_job_task parent_id bigint NOT NULL DEFAULT 0, task_status tinyint NOT NULL DEFAULT 0, retry_count int NOT NULL DEFAULT 0, + mr_stage tinyint NULL DEFAULT NULL, + leaf tinyint NOT NULL DEFAULT '1', + task_name nvarchar(255) NOT NULL DEFAULT '', client_info nvarchar(128) NULL DEFAULT NULL, + wf_context nvarchar(max) NULL DEFAULT NULL, result_message nvarchar(max) NOT NULL, args_str nvarchar(max) NULL DEFAULT NULL, args_type tinyint NOT NULL DEFAULT 1, @@ -1818,6 +1814,27 @@ EXEC sp_addextendedproperty 'COLUMN', N'retry_count' GO +EXEC sp_addextendedproperty + 'MS_Description', N'动态分片所处阶段 1:map 2:reduce 3:mergeReduce', + 'SCHEMA', N'dbo', + 'TABLE', N'sj_job_task', + 'COLUMN', N'mr_stage' +GO + +EXEC sp_addextendedproperty + 'MS_Description', N'叶子节点', + 'SCHEMA', N'dbo', + 'TABLE', N'sj_job_task', + 'COLUMN', N'leaf' +GO + +EXEC sp_addextendedproperty + 'MS_Description', N'任务名称', + 'SCHEMA', N'dbo', + 'TABLE', N'sj_job_task', + 'COLUMN', N'task_name' +GO + EXEC sp_addextendedproperty 'MS_Description', N'客户端地址 clientId#ip:port', 'SCHEMA', N'dbo', @@ -1825,6 +1842,13 @@ EXEC sp_addextendedproperty 'COLUMN', N'client_info' GO +EXEC sp_addextendedproperty + 'MS_Description', N'工作流全局上下文', + 'SCHEMA', N'dbo', + 'TABLE', N'sj_job_task', + 'COLUMN', N'wf_context' +GO + EXEC sp_addextendedproperty 'MS_Description', N'执行结果', 'SCHEMA', N'dbo', @@ -2281,6 +2305,7 @@ CREATE TABLE sj_workflow executor_timeout int NOT NULL DEFAULT 0, description nvarchar(256) NOT NULL DEFAULT '', flow_info nvarchar(max) NULL DEFAULT NULL, + wf_context nvarchar(max) NULL DEFAULT NULL, bucket_index int NOT NULL DEFAULT 0, version int NOT NULL, ext_attrs nvarchar(256) NULL DEFAULT '', @@ -2379,6 +2404,13 @@ EXEC sp_addextendedproperty 'COLUMN', N'flow_info' GO +EXEC sp_addextendedproperty + 'MS_Description', N'上下文', + 'SCHEMA', N'dbo', + 'TABLE', N'sj_workflow', + 'COLUMN', N'wf_context' +GO + EXEC sp_addextendedproperty 'MS_Description', N'bucket', 'SCHEMA', N'dbo', @@ -2590,8 +2622,10 @@ CREATE TABLE sj_workflow_task_batch task_batch_status tinyint NOT NULL DEFAULT 0, operation_reason tinyint NOT NULL DEFAULT 0, flow_info nvarchar(max) NULL DEFAULT NULL, + wf_context nvarchar(max) NULL DEFAULT NULL, execution_at bigint NOT NULL DEFAULT 0, ext_attrs nvarchar(256) NULL DEFAULT '', + version int NOT NULL DEFAULT 1, deleted tinyint NOT NULL DEFAULT 0, create_dt datetime2 NOT NULL DEFAULT CURRENT_TIMESTAMP, update_dt datetime2 NOT NULL DEFAULT CURRENT_TIMESTAMP @@ -2654,6 +2688,13 @@ EXEC sp_addextendedproperty 'COLUMN', N'flow_info' GO +EXEC sp_addextendedproperty + 'MS_Description', N'全局上下文', + 'SCHEMA', N'dbo', + 'TABLE', N'sj_workflow_task_batch', + 'COLUMN', N'wf_context' +GO + EXEC sp_addextendedproperty 'MS_Description', N'任务执行时间', 'SCHEMA', N'dbo', @@ -2668,6 +2709,13 @@ EXEC sp_addextendedproperty 'COLUMN', N'ext_attrs' GO +EXEC sp_addextendedproperty + 'MS_Description', N'版本号', + 'SCHEMA', N'dbo', + 'TABLE', N'sj_workflow_task_batch', + 'COLUMN', N'version' +GO + EXEC sp_addextendedproperty 'MS_Description', N'逻辑删除 1、删除', 'SCHEMA', N'dbo', -- Gitee From 58b6c4668ff46f71ccc5f8accf3afe8f4e47c479 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Tue, 16 Jul 2024 09:42:38 +0800 Subject: [PATCH 039/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20oracle=20?= =?UTF-8?q?snailjob=20=E5=85=BC=E5=AE=B9=E4=BD=8E=E7=89=88=E6=9C=ACoracle?= =?UTF-8?q?=E7=B4=A2=E5=BC=95=E5=90=8D=E7=A7=B0=E9=95=BF=E5=BA=A6=E9=99=90?= =?UTF-8?q?=E5=88=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- script/sql/oracle/snail_job_oracle.sql | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/script/sql/oracle/snail_job_oracle.sql b/script/sql/oracle/snail_job_oracle.sql index ce59b47d5..d2e17c1f0 100644 --- a/script/sql/oracle/snail_job_oracle.sql +++ b/script/sql/oracle/snail_job_oracle.sql @@ -296,8 +296,8 @@ CREATE TABLE sj_retry_task_log_message ALTER TABLE sj_retry_task_log_message ADD CONSTRAINT pk_sj_retry_task_log_message PRIMARY KEY (id); -CREATE INDEX idx_sj_retry_task_log_message_01 ON sj_retry_task_log_message (namespace_id, group_name, unique_id); -CREATE INDEX idx_sj_retry_task_log_message_02 ON sj_retry_task_log_message (create_dt); +CREATE INDEX idx_sj_rt_log_message_01 ON sj_retry_task_log_message (namespace_id, group_name, unique_id); +CREATE INDEX idx_sj_rt_log_message_02 ON sj_retry_task_log_message (create_dt); COMMENT ON COLUMN sj_retry_task_log_message.id IS '主键'; COMMENT ON COLUMN sj_retry_task_log_message.namespace_id IS '命名空间id'; @@ -447,7 +447,7 @@ CREATE TABLE sj_system_user_permission ALTER TABLE sj_system_user_permission ADD CONSTRAINT pk_sj_system_user_permission PRIMARY KEY (id); -CREATE UNIQUE INDEX uk_sj_system_user_permission_01 ON sj_system_user_permission (namespace_id, group_name, system_user_id); +CREATE UNIQUE INDEX uk_sj_su_permission_01 ON sj_system_user_permission (namespace_id, group_name, system_user_id); COMMENT ON COLUMN sj_system_user_permission.id IS '主键'; COMMENT ON COLUMN sj_system_user_permission.group_name IS '组名称'; -- Gitee From 54f58257f95beaca7d230a73cd5ec5df02225522 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Tue, 16 Jul 2024 11:04:48 +0800 Subject: [PATCH 040/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E6=B3=A8?= =?UTF-8?q?=E9=87=8A=E6=8E=89=E5=85=B6=E4=BB=96=E6=95=B0=E6=8D=AE=E5=BA=93?= =?UTF-8?q?=20jdbc=20=E4=BE=9D=E8=B5=96=20=E7=94=B1=E7=94=A8=E6=88=B7?= =?UTF-8?q?=E6=89=8B=E5=8A=A8=E6=B7=BB=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ruoyi-admin/pom.xml | 37 ++++++++++++++++++++++--------------- 1 file changed, 22 insertions(+), 15 deletions(-) diff --git a/ruoyi-admin/pom.xml b/ruoyi-admin/pom.xml index 610e9d706..9e9780464 100644 --- a/ruoyi-admin/pom.xml +++ b/ruoyi-admin/pom.xml @@ -22,21 +22,28 @@ com.mysql mysql-connector-j - - - com.oracle.database.jdbc - ojdbc8 - - - - org.postgresql - postgresql - - - - com.microsoft.sqlserver - mssql-jdbc - + + + + + + + + + + + + + + + + + + + + + + org.dromara -- Gitee From 34690e3e65ab34c9950549aefe4c5efa8c8dfc43 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 19 Jul 2024 10:08:28 +0800 Subject: [PATCH 041/540] update springboot 3.2.6 => 3.2.8 update springdoc 2.5.0 => 2.6.0 update hutool 5.8.27 => 5.8.29 update redisson 3.31.0 => 3.33.0 update flowable 7.0.0 => 7.0.1 --- pom.xml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/pom.xml b/pom.xml index 74b0b9d6d..58ee2476a 100644 --- a/pom.xml +++ b/pom.xml @@ -14,12 +14,12 @@ 5.2.1 - 3.2.6 + 3.2.8 UTF-8 UTF-8 17 3.5.16 - 2.5.0 + 2.6.0 0.15.0 5.2.3 3.3.4 @@ -27,10 +27,10 @@ 1.38.0 3.5.7 3.9.1 - 5.8.27 + 5.8.29 4.10.0 3.2.3 - 3.31.0 + 3.33.0 2.2.7 4.3.1 2.14.4 @@ -51,7 +51,7 @@ 1.2.83 - 7.0.0 + 7.0.1 3.2.2 -- Gitee From a2a2fa23117035c45c1792584f6a45ade4574dc4 Mon Sep 17 00:00:00 2001 From: AprilWind <2100166581@qq.com> Date: Fri, 19 Jul 2024 15:29:38 +0800 Subject: [PATCH 042/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=E6=9F=A5?= =?UTF-8?q?=E8=AF=A2=E6=95=B0=E6=8D=AE=E5=BA=93=E5=88=97=E8=A1=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 32 +++++++++++ ruoyi-modules/ruoyi-generator/pom.xml | 26 +++++++++ .../service/GenTableServiceImpl.java | 55 ++++++++++++++++--- 3 files changed, 105 insertions(+), 8 deletions(-) diff --git a/pom.xml b/pom.xml index 58ee2476a..258837500 100644 --- a/pom.xml +++ b/pom.xml @@ -50,6 +50,8 @@ 3.2.1 1.2.83 + + 8.7.2-jdk17-20240717 7.0.1 @@ -339,6 +341,36 @@ ${fastjson.version} + + org.anyline + anyline-environment-spring-data-jdbc + ${anyline.version} + + + + org.anyline + anyline-data-jdbc-mysql + ${anyline.version} + + + + org.anyline + anyline-data-jdbc-oracle + ${anyline.version} + + + + org.anyline + anyline-data-jdbc-postgresql + ${anyline.version} + + + + org.anyline + anyline-data-jdbc-mssql + ${anyline.version} + + org.dromara ruoyi-system diff --git a/ruoyi-modules/ruoyi-generator/pom.xml b/ruoyi-modules/ruoyi-generator/pom.xml index de34f692a..a92ff2341 100644 --- a/ruoyi-modules/ruoyi-generator/pom.xml +++ b/ruoyi-modules/ruoyi-generator/pom.xml @@ -47,6 +47,32 @@ org.apache.velocity velocity-engine-core + + + org.anyline + anyline-environment-spring-data-jdbc + + + + org.anyline + anyline-data-jdbc-mysql + + + + org.anyline + anyline-data-jdbc-oracle + + + + org.anyline + anyline-data-jdbc-postgresql + + + + org.anyline + anyline-data-jdbc-mssql + + diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java index 02a9fa77d..7e508f954 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java +++ b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java @@ -9,10 +9,12 @@ import com.baomidou.dynamic.datasource.annotation.DSTransactional; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.incrementer.IdentifierGenerator; +import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; +import org.anyline.proxy.ServiceProxy; import org.apache.velocity.Template; import org.apache.velocity.VelocityContext; import org.apache.velocity.app.Velocity; @@ -41,11 +43,7 @@ import java.io.File; import java.io.IOException; import java.io.StringWriter; import java.nio.charset.StandardCharsets; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.LinkedHashMap; -import java.util.List; -import java.util.Map; +import java.util.*; import java.util.zip.ZipEntry; import java.util.zip.ZipOutputStream; @@ -99,7 +97,7 @@ public class GenTableServiceImpl implements IGenTableService { Map params = genTable.getParams(); QueryWrapper wrapper = Wrappers.query(); wrapper - .eq(StringUtils.isNotEmpty(genTable.getDataName()),"data_name", genTable.getDataName()) + .eq(StringUtils.isNotEmpty(genTable.getDataName()), "data_name", genTable.getDataName()) .like(StringUtils.isNotBlank(genTable.getTableName()), "lower(table_name)", StringUtils.lowerCase(genTable.getTableName())) .like(StringUtils.isNotBlank(genTable.getTableComment()), "lower(table_comment)", StringUtils.lowerCase(genTable.getTableComment())) .between(params.get("beginTime") != null && params.get("endTime") != null, @@ -107,11 +105,52 @@ public class GenTableServiceImpl implements IGenTableService { return wrapper; } + /** + * 查询数据库列表 + * + * @param genTable 包含查询条件的GenTable对象 + * @param pageQuery 包含分页信息的PageQuery对象 + * @return 包含分页结果的TableDataInfo对象 + */ @DS("#genTable.dataName") @Override public TableDataInfo selectPageDbTableList(GenTable genTable, PageQuery pageQuery) { - genTable.getParams().put("genTableNames",baseMapper.selectTableNameList(genTable.getDataName())); - Page page = baseMapper.selectPageDbTableList(pageQuery.build(), genTable); + // 获取查询条件 + String tableName = genTable.getTableName(); + String tableComment = genTable.getTableComment(); + // 获取分页参数 + Integer pageNum = pageQuery.getPageNum(); + Integer pageSize = pageQuery.getPageSize(); + + // 过滤并转换表格数据 + List tables = ServiceProxy.metadata().tables().values().stream() + .filter(x -> { + boolean nameMatches = true; + boolean commentMatches = true; + // 进行表名称的模糊查询 + if (StringUtils.isNotBlank(tableName)) { + nameMatches = StringUtils.containsIgnoreCase(x.getName(), tableName); + } + // 进行表描述的模糊查询 + if (StringUtils.isNotBlank(tableComment)) { + commentMatches = StringUtils.containsIgnoreCase(x.getComment(), tableComment); + } + // 同时匹配名称和描述 + return nameMatches && commentMatches; + }) + .map(x -> { + GenTable gen = new GenTable(); + gen.setTableName(x.getName()); + gen.setTableComment(x.getComment()); + gen.setCreateTime(x.getCreateTime()); + gen.setUpdateTime(x.getUpdateTime()); + return gen; + }).toList(); + + // 创建分页对象,并设置总记录数 + IPage page = new Page<>(pageNum, pageSize, tables.size()); + // 使用CollUtil进行分页,并设置分页记录 + page.setRecords(CollUtil.page(pageNum - 1, pageSize, tables)); return TableDataInfo.build(page); } -- Gitee From b6b0f9c47d43e41792db7ef0c3405fd15ac901bb Mon Sep 17 00:00:00 2001 From: AprilWind <2100166581@qq.com> Date: Fri, 19 Jul 2024 15:54:37 +0800 Subject: [PATCH 043/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=E4=BB=A3?= =?UTF-8?q?=E7=A0=81=E7=94=9F=E6=88=90=E8=A1=A8=E5=90=8D=E6=9F=A5=E8=AF=A2?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=E5=BA=93?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ruoyi-modules/ruoyi-generator/pom.xml | 24 +- .../generator/domain/GenTableColumn.java | 1 - .../generator/mapper/GenTableMapper.java | 16 -- .../service/GenTableServiceImpl.java | 15 +- .../mapper/generator/GenTableMapper.xml | 212 ------------------ 5 files changed, 26 insertions(+), 242 deletions(-) diff --git a/ruoyi-modules/ruoyi-generator/pom.xml b/ruoyi-modules/ruoyi-generator/pom.xml index a92ff2341..17099d4a0 100644 --- a/ruoyi-modules/ruoyi-generator/pom.xml +++ b/ruoyi-modules/ruoyi-generator/pom.xml @@ -58,20 +58,20 @@ anyline-data-jdbc-mysql - - org.anyline - anyline-data-jdbc-oracle - + + + + - - org.anyline - anyline-data-jdbc-postgresql - + + + + - - org.anyline - anyline-data-jdbc-mssql - + + + + diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/domain/GenTableColumn.java b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/domain/GenTableColumn.java index ebdb9930c..e1560b421 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/domain/GenTableColumn.java +++ b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/domain/GenTableColumn.java @@ -17,7 +17,6 @@ import jakarta.validation.constraints.NotBlank; * * @author Lion Li */ - @Data @EqualsAndHashCode(callSuper = true) @TableName("gen_table_column") diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/mapper/GenTableMapper.java b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/mapper/GenTableMapper.java index c2ff7b69e..63f4c1512 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/mapper/GenTableMapper.java +++ b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/mapper/GenTableMapper.java @@ -17,22 +17,6 @@ import java.util.List; @InterceptorIgnore(dataPermission = "true", tenantLine = "true") public interface GenTableMapper extends BaseMapperPlus { - /** - * 查询据库列表 - * - * @param genTable 查询条件 - * @return 数据库表集合 - */ - Page selectPageDbTableList(@Param("page") Page page, @Param("genTable") GenTable genTable); - - /** - * 查询据库列表 - * - * @param tableNames 表名称组 - * @return 数据库表集合 - */ - List selectDbTableListByNames(String[] tableNames); - /** * 查询所有表信息 * diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java index 7e508f954..431092cda 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java +++ b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java @@ -14,6 +14,7 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; +import org.anyline.metadata.Table; import org.anyline.proxy.ServiceProxy; import org.apache.velocity.Template; import org.apache.velocity.VelocityContext; @@ -164,7 +165,19 @@ public class GenTableServiceImpl implements IGenTableService { @DS("#dataName") @Override public List selectDbTableListByNames(String[] tableNames, String dataName) { - return baseMapper.selectDbTableListByNames(tableNames); + Set tableNameSet = new HashSet<>(List.of(tableNames)); + List tableList = ServiceProxy.metadata().tables().values().stream() + .filter(x -> tableNameSet.contains(x.getName())).toList(); + + return tableList.stream().map(x -> { + GenTable gen = new GenTable(); + gen.setDataName(dataName); + gen.setTableName(x.getName()); + gen.setTableComment(x.getComment()); + gen.setCreateTime(x.getCreateTime()); + gen.setUpdateTime(x.getUpdateTime()); + return gen; + }).toList(); } /** diff --git a/ruoyi-modules/ruoyi-generator/src/main/resources/mapper/generator/GenTableMapper.xml b/ruoyi-modules/ruoyi-generator/src/main/resources/mapper/generator/GenTableMapper.xml index 901bbf0d1..8b1268457 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/resources/mapper/generator/GenTableMapper.xml +++ b/ruoyi-modules/ruoyi-generator/src/main/resources/mapper/generator/GenTableMapper.xml @@ -14,218 +14,6 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - - - - - - - - select column_name, - (case when (is_nullable = 'no' column_key != 'PRI') then '1' else '0' end) as is_required, - (case when column_key = 'PRI' then '1' else '0' end) as is_pk, - ordinal_position as sort, - column_comment, - (case when extra = 'auto_increment' then '1' else '0' end) as is_increment, - column_type - from information_schema.columns where table_schema = (select database()) and table_name = (#{tableName}) - order by ordinal_position - - - select lower(temp.column_name) as column_name, - (case when (temp.nullable = 'N' and temp.constraint_type != 'P') then '1' else '0' end) as is_required, - (case when temp.constraint_type = 'P' then '1' else '0' end) as is_pk, - temp.column_id as sort, - temp.comments as column_comment, - (case when temp.constraint_type = 'P' then '1' else '0' end) as is_increment, - lower(temp.data_type) as column_type - from ( - select col.column_id, col.column_name,col.nullable, col.data_type, colc.comments, uc.constraint_type, row_number() - over (partition by col.column_name order by uc.constraint_type desc) as row_flg - from user_tab_columns col - left join user_col_comments colc on colc.table_name = col.table_name and colc.column_name = col.column_name - left join user_cons_columns ucc on ucc.table_name = col.table_name and ucc.column_name = col.column_name - left join user_constraints uc on uc.constraint_name = ucc.constraint_name - where col.table_name = upper(#{tableName}) - ) temp - WHERE temp.row_flg = 1 - ORDER BY temp.column_id - - - SELECT column_name, is_required, is_pk, sort, column_comment, is_increment, column_type - FROM ( - SELECT c.relname AS table_name, - a.attname AS column_name, - d.description AS column_comment, - CASE WHEN a.attnotnull AND con.conname IS NULL THEN 1 ELSE 0 - END AS is_required, - CASE WHEN con.conname IS NOT NULL THEN 1 ELSE 0 - END AS is_pk, - a.attnum AS sort, - CASE WHEN "position"(pg_get_expr(ad.adbin, ad.adrelid), - ((c.relname::text || '_'::text) || a.attname::text) || '_seq'::text) > 0 THEN 1 ELSE 0 - END AS is_increment, - btrim( - CASE WHEN t.typelem ]]> 0::oid AND t.typlen = '-1'::integer THEN 'ARRAY'::text ELSE - CASE WHEN t.typtype = 'd'::"char" THEN format_type(t.typbasetype, NULL::integer) - ELSE format_type(a.atttypid, NULL::integer) END - END, '"'::text - ) AS column_type - FROM pg_attribute a - JOIN (pg_class c JOIN pg_namespace n ON c.relnamespace = n.oid) ON a.attrelid = c.oid - LEFT JOIN pg_description d ON d.objoid = c.oid AND a.attnum = d.objsubid - LEFT JOIN pg_constraint con ON con.conrelid = c.oid AND (a.attnum = ANY (con.conkey)) - LEFT JOIN pg_attrdef ad ON a.attrelid = ad.adrelid AND a.attnum = ad.adnum - LEFT JOIN pg_type t ON a.atttypid = t.oid - WHERE (c.relkind = ANY (ARRAY ['r'::"char", 'p'::"char"])) - AND a.attnum > 0 - AND n.nspname = 'public'::name - ORDER BY c.relname, a.attnum - ) temp - WHERE table_name = (#{tableName}) - AND column_type ]]> '-' - - - SELECT - cast(A.NAME as nvarchar) as column_name, - cast(B.NAME as nvarchar) + (case when B.NAME = 'numeric' then '(' + cast(A.prec as nvarchar) + ',' + cast(A.scale as nvarchar) + ')' else '' end) as column_type, - cast(G.[VALUE] as nvarchar) as column_comment, - (SELECT 1 FROM INFORMATION_SCHEMA.KEY_COLUMN_USAGE Z WHERE TABLE_NAME = D.NAME and A.NAME = Z.column_name ) as is_pk, - colorder as sort - FROM SYSCOLUMNS A - LEFT JOIN SYSTYPES B ON A.XTYPE = B.XUSERTYPE - INNER JOIN SYSOBJECTS D ON A.ID = D.ID AND D.XTYPE='U' AND D.NAME != 'DTPROPERTIES' - LEFT JOIN SYS.EXTENDED_PROPERTIES G ON A.ID = G.MAJOR_ID AND A.COLID = G.MINOR_ID - LEFT JOIN SYS.EXTENDED_PROPERTIES F ON D.ID = F.MAJOR_ID AND F.MINOR_ID = 0 - WHERE D.NAME = #{tableName} - ORDER BY A.COLORDER - - - -- Gitee From 82fdb37c6b54fe591b04fea23b46a997921015fc Mon Sep 17 00:00:00 2001 From: AprilWind <2100166581@qq.com> Date: Fri, 19 Jul 2024 16:50:40 +0800 Subject: [PATCH 046/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=E5=88=A4?= =?UTF-8?q?=E6=96=AD=E8=A1=A8=E5=90=8D=E4=B8=BA=E7=A9=BA=E9=94=99=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../generator/service/GenTableServiceImpl.java | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java index 3fcd33f4d..6ee23bd64 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java +++ b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java @@ -3,6 +3,7 @@ package org.dromara.generator.service; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.io.IoUtil; import cn.hutool.core.lang.Dict; +import cn.hutool.core.util.ArrayUtil; import cn.hutool.core.util.ObjectUtil; import com.baomidou.dynamic.datasource.annotation.DS; import com.baomidou.dynamic.datasource.annotation.DSTransactional; @@ -124,8 +125,12 @@ public class GenTableServiceImpl implements IGenTableService { Integer pageNum = pageQuery.getPageNum(); Integer pageSize = pageQuery.getPageSize(); + LinkedHashMap tablesMap = ServiceProxy.metadata().tables(); + if (CollUtil.isEmpty(tablesMap)) { + return TableDataInfo.build(); + } // 过滤并转换表格数据 - List tables = ServiceProxy.metadata().tables().values().stream() + List tables = tablesMap.values().stream() .filter(x -> { boolean nameMatches = true; boolean commentMatches = true; @@ -167,9 +172,18 @@ public class GenTableServiceImpl implements IGenTableService { @Override public List selectDbTableListByNames(String[] tableNames, String dataName) { Set tableNameSet = new HashSet<>(List.of(tableNames)); - List
tableList = ServiceProxy.metadata().tables().values().stream() + LinkedHashMap tablesMap = ServiceProxy.metadata().tables(); + + if (CollUtil.isEmpty(tablesMap)) { + return new ArrayList<>(); + } + + List
tableList = tablesMap.values().stream() .filter(x -> tableNameSet.contains(x.getName())).toList(); + if (ArrayUtil.isEmpty(tableList)) { + return new ArrayList<>(); + } return tableList.stream().map(x -> { GenTable gen = new GenTable(); gen.setDataName(dataName); -- Gitee From 8859d915b0e9a9fdaf3df37e7567403e6e2fcab0 Mon Sep 17 00:00:00 2001 From: yanzy <1319542051@qq.com> Date: Fri, 19 Jul 2024 17:39:19 +0800 Subject: [PATCH 047/540] =?UTF-8?q?update=20workflowUtils=E6=9F=A5?= =?UTF-8?q?=E8=AF=A2=E7=94=A8=E6=88=B7=E4=BF=A1=E6=81=AF=E5=8F=91=E9=80=81?= =?UTF-8?q?=E6=B6=88=E6=81=AF=E6=9C=AA=E6=9F=A5=E8=AF=A2=E9=82=AE=E4=BB=B6?= =?UTF-8?q?=E5=92=8C=E6=89=8B=E6=9C=BA=E5=8F=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/dromara/system/service/impl/SysUserServiceImpl.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java index 3cb415937..c38d0d055 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java @@ -640,7 +640,7 @@ public class SysUserServiceImpl implements ISysUserService, UserService { return List.of(); } List list = baseMapper.selectVoList(new LambdaQueryWrapper() - .select(SysUser::getUserId, SysUser::getUserName, SysUser::getNickName) + .select(SysUser::getUserId, SysUser::getUserName, SysUser::getNickName, SysUser::getEmail, SysUser::getPhonenumber) .eq(SysUser::getStatus, UserConstants.USER_NORMAL) .in(CollUtil.isNotEmpty(userIds), SysUser::getUserId, userIds)); return BeanUtil.copyToList(list, UserDTO.class); -- Gitee From bfb92fe66712a41d1ac52cee681302f8c35d4f56 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 19 Jul 2024 17:54:44 +0800 Subject: [PATCH 048/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E4=BE=9D?= =?UTF-8?q?=E8=B5=96=E9=85=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .run/ruoyi-snailjob-server.run.xml | 4 +-- pom.xml | 30 ------------------- ruoyi-modules/ruoyi-generator/pom.xml | 6 ++++ .../service/GenTableServiceImpl.java | 4 +-- 4 files changed, 10 insertions(+), 34 deletions(-) diff --git a/.run/ruoyi-snailjob-server.run.xml b/.run/ruoyi-snailjob-server.run.xml index 914809dbf..9198acc55 100644 --- a/.run/ruoyi-snailjob-server.run.xml +++ b/.run/ruoyi-snailjob-server.run.xml @@ -1,5 +1,5 @@ - + - + \ No newline at end of file diff --git a/pom.xml b/pom.xml index 5635931ec..059fade3c 100644 --- a/pom.xml +++ b/pom.xml @@ -341,36 +341,6 @@ ${fastjson.version} - - org.anyline - anyline-environment-spring-data-jdbc - ${anyline.version} - - - - org.anyline - anyline-data-jdbc-mysql - ${anyline.version} - - - - org.anyline - anyline-data-jdbc-oracle - ${anyline.version} - - - - org.anyline - anyline-data-jdbc-postgresql - ${anyline.version} - - - - org.anyline - anyline-data-jdbc-mssql - ${anyline.version} - - org.dromara ruoyi-system diff --git a/ruoyi-modules/ruoyi-generator/pom.xml b/ruoyi-modules/ruoyi-generator/pom.xml index 17099d4a0..b7fd94f59 100644 --- a/ruoyi-modules/ruoyi-generator/pom.xml +++ b/ruoyi-modules/ruoyi-generator/pom.xml @@ -51,26 +51,32 @@ org.anyline anyline-environment-spring-data-jdbc + ${anyline.version} org.anyline anyline-data-jdbc-mysql + ${anyline.version} + + + + diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java index 6ee23bd64..d7985f628 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java +++ b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java @@ -288,8 +288,8 @@ public class GenTableServiceImpl implements IGenTableService { tableColumn.setColumnComment(column.getComment()); tableColumn.setColumnType(column.getTypeName().toLowerCase()); tableColumn.setSort(column.getPosition()); -// tableColumn.setIsRequired(); -// tableColumn.setIsIncrement(); + tableColumn.setIsRequired("0"); + tableColumn.setIsIncrement("0"); tableColumns.add(tableColumn); }); return tableColumns; -- Gitee From 249f1f48a63559964b7b8774bf46a304c16e70e5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 19 Jul 2024 17:55:13 +0800 Subject: [PATCH 049/540] =?UTF-8?q?reset=20=E5=9B=9E=E6=BB=9A=E9=94=99?= =?UTF-8?q?=E8=AF=AF=E6=8F=90=E4=BA=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .run/ruoyi-snailjob-server.run.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.run/ruoyi-snailjob-server.run.xml b/.run/ruoyi-snailjob-server.run.xml index 9198acc55..914809dbf 100644 --- a/.run/ruoyi-snailjob-server.run.xml +++ b/.run/ruoyi-snailjob-server.run.xml @@ -1,5 +1,5 @@ - + - \ No newline at end of file + -- Gitee From aac83bbb91a43c91008ee6636fc37ca418ec4a71 Mon Sep 17 00:00:00 2001 From: AprilWind <2100166581@qq.com> Date: Mon, 22 Jul 2024 17:06:46 +0800 Subject: [PATCH 050/540] =?UTF-8?q?update=20=E8=8E=B7=E5=8F=96=E8=A1=A8?= =?UTF-8?q?=E5=85=83=E6=95=B0=E6=8D=AE=20=E5=AD=97=E6=AE=B5=E6=98=AF?= =?UTF-8?q?=E5=90=A6=E5=BF=85=E5=A1=AB=20=E5=92=8C=20=E6=98=AF=E5=90=A6?= =?UTF-8?q?=E8=87=AA=E5=A2=9E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/dromara/generator/service/GenTableServiceImpl.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java index d7985f628..b8aff3126 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java +++ b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java @@ -288,8 +288,8 @@ public class GenTableServiceImpl implements IGenTableService { tableColumn.setColumnComment(column.getComment()); tableColumn.setColumnType(column.getTypeName().toLowerCase()); tableColumn.setSort(column.getPosition()); - tableColumn.setIsRequired("0"); - tableColumn.setIsIncrement("0"); + tableColumn.setIsRequired(column.isNullable() == 0 ? "1" : "0"); + tableColumn.setIsIncrement(column.isAutoIncrement() == -1 ? "0" : "1"); tableColumns.add(tableColumn); }); return tableColumns; -- Gitee From 05580deaa9f1d1f2c2aef2ffa850771a95a59870 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Tue, 23 Jul 2024 09:58:09 +0800 Subject: [PATCH 051/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20=E6=97=A0?= =?UTF-8?q?=E6=B3=95=E5=AF=BC=E5=85=A5=20bpmn=20=E7=B1=BB=E5=9E=8B?= =?UTF-8?q?=E6=96=87=E4=BB=B6=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../workflow/service/impl/ActProcessDefinitionServiceImpl.java | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActProcessDefinitionServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActProcessDefinitionServiceImpl.java index 6a17289a0..2680db8ef 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActProcessDefinitionServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActProcessDefinitionServiceImpl.java @@ -350,8 +350,7 @@ public class ActProcessDefinitionServiceImpl implements IActProcessDefinitionSer initWfDefConfig(); } else { String originalFilename = file.getOriginalFilename(); - String bpmnResourceSuffix = ResourceNameUtil.BPMN_RESOURCE_SUFFIXES[0]; - if (originalFilename.contains(bpmnResourceSuffix)) { + if (StringUtils.containsAny(originalFilename, ResourceNameUtil.BPMN_RESOURCE_SUFFIXES)) { // 文件名 = 流程名称-流程key String[] splitFilename = originalFilename.substring(0, originalFilename.lastIndexOf(".")).split("-"); if (splitFilename.length < 2) { -- Gitee From 84f553a911a1812a494cbac73ac0fc22d067fdb1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Tue, 23 Jul 2024 10:06:15 +0800 Subject: [PATCH 052/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20=E4=BB=A3?= =?UTF-8?q?=E7=A0=81=E7=94=9F=E6=88=90=20=E6=8A=A5=E9=94=99=E4=B8=8E?= =?UTF-8?q?=E8=AD=A6=E5=91=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../generator/service/GenTableServiceImpl.java | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java index b8aff3126..744d0ac0f 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java +++ b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java @@ -125,7 +125,7 @@ public class GenTableServiceImpl implements IGenTableService { Integer pageNum = pageQuery.getPageNum(); Integer pageSize = pageQuery.getPageSize(); - LinkedHashMap tablesMap = ServiceProxy.metadata().tables(); + LinkedHashMap> tablesMap = ServiceProxy.metadata().tables(); if (CollUtil.isEmpty(tablesMap)) { return TableDataInfo.build(); } @@ -172,13 +172,13 @@ public class GenTableServiceImpl implements IGenTableService { @Override public List selectDbTableListByNames(String[] tableNames, String dataName) { Set tableNameSet = new HashSet<>(List.of(tableNames)); - LinkedHashMap tablesMap = ServiceProxy.metadata().tables(); + LinkedHashMap> tablesMap = ServiceProxy.metadata().tables(); if (CollUtil.isEmpty(tablesMap)) { return new ArrayList<>(); } - List
tableList = tablesMap.values().stream() + List> tableList = tablesMap.values().stream() .filter(x -> tableNameSet.contains(x.getName())).toList(); if (ArrayUtil.isEmpty(tableList)) { @@ -279,7 +279,11 @@ public class GenTableServiceImpl implements IGenTableService { */ @DS("#dataName") private List selectDbTableColumnsByName(String tableName, String dataName) { - LinkedHashMap columns = ServiceProxy.service().metadata().table(tableName).getColumns(); + Table table = ServiceProxy.metadata().table(tableName); + if (Objects.isNull(table)) { + return new ArrayList<>(); + } + LinkedHashMap columns = table.getColumns(); List tableColumns = new ArrayList<>(); columns.forEach((columnName, column) -> { GenTableColumn tableColumn = new GenTableColumn(); -- Gitee From d894cae07349faf36cabaa50e7c1a68f026c4d50 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Tue, 23 Jul 2024 10:35:22 +0800 Subject: [PATCH 053/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E4=BB=A3?= =?UTF-8?q?=E7=A0=81=E7=94=9F=E6=88=90=E5=B1=8F=E8=94=BD=E6=97=A0=E7=94=A8?= =?UTF-8?q?=E8=A1=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/dromara/generator/service/GenTableServiceImpl.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java index 744d0ac0f..b2c0cbade 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java +++ b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java @@ -64,6 +64,8 @@ public class GenTableServiceImpl implements IGenTableService { private final GenTableColumnMapper genTableColumnMapper; private final IdentifierGenerator identifierGenerator; + private static final String[] TABLE_IGNORE = new String[]{"sj_", "act_", "flw_", "gen_"}; + /** * 查询业务字段列表 * @@ -131,6 +133,7 @@ public class GenTableServiceImpl implements IGenTableService { } // 过滤并转换表格数据 List tables = tablesMap.values().stream() + .filter(x -> !StringUtils.containsAnyIgnoreCase(x.getName(), TABLE_IGNORE)) .filter(x -> { boolean nameMatches = true; boolean commentMatches = true; @@ -179,6 +182,7 @@ public class GenTableServiceImpl implements IGenTableService { } List> tableList = tablesMap.values().stream() + .filter(x -> !StringUtils.containsAnyIgnoreCase(x.getName(), TABLE_IGNORE)) .filter(x -> tableNameSet.contains(x.getName())).toList(); if (ArrayUtil.isEmpty(tableList)) { -- Gitee From 0c4e9dc813420be1aecfcb1ea2276dd88f5cd70a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Tue, 23 Jul 2024 10:37:15 +0800 Subject: [PATCH 054/540] update anyline 8.7.2-20240722 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 059fade3c..9a39bb8ce 100644 --- a/pom.xml +++ b/pom.xml @@ -51,7 +51,7 @@ 1.2.83 - 8.7.2-20240717 + 8.7.2-20240722 7.0.1 -- Gitee From 0b78f9361dd8eab8b9069432d8dbb622ffa46452 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Tue, 23 Jul 2024 11:44:39 +0800 Subject: [PATCH 055/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20=E5=B7=B2?= =?UTF-8?q?=E7=BB=8F=E5=AF=BC=E5=85=A5=E7=9A=84=E8=A1=A8=20=E6=9C=AA?= =?UTF-8?q?=E8=BF=87=E6=BB=A4=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../generator/service/GenTableServiceImpl.java | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java index b2c0cbade..48ae8b279 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java +++ b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java @@ -131,9 +131,22 @@ public class GenTableServiceImpl implements IGenTableService { if (CollUtil.isEmpty(tablesMap)) { return TableDataInfo.build(); } + List tableNames = baseMapper.selectTableNameList(genTable.getDataName()); + String[] tableArrays; + if (CollUtil.isNotEmpty(tableNames)) { + tableArrays = tableNames.toArray(new String[0]); + } else { + tableArrays = new String[0]; + } // 过滤并转换表格数据 List tables = tablesMap.values().stream() .filter(x -> !StringUtils.containsAnyIgnoreCase(x.getName(), TABLE_IGNORE)) + .filter(x -> { + if (CollUtil.isEmpty(tableNames)) { + return true; + } + return !StringUtils.containsAnyIgnoreCase(x.getName(), tableArrays); + }) .filter(x -> { boolean nameMatches = true; boolean commentMatches = true; -- Gitee From dcfab4e011939c1d39342a2d63b97c0dbb3eba76 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Tue, 23 Jul 2024 13:21:15 +0800 Subject: [PATCH 056/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E4=BB=A3?= =?UTF-8?q?=E7=A0=81=E7=94=9F=E6=88=90=20=E7=9B=B8=E5=85=B3sql?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mapper/generator/GenTableMapper.xml | 18 ++++++++---------- 1 file changed, 8 insertions(+), 10 deletions(-) diff --git a/ruoyi-modules/ruoyi-generator/src/main/resources/mapper/generator/GenTableMapper.xml b/ruoyi-modules/ruoyi-generator/src/main/resources/mapper/generator/GenTableMapper.xml index 8b1268457..78aa85209 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/resources/mapper/generator/GenTableMapper.xml +++ b/ruoyi-modules/ruoyi-generator/src/main/resources/mapper/generator/GenTableMapper.xml @@ -14,27 +14,25 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - + where t.table_id = #{tableId} order by c.sort -- Gitee From 9e17d07a17e00c60ff2837230bf94ca7f548f35c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Tue, 23 Jul 2024 16:34:53 +0800 Subject: [PATCH 057/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E9=99=90?= =?UTF-8?q?=E6=B5=81=E6=B3=A8=E8=A7=A3=20=E5=8F=88=E5=86=99key=E5=8F=88?= =?UTF-8?q?=E4=B8=8D=E6=98=AF=E8=A1=A8=E8=BE=BE=E5=BC=8F=E7=9A=84=E6=83=85?= =?UTF-8?q?=E5=86=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dromara/common/ratelimiter/aspectj/RateLimiterAspect.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ruoyi-common/ruoyi-common-ratelimiter/src/main/java/org/dromara/common/ratelimiter/aspectj/RateLimiterAspect.java b/ruoyi-common/ruoyi-common-ratelimiter/src/main/java/org/dromara/common/ratelimiter/aspectj/RateLimiterAspect.java index 02735b073..1f4904a3e 100644 --- a/ruoyi-common/ruoyi-common-ratelimiter/src/main/java/org/dromara/common/ratelimiter/aspectj/RateLimiterAspect.java +++ b/ruoyi-common/ruoyi-common-ratelimiter/src/main/java/org/dromara/common/ratelimiter/aspectj/RateLimiterAspect.java @@ -80,11 +80,11 @@ public class RateLimiterAspect { private String getCombineKey(RateLimiter rateLimiter, JoinPoint point) { String key = rateLimiter.key(); - if (StringUtils.isNotBlank(key)) { + // 判断 key 不为空 和 不是表达式 + if (StringUtils.isNotBlank(key) && StringUtils.containsAny(key, "#")) { MethodSignature signature = (MethodSignature) point.getSignature(); Method targetMethod = signature.getMethod(); Object[] args = point.getArgs(); - //noinspection DataFlowIssue MethodBasedEvaluationContext context = new MethodBasedEvaluationContext(null, targetMethod, args, pnd); context.setBeanResolver(new BeanFactoryResolver(SpringUtils.getBeanFactory())); -- Gitee From ae3c02d4b29c7c424638ac235e9809552f59f378 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Tue, 23 Jul 2024 17:05:20 +0800 Subject: [PATCH 058/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E4=BB=A3?= =?UTF-8?q?=E7=A0=81=E7=94=9F=E6=88=90=E5=88=86=E9=A1=B5=E5=AE=9E=E7=8E=B0?= =?UTF-8?q?=20=E9=81=BF=E5=85=8D=E6=95=B0=E6=8D=AE=E8=AF=AF=E4=BC=A0?= =?UTF-8?q?=E7=AD=89=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dromara/generator/service/GenTableServiceImpl.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java index 48ae8b279..f7d475b97 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java +++ b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java @@ -170,10 +170,10 @@ public class GenTableServiceImpl implements IGenTableService { return gen; }).toList(); - // 创建分页对象,并设置总记录数 - IPage page = new Page<>(pageNum, pageSize, tables.size()); - // 使用CollUtil进行分页,并设置分页记录 - page.setRecords(CollUtil.page(pageNum - 1, pageSize, tables)); + IPage page = pageQuery.build(); + page.setTotal(tables.size()); + // 手动分页 set数据 + page.setRecords(CollUtil.page((int) page.getCurrent() - 1, (int) page.getSize(), tables)); return TableDataInfo.build(page); } -- Gitee From 0a3d5fd5d47e90333de9ff316641e50d43e87b68 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Tue, 23 Jul 2024 17:05:46 +0800 Subject: [PATCH 059/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E4=BB=A3?= =?UTF-8?q?=E7=A0=81=E7=94=9F=E6=88=90=E5=88=86=E9=A1=B5=E5=AE=9E=E7=8E=B0?= =?UTF-8?q?=20=E9=81=BF=E5=85=8D=E6=95=B0=E6=8D=AE=E8=AF=AF=E4=BC=A0?= =?UTF-8?q?=E7=AD=89=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/dromara/generator/service/GenTableServiceImpl.java | 3 --- 1 file changed, 3 deletions(-) diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java index f7d475b97..cf9d2d0e8 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java +++ b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java @@ -123,9 +123,6 @@ public class GenTableServiceImpl implements IGenTableService { // 获取查询条件 String tableName = genTable.getTableName(); String tableComment = genTable.getTableComment(); - // 获取分页参数 - Integer pageNum = pageQuery.getPageNum(); - Integer pageSize = pageQuery.getPageSize(); LinkedHashMap> tablesMap = ServiceProxy.metadata().tables(); if (CollUtil.isEmpty(tablesMap)) { -- Gitee From 105c007f0355f0dfafa017b0c58f1858fdd5b17a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Wed, 24 Jul 2024 18:56:40 +0800 Subject: [PATCH 060/540] =?UTF-8?q?add=20=E5=A2=9E=E5=8A=A0=20springboot?= =?UTF-8?q?=20actuator=20=E8=B4=A6=E5=8F=B7=E5=AF=86=E7=A0=81=E8=AE=A4?= =?UTF-8?q?=E8=AF=81=20=E6=9D=9C=E7=BB=9D=E5=86=85=E5=A4=96=E7=BD=91?= =?UTF-8?q?=E4=BF=A1=E6=81=AF=E6=B3=84=E6=BC=8F=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/resources/application-dev.yml | 3 +++ .../src/main/resources/application-prod.yml | 3 +++ .../security/config/SecurityConfig.java | 20 +++++++++++++++++++ .../monitor/admin/config/SecurityConfig.java | 4 +--- .../src/main/resources/application.yml | 3 +++ .../src/main/resources/application-dev.yml | 3 +++ .../src/main/resources/application-prod.yml | 3 +++ 7 files changed, 36 insertions(+), 3 deletions(-) diff --git a/ruoyi-admin/src/main/resources/application-dev.yml b/ruoyi-admin/src/main/resources/application-dev.yml index ea5cafac0..5e20daee7 100644 --- a/ruoyi-admin/src/main/resources/application-dev.yml +++ b/ruoyi-admin/src/main/resources/application-dev.yml @@ -5,6 +5,9 @@ spring.boot.admin.client: url: http://localhost:9090/admin instance: service-host-type: IP + metadata: + username: ${spring.boot.admin.client.username} + userpassword: ${spring.boot.admin.client.password} username: ruoyi password: 123456 diff --git a/ruoyi-admin/src/main/resources/application-prod.yml b/ruoyi-admin/src/main/resources/application-prod.yml index 2a4bc11e9..2823bba11 100644 --- a/ruoyi-admin/src/main/resources/application-prod.yml +++ b/ruoyi-admin/src/main/resources/application-prod.yml @@ -8,6 +8,9 @@ spring.boot.admin.client: url: http://localhost:9090/admin instance: service-host-type: IP + metadata: + username: ${spring.boot.admin.client.username} + userpassword: ${spring.boot.admin.client.password} username: ruoyi password: 123456 diff --git a/ruoyi-common/ruoyi-common-security/src/main/java/org/dromara/common/security/config/SecurityConfig.java b/ruoyi-common/ruoyi-common-security/src/main/java/org/dromara/common/security/config/SecurityConfig.java index b9283e038..5fd49d133 100644 --- a/ruoyi-common/ruoyi-common-security/src/main/java/org/dromara/common/security/config/SecurityConfig.java +++ b/ruoyi-common/ruoyi-common-security/src/main/java/org/dromara/common/security/config/SecurityConfig.java @@ -1,11 +1,15 @@ package org.dromara.common.security.config; import cn.dev33.satoken.exception.NotLoginException; +import cn.dev33.satoken.filter.SaServletFilter; +import cn.dev33.satoken.httpauth.basic.SaHttpBasicUtil; import cn.dev33.satoken.interceptor.SaInterceptor; import cn.dev33.satoken.router.SaRouter; import cn.dev33.satoken.stp.StpUtil; +import cn.dev33.satoken.util.SaResult; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; +import org.dromara.common.core.constant.HttpStatus; import org.dromara.common.core.utils.ServletUtils; import org.dromara.common.core.utils.SpringUtils; import org.dromara.common.core.utils.StringUtils; @@ -14,6 +18,7 @@ import org.dromara.common.security.config.properties.SecurityProperties; import org.dromara.common.security.handler.AllUrlHandler; import org.springframework.boot.autoconfigure.AutoConfiguration; import org.springframework.boot.context.properties.EnableConfigurationProperties; +import org.springframework.context.annotation.Bean; import org.springframework.web.servlet.config.annotation.InterceptorRegistry; import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; @@ -71,4 +76,19 @@ public class SecurityConfig implements WebMvcConfigurer { .excludePathPatterns(securityProperties.getExcludes()); } + /** + * 对 actuator 健康检查接口 做账号密码鉴权 + */ + @Bean + public SaServletFilter getSaServletFilter() { + String username = SpringUtils.getProperty("spring.boot.admin.client.username"); + String password = SpringUtils.getProperty("spring.boot.admin.client.password"); + return new SaServletFilter() + .addInclude("/actuator", "/actuator/**") + .setAuth(obj -> { + SaHttpBasicUtil.check(username + ":" + password); + }) + .setError(e -> SaResult.error(e.getMessage()).setCode(HttpStatus.UNAUTHORIZED)); + } + } diff --git a/ruoyi-extend/ruoyi-monitor-admin/src/main/java/org/dromara/monitor/admin/config/SecurityConfig.java b/ruoyi-extend/ruoyi-monitor-admin/src/main/java/org/dromara/monitor/admin/config/SecurityConfig.java index 3f5dec82c..3458cc965 100644 --- a/ruoyi-extend/ruoyi-monitor-admin/src/main/java/org/dromara/monitor/admin/config/SecurityConfig.java +++ b/ruoyi-extend/ruoyi-monitor-admin/src/main/java/org/dromara/monitor/admin/config/SecurityConfig.java @@ -39,9 +39,7 @@ public class SecurityConfig { .authorizeHttpRequests((authorize) -> authorize.requestMatchers( new AntPathRequestMatcher(adminContextPath + "/assets/**"), - new AntPathRequestMatcher(adminContextPath + "/login"), - new AntPathRequestMatcher("/actuator"), - new AntPathRequestMatcher("/actuator/**") + new AntPathRequestMatcher(adminContextPath + "/login") ).permitAll() .anyRequest().authenticated()) .formLogin((formLogin) -> diff --git a/ruoyi-extend/ruoyi-monitor-admin/src/main/resources/application.yml b/ruoyi-extend/ruoyi-monitor-admin/src/main/resources/application.yml index 1b729ef1b..beee58775 100644 --- a/ruoyi-extend/ruoyi-monitor-admin/src/main/resources/application.yml +++ b/ruoyi-extend/ruoyi-monitor-admin/src/main/resources/application.yml @@ -41,5 +41,8 @@ spring.boot.admin.client: url: http://localhost:9090/admin instance: service-host-type: IP + metadata: + username: ${spring.boot.admin.client.username} + userpassword: ${spring.boot.admin.client.password} username: ruoyi password: 123456 diff --git a/ruoyi-extend/ruoyi-snailjob-server/src/main/resources/application-dev.yml b/ruoyi-extend/ruoyi-snailjob-server/src/main/resources/application-dev.yml index 3c65077a1..cbe40be1e 100644 --- a/ruoyi-extend/ruoyi-snailjob-server/src/main/resources/application-dev.yml +++ b/ruoyi-extend/ruoyi-snailjob-server/src/main/resources/application-dev.yml @@ -43,5 +43,8 @@ spring.boot.admin.client: url: http://localhost:9090/admin instance: service-host-type: IP + metadata: + username: ${spring.boot.admin.client.username} + userpassword: ${spring.boot.admin.client.password} username: ruoyi password: 123456 diff --git a/ruoyi-extend/ruoyi-snailjob-server/src/main/resources/application-prod.yml b/ruoyi-extend/ruoyi-snailjob-server/src/main/resources/application-prod.yml index 37ab8874b..3ba983c2b 100644 --- a/ruoyi-extend/ruoyi-snailjob-server/src/main/resources/application-prod.yml +++ b/ruoyi-extend/ruoyi-snailjob-server/src/main/resources/application-prod.yml @@ -43,5 +43,8 @@ spring.boot.admin.client: url: http://localhost:9090/admin instance: service-host-type: IP + metadata: + username: ${spring.boot.admin.client.username} + userpassword: ${spring.boot.admin.client.password} username: ruoyi password: 123456 -- Gitee From 52b0fa9a5482a2278b0c683dab7d130a9e7d8b87 Mon Sep 17 00:00:00 2001 From: AprilWind <2100166581@qq.com> Date: Thu, 25 Jul 2024 10:00:10 +0800 Subject: [PATCH 061/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96Monitor?= =?UTF-8?q?=E7=9B=91=E6=8E=A7=E6=9C=8D=E5=8A=A1=E9=80=9A=E7=9F=A5=E5=88=86?= =?UTF-8?q?=E7=B1=BB=EF=BC=88=E5=8F=AF=E6=89=A9=E5=B1=95=E9=82=AE=E7=AE=B1?= =?UTF-8?q?=E5=8F=91=E9=80=81=EF=BC=8C=E7=9F=AD=E4=BF=A1=E5=8F=91=E9=80=81?= =?UTF-8?q?=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../admin/notifier/CustomNotifier.java | 50 +++++++++++++++++-- 1 file changed, 47 insertions(+), 3 deletions(-) diff --git a/ruoyi-extend/ruoyi-monitor-admin/src/main/java/org/dromara/monitor/admin/notifier/CustomNotifier.java b/ruoyi-extend/ruoyi-monitor-admin/src/main/java/org/dromara/monitor/admin/notifier/CustomNotifier.java index 477a5988d..0094f72fa 100644 --- a/ruoyi-extend/ruoyi-monitor-admin/src/main/java/org/dromara/monitor/admin/notifier/CustomNotifier.java +++ b/ruoyi-extend/ruoyi-monitor-admin/src/main/java/org/dromara/monitor/admin/notifier/CustomNotifier.java @@ -9,6 +9,8 @@ import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Component; import reactor.core.publisher.Mono; +import static de.codecentric.boot.admin.server.domain.values.StatusInfo.*; + /** * 自定义事件通知处理 * @@ -28,13 +30,55 @@ public class CustomNotifier extends AbstractEventNotifier { return Mono.fromRunnable(() -> { // 实例状态改变事件 if (event instanceof InstanceStatusChangedEvent) { + // 获取实例注册名称 String registName = instance.getRegistration().getName(); + // 获取实例ID String instanceId = event.getInstance().getValue(); + // 获取实例状态 String status = ((InstanceStatusChangedEvent) event).getStatusInfo().getStatus(); - log.info("Instance Status Change: [{}],[{}],[{}]", registName, instanceId, status); - } + // 获取服务URL + String serviceUrl = instance.getRegistration().getServiceUrl(); + String statusName = null; + + // 根据实例状态执行相应的操作 + switch (status) { + // 服务上线(实例成功启动并可以正常处理请求) + case STATUS_UP: + statusName = "服务上线"; + break; + + // 服务离线(实例被手动或自动地从服务中移除) + case STATUS_OFFLINE: + statusName = "服务离线"; + break; + + // 服务受限(表示实例在某些方面受限,可能无法完全提供所有服务) + case STATUS_RESTRICTED: + statusName = "服务受限"; + break; + // 停止服务状态(表示实例已被标记为停止提供服务,可能是计划内维护或测试) + case STATUS_OUT_OF_SERVICE: + statusName = "停止服务状态"; + break; + + // 服务下线(实例因崩溃、错误或其他原因停止运行) + case STATUS_DOWN: + statusName = "服务下线"; + break; + + // 服务未知异常(监控系统无法确定实例的当前状态) + case STATUS_UNKNOWN: + statusName = "服务未知异常"; + break; + + // 默认情况(没有匹配的状态) + default: + break; + } + log.info("Instance Status Change: 状态名称【{}】, 注册名称【{}】, 实例ID【{}】, 状态【{}】, 服务URL【{}】", + statusName, registName, instanceId, status, serviceUrl); + } }); } - } -- Gitee From e74f0ca6f8af892b707f1504cfd1913461191885 Mon Sep 17 00:00:00 2001 From: AprilWind <2100166581@qq.com> Date: Thu, 25 Jul 2024 10:37:27 +0800 Subject: [PATCH 062/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96Monitor?= =?UTF-8?q?=E7=9B=91=E6=8E=A7=E6=9C=8D=E5=8A=A1=E4=BF=A1=E6=81=AF=E4=BA=8B?= =?UTF-8?q?=E4=BB=B6=E9=80=9A=E7=9F=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ruoyi-extend/ruoyi-monitor-admin/pom.xml | 5 ++ .../monitor/admin/event/NotifierEvent.java | 44 +++++++++++++++ .../admin/notifier/CustomNotifier.java | 56 ++++++------------- .../monitor/admin/notifier/InfoNotifier.java | 34 +++++++++++ 4 files changed, 101 insertions(+), 38 deletions(-) create mode 100644 ruoyi-extend/ruoyi-monitor-admin/src/main/java/org/dromara/monitor/admin/event/NotifierEvent.java create mode 100644 ruoyi-extend/ruoyi-monitor-admin/src/main/java/org/dromara/monitor/admin/notifier/InfoNotifier.java diff --git a/ruoyi-extend/ruoyi-monitor-admin/pom.xml b/ruoyi-extend/ruoyi-monitor-admin/pom.xml index 91194c61b..0ed2d293c 100644 --- a/ruoyi-extend/ruoyi-monitor-admin/pom.xml +++ b/ruoyi-extend/ruoyi-monitor-admin/pom.xml @@ -39,6 +39,11 @@ lombok + + org.dromara + ruoyi-common-core + + diff --git a/ruoyi-extend/ruoyi-monitor-admin/src/main/java/org/dromara/monitor/admin/event/NotifierEvent.java b/ruoyi-extend/ruoyi-monitor-admin/src/main/java/org/dromara/monitor/admin/event/NotifierEvent.java new file mode 100644 index 000000000..7df53e460 --- /dev/null +++ b/ruoyi-extend/ruoyi-monitor-admin/src/main/java/org/dromara/monitor/admin/event/NotifierEvent.java @@ -0,0 +1,44 @@ +package org.dromara.monitor.admin.event; + +import lombok.Data; + +import java.io.Serial; +import java.io.Serializable; + +/** + * 通知事件 + * + * @author AprilWind + */ +@Data +public class NotifierEvent implements Serializable { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 实例注册名称 + */ + private String registName; + + /** + * 实例状态名称 + */ + private String statusName; + + /** + * 实例ID + */ + private String instanceId; + + /** + * 实例状态 + */ + private String status; + + /** + * 服务URL + */ + private String serviceUrl; + +} diff --git a/ruoyi-extend/ruoyi-monitor-admin/src/main/java/org/dromara/monitor/admin/notifier/CustomNotifier.java b/ruoyi-extend/ruoyi-monitor-admin/src/main/java/org/dromara/monitor/admin/notifier/CustomNotifier.java index 0094f72fa..e2b529449 100644 --- a/ruoyi-extend/ruoyi-monitor-admin/src/main/java/org/dromara/monitor/admin/notifier/CustomNotifier.java +++ b/ruoyi-extend/ruoyi-monitor-admin/src/main/java/org/dromara/monitor/admin/notifier/CustomNotifier.java @@ -6,6 +6,8 @@ import de.codecentric.boot.admin.server.domain.events.InstanceEvent; import de.codecentric.boot.admin.server.domain.events.InstanceStatusChangedEvent; import de.codecentric.boot.admin.server.notify.AbstractEventNotifier; import lombok.extern.slf4j.Slf4j; +import org.dromara.common.core.utils.SpringUtils; +import org.dromara.monitor.admin.event.NotifierEvent; import org.springframework.stereotype.Component; import reactor.core.publisher.Mono; @@ -38,46 +40,24 @@ public class CustomNotifier extends AbstractEventNotifier { String status = ((InstanceStatusChangedEvent) event).getStatusInfo().getStatus(); // 获取服务URL String serviceUrl = instance.getRegistration().getServiceUrl(); - String statusName = null; - - // 根据实例状态执行相应的操作 - switch (status) { - // 服务上线(实例成功启动并可以正常处理请求) - case STATUS_UP: - statusName = "服务上线"; - break; - - // 服务离线(实例被手动或自动地从服务中移除) - case STATUS_OFFLINE: - statusName = "服务离线"; - break; - - // 服务受限(表示实例在某些方面受限,可能无法完全提供所有服务) - case STATUS_RESTRICTED: - statusName = "服务受限"; - break; - - // 停止服务状态(表示实例已被标记为停止提供服务,可能是计划内维护或测试) - case STATUS_OUT_OF_SERVICE: - statusName = "停止服务状态"; - break; - - // 服务下线(实例因崩溃、错误或其他原因停止运行) - case STATUS_DOWN: - statusName = "服务下线"; - break; - - // 服务未知异常(监控系统无法确定实例的当前状态) - case STATUS_UNKNOWN: - statusName = "服务未知异常"; - break; - - // 默认情况(没有匹配的状态) - default: - break; - } + String statusName = switch (status) { + case STATUS_UP -> "服务上线"; // 实例成功启动并可以正常处理请求 + case STATUS_OFFLINE -> "服务离线"; //实例被手动或自动地从服务中移除 + case STATUS_RESTRICTED -> "服务受限"; //表示实例在某些方面受限,可能无法完全提供所有服务 + case STATUS_OUT_OF_SERVICE -> "停止服务状态"; //表示实例已被标记为停止提供服务,可能是计划内维护或测试 + case STATUS_DOWN -> "服务下线"; //实例因崩溃、错误或其他原因停止运行 + case STATUS_UNKNOWN -> "服务未知异常"; //监控系统无法确定实例的当前状态 + default -> "未知状态"; //没有匹配的状态 + }; log.info("Instance Status Change: 状态名称【{}】, 注册名称【{}】, 实例ID【{}】, 状态【{}】, 服务URL【{}】", statusName, registName, instanceId, status, serviceUrl); + NotifierEvent notifier = new NotifierEvent(); + notifier.setRegistName(registName); + notifier.setStatusName(statusName); + notifier.setInstanceId(instanceId); + notifier.setStatus(status); + notifier.setServiceUrl(serviceUrl); + SpringUtils.context().publishEvent(notifier); } }); } diff --git a/ruoyi-extend/ruoyi-monitor-admin/src/main/java/org/dromara/monitor/admin/notifier/InfoNotifier.java b/ruoyi-extend/ruoyi-monitor-admin/src/main/java/org/dromara/monitor/admin/notifier/InfoNotifier.java new file mode 100644 index 000000000..455883e38 --- /dev/null +++ b/ruoyi-extend/ruoyi-monitor-admin/src/main/java/org/dromara/monitor/admin/notifier/InfoNotifier.java @@ -0,0 +1,34 @@ +package org.dromara.monitor.admin.notifier; + +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.dromara.monitor.admin.event.NotifierEvent; +import org.springframework.context.event.EventListener; +import org.springframework.scheduling.annotation.Async; +import org.springframework.stereotype.Service; + +/** + * 信息通知 + * + * @author AprilWind + */ +@RequiredArgsConstructor +@Slf4j +@Service +public class InfoNotifier { + + /** + * 异步处理通知事件的方法 + *

+ * 该方法会处理 `NotifierEvent` 事件,执行通知相关的操作,如发送邮件或短信 + * + * @param notifier 事件对象,包含了需要通知的详细信息,包括注册名称、状态名称、实例 ID、状态和服务 URL + */ + @Async + @EventListener + public void infoNotification(NotifierEvent notifier) { + // 在这里添加处理通知事件的逻辑 + // 例如,依据 notifier 对象的信息发送邮件或短信通知 + } + +} -- Gitee From e25083aea4008aab6f9be801b18d98e32dc6ad1b Mon Sep 17 00:00:00 2001 From: AprilWind <2100166581@qq.com> Date: Thu, 25 Jul 2024 10:55:46 +0800 Subject: [PATCH 063/540] =?UTF-8?q?del=20=E5=88=A0=E9=99=A4=E6=97=A0?= =?UTF-8?q?=E7=94=A8=E4=BE=9D=E8=B5=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ruoyi-extend/ruoyi-monitor-admin/pom.xml | 5 --- .../monitor/admin/event/NotifierEvent.java | 44 ------------------- .../admin/notifier/CustomNotifier.java | 9 ---- .../monitor/admin/notifier/InfoNotifier.java | 34 -------------- 4 files changed, 92 deletions(-) delete mode 100644 ruoyi-extend/ruoyi-monitor-admin/src/main/java/org/dromara/monitor/admin/event/NotifierEvent.java delete mode 100644 ruoyi-extend/ruoyi-monitor-admin/src/main/java/org/dromara/monitor/admin/notifier/InfoNotifier.java diff --git a/ruoyi-extend/ruoyi-monitor-admin/pom.xml b/ruoyi-extend/ruoyi-monitor-admin/pom.xml index 0ed2d293c..91194c61b 100644 --- a/ruoyi-extend/ruoyi-monitor-admin/pom.xml +++ b/ruoyi-extend/ruoyi-monitor-admin/pom.xml @@ -39,11 +39,6 @@ lombok - - org.dromara - ruoyi-common-core - - diff --git a/ruoyi-extend/ruoyi-monitor-admin/src/main/java/org/dromara/monitor/admin/event/NotifierEvent.java b/ruoyi-extend/ruoyi-monitor-admin/src/main/java/org/dromara/monitor/admin/event/NotifierEvent.java deleted file mode 100644 index 7df53e460..000000000 --- a/ruoyi-extend/ruoyi-monitor-admin/src/main/java/org/dromara/monitor/admin/event/NotifierEvent.java +++ /dev/null @@ -1,44 +0,0 @@ -package org.dromara.monitor.admin.event; - -import lombok.Data; - -import java.io.Serial; -import java.io.Serializable; - -/** - * 通知事件 - * - * @author AprilWind - */ -@Data -public class NotifierEvent implements Serializable { - - @Serial - private static final long serialVersionUID = 1L; - - /** - * 实例注册名称 - */ - private String registName; - - /** - * 实例状态名称 - */ - private String statusName; - - /** - * 实例ID - */ - private String instanceId; - - /** - * 实例状态 - */ - private String status; - - /** - * 服务URL - */ - private String serviceUrl; - -} diff --git a/ruoyi-extend/ruoyi-monitor-admin/src/main/java/org/dromara/monitor/admin/notifier/CustomNotifier.java b/ruoyi-extend/ruoyi-monitor-admin/src/main/java/org/dromara/monitor/admin/notifier/CustomNotifier.java index e2b529449..838eefc47 100644 --- a/ruoyi-extend/ruoyi-monitor-admin/src/main/java/org/dromara/monitor/admin/notifier/CustomNotifier.java +++ b/ruoyi-extend/ruoyi-monitor-admin/src/main/java/org/dromara/monitor/admin/notifier/CustomNotifier.java @@ -6,8 +6,6 @@ import de.codecentric.boot.admin.server.domain.events.InstanceEvent; import de.codecentric.boot.admin.server.domain.events.InstanceStatusChangedEvent; import de.codecentric.boot.admin.server.notify.AbstractEventNotifier; import lombok.extern.slf4j.Slf4j; -import org.dromara.common.core.utils.SpringUtils; -import org.dromara.monitor.admin.event.NotifierEvent; import org.springframework.stereotype.Component; import reactor.core.publisher.Mono; @@ -51,13 +49,6 @@ public class CustomNotifier extends AbstractEventNotifier { }; log.info("Instance Status Change: 状态名称【{}】, 注册名称【{}】, 实例ID【{}】, 状态【{}】, 服务URL【{}】", statusName, registName, instanceId, status, serviceUrl); - NotifierEvent notifier = new NotifierEvent(); - notifier.setRegistName(registName); - notifier.setStatusName(statusName); - notifier.setInstanceId(instanceId); - notifier.setStatus(status); - notifier.setServiceUrl(serviceUrl); - SpringUtils.context().publishEvent(notifier); } }); } diff --git a/ruoyi-extend/ruoyi-monitor-admin/src/main/java/org/dromara/monitor/admin/notifier/InfoNotifier.java b/ruoyi-extend/ruoyi-monitor-admin/src/main/java/org/dromara/monitor/admin/notifier/InfoNotifier.java deleted file mode 100644 index 455883e38..000000000 --- a/ruoyi-extend/ruoyi-monitor-admin/src/main/java/org/dromara/monitor/admin/notifier/InfoNotifier.java +++ /dev/null @@ -1,34 +0,0 @@ -package org.dromara.monitor.admin.notifier; - -import lombok.RequiredArgsConstructor; -import lombok.extern.slf4j.Slf4j; -import org.dromara.monitor.admin.event.NotifierEvent; -import org.springframework.context.event.EventListener; -import org.springframework.scheduling.annotation.Async; -import org.springframework.stereotype.Service; - -/** - * 信息通知 - * - * @author AprilWind - */ -@RequiredArgsConstructor -@Slf4j -@Service -public class InfoNotifier { - - /** - * 异步处理通知事件的方法 - *

- * 该方法会处理 `NotifierEvent` 事件,执行通知相关的操作,如发送邮件或短信 - * - * @param notifier 事件对象,包含了需要通知的详细信息,包括注册名称、状态名称、实例 ID、状态和服务 URL - */ - @Async - @EventListener - public void infoNotification(NotifierEvent notifier) { - // 在这里添加处理通知事件的逻辑 - // 例如,依据 notifier 对象的信息发送邮件或短信通知 - } - -} -- Gitee From f46d8818663ace96cb6bc69c0e048cb550018c48 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 25 Jul 2024 13:12:49 +0800 Subject: [PATCH 064/540] =?UTF-8?q?add=20=E5=A2=9E=E5=8A=A0=20snailjob=20?= =?UTF-8?q?=E5=81=A5=E5=BA=B7=E6=A3=80=E6=9F=A5=20actuator=20=E8=B4=A6?= =?UTF-8?q?=E5=8F=B7=E5=AF=86=E7=A0=81=E8=AE=A4=E8=AF=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../starter/filter/ActuatorAuthFilter.java | 64 +++++++++++++++++++ .../server/starter/filter/SecurityConfig.java | 29 +++++++++ 2 files changed, 93 insertions(+) create mode 100644 ruoyi-extend/ruoyi-snailjob-server/src/main/java/com/aizuda/snailjob/server/starter/filter/ActuatorAuthFilter.java create mode 100644 ruoyi-extend/ruoyi-snailjob-server/src/main/java/com/aizuda/snailjob/server/starter/filter/SecurityConfig.java diff --git a/ruoyi-extend/ruoyi-snailjob-server/src/main/java/com/aizuda/snailjob/server/starter/filter/ActuatorAuthFilter.java b/ruoyi-extend/ruoyi-snailjob-server/src/main/java/com/aizuda/snailjob/server/starter/filter/ActuatorAuthFilter.java new file mode 100644 index 000000000..e3a6892fa --- /dev/null +++ b/ruoyi-extend/ruoyi-snailjob-server/src/main/java/com/aizuda/snailjob/server/starter/filter/ActuatorAuthFilter.java @@ -0,0 +1,64 @@ +package com.aizuda.snailjob.server.starter.filter; + +import jakarta.servlet.*; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; + +import java.io.IOException; +import java.nio.charset.StandardCharsets; +import java.util.Base64; + +public class ActuatorAuthFilter implements Filter { + + private final String username; + private final String password; + + public ActuatorAuthFilter(String username, String password) { + this.username = username; + this.password = password; + } + + @Override + public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException { + HttpServletRequest request = (HttpServletRequest) servletRequest; + HttpServletResponse response = (HttpServletResponse) servletResponse; + + // 获取 Authorization 头 + String authHeader = request.getHeader("Authorization"); + + if (authHeader == null || !authHeader.startsWith("Basic ")) { + // 如果没有提供 Authorization 或者格式不对,则返回 401 + response.setHeader("WWW-Authenticate", "Basic realm=\"realm\""); + response.sendError(HttpServletResponse.SC_UNAUTHORIZED, "Unauthorized"); + return; + } + + // 解码 Base64 编码的用户名和密码 + String base64Credentials = authHeader.substring("Basic ".length()); + byte[] credDecoded = Base64.getDecoder().decode(base64Credentials); + String credentials = new String(credDecoded, StandardCharsets.UTF_8); + String[] split = credentials.split(":"); + if (split.length != 2) { + response.setHeader("WWW-Authenticate", "Basic realm=\"realm\""); + response.sendError(HttpServletResponse.SC_UNAUTHORIZED, "Unauthorized"); + return; + } + // 验证用户名和密码 + if (!username.equals(split[0]) && password.equals(split[1])) { + response.setHeader("WWW-Authenticate", "Basic realm=\"realm\""); + response.sendError(HttpServletResponse.SC_UNAUTHORIZED, "Unauthorized"); + return; + } + // 如果认证成功,继续处理请求 + filterChain.doFilter(request, response); + } + + @Override + public void init(FilterConfig filterConfig) { + } + + @Override + public void destroy() { + } + +} diff --git a/ruoyi-extend/ruoyi-snailjob-server/src/main/java/com/aizuda/snailjob/server/starter/filter/SecurityConfig.java b/ruoyi-extend/ruoyi-snailjob-server/src/main/java/com/aizuda/snailjob/server/starter/filter/SecurityConfig.java new file mode 100644 index 000000000..3cae8f58e --- /dev/null +++ b/ruoyi-extend/ruoyi-snailjob-server/src/main/java/com/aizuda/snailjob/server/starter/filter/SecurityConfig.java @@ -0,0 +1,29 @@ +package com.aizuda.snailjob.server.starter.filter; + +import org.springframework.beans.factory.annotation.Value; +import org.springframework.boot.web.servlet.FilterRegistrationBean; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +/** + * 权限安全配置 + * + * @author Lion Li + */ +@Configuration +public class SecurityConfig { + + @Value("${spring.boot.admin.client.username}") + private String username; + @Value("${spring.boot.admin.client.password}") + private String password; + + @Bean + public FilterRegistrationBean actuatorFilterRegistrationBean() { + FilterRegistrationBean registrationBean = new FilterRegistrationBean<>(); + registrationBean.setFilter(new ActuatorAuthFilter(username, password)); + registrationBean.addUrlPatterns("/actuator", "/actuator/**"); + return registrationBean; + } + +} -- Gitee From e9bd0858e27fc0da0a77caf2d435d8fecacb9ca6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 25 Jul 2024 13:21:32 +0800 Subject: [PATCH 065/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E5=88=A0?= =?UTF-8?q?=E9=99=A4=E6=97=A0=E7=94=A8=E9=85=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ruoyi-admin/src/main/resources/application.yml | 3 --- 1 file changed, 3 deletions(-) diff --git a/ruoyi-admin/src/main/resources/application.yml b/ruoyi-admin/src/main/resources/application.yml index 27de286f0..9342f6e70 100644 --- a/ruoyi-admin/src/main/resources/application.yml +++ b/ruoyi-admin/src/main/resources/application.yml @@ -121,9 +121,6 @@ security: # swagger 文档配置 - /*/api-docs - /*/api-docs/** - # actuator 监控配置 - - /actuator - - /actuator/** # 多租户配置 tenant: -- Gitee From ee3525cfb26be97b126e07c1322c41fcc8b5014c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 26 Jul 2024 16:05:35 +0800 Subject: [PATCH 066/540] =?UTF-8?q?add=20=E5=A2=9E=E5=8A=A0=20ruoyi-common?= =?UTF-8?q?-sse=20=E6=A8=A1=E5=9D=97=20=E6=94=AF=E6=8C=81SSE=E6=8E=A8?= =?UTF-8?q?=E9=80=81=20=E6=AF=94ws=E6=9B=B4=E8=BD=BB=E9=87=8F=E6=9B=B4?= =?UTF-8?q?=E7=A8=B3=E5=AE=9A=E7=9A=84=E6=8E=A8=E9=80=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ruoyi-common/pom.xml | 1 + ruoyi-common/ruoyi-common-bom/pom.xml | 7 + ruoyi-common/ruoyi-common-sse/pom.xml | 36 +++++ .../sse/config/SseAutoConfiguration.java | 28 ++++ .../common/sse/config/SseProperties.java | 21 +++ .../common/sse/controller/SseController.java | 52 +++++++ .../common/sse/core/SseEmitterManager.java | 134 ++++++++++++++++++ .../dromara/common/sse/dto/SseMessageDto.java | 29 ++++ .../common/sse/listener/SseTopicListener.java | 48 +++++++ .../common/sse/utils/SseMessageUtils.java | 58 ++++++++ ...ot.autoconfigure.AutoConfiguration.imports | 1 + ruoyi-modules/ruoyi-system/pom.xml | 5 + 12 files changed, 420 insertions(+) create mode 100644 ruoyi-common/ruoyi-common-sse/pom.xml create mode 100644 ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/config/SseAutoConfiguration.java create mode 100644 ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/config/SseProperties.java create mode 100644 ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/controller/SseController.java create mode 100644 ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/core/SseEmitterManager.java create mode 100644 ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/dto/SseMessageDto.java create mode 100644 ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/listener/SseTopicListener.java create mode 100644 ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/utils/SseMessageUtils.java create mode 100644 ruoyi-common/ruoyi-common-sse/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports diff --git a/ruoyi-common/pom.xml b/ruoyi-common/pom.xml index 45493d3e9..2930fd0b0 100644 --- a/ruoyi-common/pom.xml +++ b/ruoyi-common/pom.xml @@ -33,6 +33,7 @@ ruoyi-common-encrypt ruoyi-common-tenant ruoyi-common-websocket + ruoyi-common-sse ruoyi-common diff --git a/ruoyi-common/ruoyi-common-bom/pom.xml b/ruoyi-common/ruoyi-common-bom/pom.xml index 5388d8c46..19ca420e3 100644 --- a/ruoyi-common/ruoyi-common-bom/pom.xml +++ b/ruoyi-common/ruoyi-common-bom/pom.xml @@ -172,6 +172,13 @@ ${revision} + + + org.dromara + ruoyi-common-sse + ${revision} + + diff --git a/ruoyi-common/ruoyi-common-sse/pom.xml b/ruoyi-common/ruoyi-common-sse/pom.xml new file mode 100644 index 000000000..ae44c988e --- /dev/null +++ b/ruoyi-common/ruoyi-common-sse/pom.xml @@ -0,0 +1,36 @@ + + + + org.dromara + ruoyi-common + ${revision} + + 4.0.0 + + ruoyi-common-sse + + + ruoyi-common-sse 模块 + + + + + org.dromara + ruoyi-common-core + + + org.dromara + ruoyi-common-redis + + + org.dromara + ruoyi-common-satoken + + + org.dromara + ruoyi-common-json + + + diff --git a/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/config/SseAutoConfiguration.java b/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/config/SseAutoConfiguration.java new file mode 100644 index 000000000..de5afa9a7 --- /dev/null +++ b/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/config/SseAutoConfiguration.java @@ -0,0 +1,28 @@ +package org.dromara.common.sse.config; + +import org.dromara.common.sse.core.SseEmitterManager; +import org.dromara.common.sse.listener.SseTopicListener; +import org.springframework.boot.autoconfigure.AutoConfiguration; +import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; +import org.springframework.boot.context.properties.EnableConfigurationProperties; +import org.springframework.context.annotation.Bean; + +/** + * @author Lion Li + */ +@AutoConfiguration +@ConditionalOnProperty(value = "sse.enabled", havingValue = "true") +@EnableConfigurationProperties(SseProperties.class) +public class SseAutoConfiguration { + + @Bean + public SseEmitterManager sseEmitterManager() { + return new SseEmitterManager(); + } + + @Bean + public SseTopicListener sseTopicListener() { + return new SseTopicListener(); + } + +} diff --git a/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/config/SseProperties.java b/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/config/SseProperties.java new file mode 100644 index 000000000..ce4e1732d --- /dev/null +++ b/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/config/SseProperties.java @@ -0,0 +1,21 @@ +package org.dromara.common.sse.config; + +import lombok.Data; +import org.springframework.boot.context.properties.ConfigurationProperties; + +/** + * SSE 配置项 + * + * @author Lion Li + */ +@Data +@ConfigurationProperties("sse") +public class SseProperties { + + private Boolean enabled; + + /** + * 路径 + */ + private String path; +} diff --git a/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/controller/SseController.java b/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/controller/SseController.java new file mode 100644 index 000000000..57c7c1e82 --- /dev/null +++ b/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/controller/SseController.java @@ -0,0 +1,52 @@ +package org.dromara.common.sse.controller; + +import cn.dev33.satoken.stp.StpUtil; +import lombok.RequiredArgsConstructor; +import org.dromara.common.core.domain.R; +import org.dromara.common.satoken.utils.LoginHelper; +import org.dromara.common.sse.core.SseEmitterManager; +import org.dromara.common.sse.dto.SseMessageDto; +import org.springframework.http.MediaType; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.servlet.mvc.method.annotation.SseEmitter; + +import java.util.List; + +@RestController +@RequiredArgsConstructor +public class SseController { + + private final SseEmitterManager sseEmitterManager; + + @GetMapping(value = "${sse.path}", produces = MediaType.TEXT_EVENT_STREAM_VALUE) + public SseEmitter connect() { + String tokenValue = StpUtil.getTokenValue(); + Long userId = LoginHelper.getUserId(); + return sseEmitterManager.connect(userId, tokenValue); + } + + @GetMapping(value = "${sse.path}/close") + public R close() { + String tokenValue = StpUtil.getTokenValue(); + Long userId = LoginHelper.getUserId(); + sseEmitterManager.disconnect(userId, tokenValue); + return R.ok(); + } + + @GetMapping(value = "${sse.path}/send") + public R send(Long userId, String msg) { + SseMessageDto dto = new SseMessageDto(); + dto.setUserIds(List.of(userId)); + dto.setMessage(msg); + sseEmitterManager.publishMessage(dto); + return R.ok(); + } + + @GetMapping(value = "${sse.path}/sendAll") + public R send(String msg) { + sseEmitterManager.publishAll(msg); + return R.ok(); + } + +} diff --git a/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/core/SseEmitterManager.java b/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/core/SseEmitterManager.java new file mode 100644 index 000000000..4b56b69a0 --- /dev/null +++ b/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/core/SseEmitterManager.java @@ -0,0 +1,134 @@ +package org.dromara.common.sse.core; + +import cn.hutool.core.collection.CollUtil; +import lombok.extern.slf4j.Slf4j; +import org.dromara.common.redis.utils.RedisUtils; +import org.dromara.common.sse.dto.SseMessageDto; +import org.springframework.web.servlet.mvc.method.annotation.SseEmitter; + +import java.io.IOException; +import java.util.ArrayList; +import java.util.List; +import java.util.Map; +import java.util.concurrent.ConcurrentHashMap; +import java.util.function.Consumer; + +@Slf4j +public class SseEmitterManager { + /** + * 订阅的频道 + */ + private final static String SSE_TOPIC = "global:sse"; + + private final static Map> USER_TOKEN_EMITTERS = new ConcurrentHashMap<>(); + + public SseEmitter connect(Long userId, String token) { + Map emitters = USER_TOKEN_EMITTERS.computeIfAbsent(userId, k -> new ConcurrentHashMap<>()); + SseEmitter emitter = new SseEmitter(0L); + + emitters.put(token, emitter); + + emitter.onCompletion(() -> emitters.remove(token)); + emitter.onTimeout(() -> emitters.remove(token)); + + try { + emitter.send(SseEmitter.event().comment("connected")); + } catch (IOException e) { + emitters.remove(token); + } + return emitter; + } + + public void disconnect(Long userId, String token) { + Map emitters = USER_TOKEN_EMITTERS.get(userId); + if (emitters != null) { + try { + emitters.get(token).send(SseEmitter.event().comment("disconnected")); + } catch (IOException ignore) { + } + emitters.remove(token); + } + } + + /** + * 订阅SSE消息主题,并提供一个消费者函数来处理接收到的消息 + * + * @param consumer 处理SSE消息的消费者函数 + */ + public void subscribeMessage(Consumer consumer) { + RedisUtils.subscribe(SSE_TOPIC, SseMessageDto.class, consumer); + } + + /** + * 向指定的用户会话发送消息 + * + * @param userId 要发送消息的用户id + * @param message 要发送的消息内容 + */ + public void sendMessage(Long userId, String message) { + Map emitters = USER_TOKEN_EMITTERS.get(userId); + if (emitters != null) { + for (Map.Entry entry : emitters.entrySet()) { + try { + entry.getValue().send(SseEmitter.event() + .name("message") + .reconnectTime(10000L) + .data(message)); + } catch (Exception e) { + emitters.remove(entry.getKey()); + } + } + } + } + + /** + * 本机全用户会话发送消息 + * + * @param message 要发送的消息内容 + */ + public void sendMessage(String message) { + for (Long userId : USER_TOKEN_EMITTERS.keySet()) { + sendMessage(userId, message); + } + } + + /** + * 发布SSE订阅消息 + * + * @param sseMessageDto 要发布的SSE消息对象 + */ + public void publishMessage(SseMessageDto sseMessageDto) { + List unsentUserIds = new ArrayList<>(); + // 当前服务内用户,直接发送消息 + for (Long userId : sseMessageDto.getUserIds()) { + if (USER_TOKEN_EMITTERS.containsKey(userId)) { + sendMessage(userId, sseMessageDto.getMessage()); + continue; + } + unsentUserIds.add(userId); + } + // 不在当前服务内用户,发布订阅消息 + if (CollUtil.isNotEmpty(unsentUserIds)) { + SseMessageDto broadcastMessage = new SseMessageDto(); + broadcastMessage.setMessage(sseMessageDto.getMessage()); + broadcastMessage.setUserIds(unsentUserIds); + RedisUtils.publish(SSE_TOPIC, broadcastMessage, consumer -> { + log.info("SSE发送主题订阅消息topic:{} session keys:{} message:{}", + SSE_TOPIC, unsentUserIds, sseMessageDto.getMessage()); + }); + } + } + + /** + * 向所有的用户发布订阅的消息(群发) + * + * @param message 要发布的消息内容 + */ + public void publishAll(String message) { + SseMessageDto broadcastMessage = new SseMessageDto(); + broadcastMessage.setMessage(message); + RedisUtils.publish(SSE_TOPIC, broadcastMessage, consumer -> { + log.info("SSE发送主题订阅消息topic:{} message:{}", SSE_TOPIC, message); + }); + } +} diff --git a/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/dto/SseMessageDto.java b/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/dto/SseMessageDto.java new file mode 100644 index 000000000..a2e1210c6 --- /dev/null +++ b/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/dto/SseMessageDto.java @@ -0,0 +1,29 @@ +package org.dromara.common.sse.dto; + +import lombok.Data; + +import java.io.Serial; +import java.io.Serializable; +import java.util.List; + +/** + * 消息的dto + * + * @author zendwang + */ +@Data +public class SseMessageDto implements Serializable { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 需要推送到的session key 列表 + */ + private List userIds; + + /** + * 需要发送的消息 + */ + private String message; +} diff --git a/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/listener/SseTopicListener.java b/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/listener/SseTopicListener.java new file mode 100644 index 000000000..7a4dff13e --- /dev/null +++ b/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/listener/SseTopicListener.java @@ -0,0 +1,48 @@ +package org.dromara.common.sse.listener; + +import cn.hutool.core.collection.CollUtil; +import lombok.extern.slf4j.Slf4j; +import org.dromara.common.sse.core.SseEmitterManager; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.ApplicationArguments; +import org.springframework.boot.ApplicationRunner; +import org.springframework.core.Ordered; + +/** + * SSE 主题订阅监听器 + * + * @author Lion Li + */ +@Slf4j +public class SseTopicListener implements ApplicationRunner, Ordered { + + @Autowired + private SseEmitterManager sseEmitterManager; + + /** + * 在Spring Boot应用程序启动时初始化SSE主题订阅监听器 + * + * @param args 应用程序参数 + * @throws Exception 初始化过程中可能抛出的异常 + */ + @Override + public void run(ApplicationArguments args) throws Exception { + sseEmitterManager.subscribeMessage((message) -> { + log.info("SSE主题订阅收到消息session keys={} message={}", message.getUserIds(), message.getMessage()); + // 如果key不为空就按照key发消息 如果为空就群发 + if (CollUtil.isNotEmpty(message.getUserIds())) { + message.getUserIds().forEach(key -> { + sseEmitterManager.sendMessage(key, message.getMessage()); + }); + } else { + sseEmitterManager.sendMessage(message.getMessage()); + } + }); + log.info("初始化SSE主题订阅监听器成功"); + } + + @Override + public int getOrder() { + return -1; + } +} diff --git a/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/utils/SseMessageUtils.java b/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/utils/SseMessageUtils.java new file mode 100644 index 000000000..4334e98bc --- /dev/null +++ b/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/utils/SseMessageUtils.java @@ -0,0 +1,58 @@ +package org.dromara.common.sse.utils; + +import lombok.AccessLevel; +import lombok.NoArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.dromara.common.core.utils.SpringUtils; +import org.dromara.common.sse.core.SseEmitterManager; +import org.dromara.common.sse.dto.SseMessageDto; + +/** + * 工具类 + * + * @author Lion Li + */ +@Slf4j +@NoArgsConstructor(access = AccessLevel.PRIVATE) +public class SseMessageUtils { + + private final static SseEmitterManager MANAGER = SpringUtils.getBean(SseEmitterManager.class); + + /** + * 向指定的WebSocket会话发送消息 + * + * @param userId 要发送消息的用户id + * @param message 要发送的消息内容 + */ + public static void sendMessage(Long userId, String message) { + MANAGER.sendMessage(userId, message); + } + + /** + * 本机全用户会话发送消息 + * + * @param message 要发送的消息内容 + */ + public static void sendMessage(String message) { + MANAGER.sendMessage(message); + } + + /** + * 发布SSE订阅消息 + * + * @param sseMessageDto 要发布的SSE消息对象 + */ + public static void publishMessage(SseMessageDto sseMessageDto) { + MANAGER.publishMessage(sseMessageDto); + } + + /** + * 向所有的用户发布订阅的消息(群发) + * + * @param message 要发布的消息内容 + */ + public static void publishAll(String message) { + MANAGER.publishAll(message); + } + +} diff --git a/ruoyi-common/ruoyi-common-sse/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports b/ruoyi-common/ruoyi-common-sse/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports new file mode 100644 index 000000000..b80971390 --- /dev/null +++ b/ruoyi-common/ruoyi-common-sse/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports @@ -0,0 +1 @@ +org.dromara.common.sse.config.SseAutoConfiguration diff --git a/ruoyi-modules/ruoyi-system/pom.xml b/ruoyi-modules/ruoyi-system/pom.xml index acf33ceb3..0fc6d5513 100644 --- a/ruoyi-modules/ruoyi-system/pom.xml +++ b/ruoyi-modules/ruoyi-system/pom.xml @@ -95,6 +95,11 @@ ruoyi-common-websocket + + org.dromara + ruoyi-common-sse + + -- Gitee From d5ab2a7557180441319f24e0323e792dd862de84 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 26 Jul 2024 16:24:26 +0800 Subject: [PATCH 067/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E8=B0=83?= =?UTF-8?q?=E6=95=B4=E9=BB=98=E8=AE=A4=E6=8E=A8=E9=80=81=E4=BD=BF=E7=94=A8?= =?UTF-8?q?SSE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/dromara/web/controller/AuthController.java | 12 ++++++------ ruoyi-admin/src/main/resources/application.yml | 7 ++++++- .../controller/system/SysNoticeController.java | 4 ++-- 3 files changed, 14 insertions(+), 9 deletions(-) diff --git a/ruoyi-admin/src/main/java/org/dromara/web/controller/AuthController.java b/ruoyi-admin/src/main/java/org/dromara/web/controller/AuthController.java index 1db68f106..0b976db9a 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/controller/AuthController.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/controller/AuthController.java @@ -24,9 +24,9 @@ import org.dromara.common.satoken.utils.LoginHelper; import org.dromara.common.social.config.properties.SocialLoginConfigProperties; import org.dromara.common.social.config.properties.SocialProperties; import org.dromara.common.social.utils.SocialUtils; +import org.dromara.common.sse.dto.SseMessageDto; +import org.dromara.common.sse.utils.SseMessageUtils; import org.dromara.common.tenant.helper.TenantHelper; -import org.dromara.common.websocket.dto.WebSocketMessageDto; -import org.dromara.common.websocket.utils.WebSocketUtils; import org.dromara.system.domain.bo.SysTenantBo; import org.dromara.system.domain.vo.SysClientVo; import org.dromara.system.domain.vo.SysTenantVo; @@ -102,11 +102,11 @@ public class AuthController { Long userId = LoginHelper.getUserId(); scheduledExecutorService.schedule(() -> { - WebSocketMessageDto dto = new WebSocketMessageDto(); + SseMessageDto dto = new SseMessageDto(); dto.setMessage("欢迎登录RuoYi-Vue-Plus后台管理系统"); - dto.setSessionKeys(List.of(userId)); - WebSocketUtils.publishMessage(dto); - }, 3, TimeUnit.SECONDS); + dto.setUserIds(List.of(userId)); + SseMessageUtils.publishMessage(dto); + }, 20, TimeUnit.SECONDS); return R.ok(loginVo); } diff --git a/ruoyi-admin/src/main/resources/application.yml b/ruoyi-admin/src/main/resources/application.yml index 9342f6e70..f9a9cc3a9 100644 --- a/ruoyi-admin/src/main/resources/application.yml +++ b/ruoyi-admin/src/main/resources/application.yml @@ -256,10 +256,15 @@ management: logfile: external-file: ./logs/sys-console.log +--- # 默认/推荐使用sse推送 +sse: + enabled: true + path: /resource/sse + --- # websocket websocket: # 如果关闭 需要和前端开关一起关闭 - enabled: true + enabled: false # 路径 path: /resource/websocket # 设置访问源地址 diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysNoticeController.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysNoticeController.java index a0aa26eba..5d65137b1 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysNoticeController.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysNoticeController.java @@ -8,8 +8,8 @@ import org.dromara.common.log.annotation.Log; import org.dromara.common.log.enums.BusinessType; import org.dromara.common.mybatis.core.page.PageQuery; import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.dromara.common.sse.utils.SseMessageUtils; import org.dromara.common.web.core.BaseController; -import org.dromara.common.websocket.utils.WebSocketUtils; import org.dromara.system.domain.bo.SysNoticeBo; import org.dromara.system.domain.vo.SysNoticeVo; import org.dromara.system.service.ISysNoticeService; @@ -62,7 +62,7 @@ public class SysNoticeController extends BaseController { return R.fail(); } String type = dictService.getDictLabel("sys_notice_type", notice.getNoticeType()); - WebSocketUtils.publishAll("[" + type + "] " + notice.getNoticeTitle()); + SseMessageUtils.publishAll("[" + type + "] " + notice.getNoticeTitle()); return R.ok(); } -- Gitee From 51edb74474faf186367b867cc1b6ad3e76ff03bd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 26 Jul 2024 17:14:23 +0800 Subject: [PATCH 068/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20=E5=90=8E?= =?UTF-8?q?=E7=AB=AF=E5=8F=91=E6=B6=88=E6=81=AF=E5=8F=91=E9=80=81=E5=A4=B1?= =?UTF-8?q?=E8=B4=A5=E6=97=A0=E9=99=90=E9=87=8D=E8=AF=95=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/org/dromara/web/controller/AuthController.java | 2 +- .../java/org/dromara/common/sse/core/SseEmitterManager.java | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/ruoyi-admin/src/main/java/org/dromara/web/controller/AuthController.java b/ruoyi-admin/src/main/java/org/dromara/web/controller/AuthController.java index 0b976db9a..b561693d6 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/controller/AuthController.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/controller/AuthController.java @@ -106,7 +106,7 @@ public class AuthController { dto.setMessage("欢迎登录RuoYi-Vue-Plus后台管理系统"); dto.setUserIds(List.of(userId)); SseMessageUtils.publishMessage(dto); - }, 20, TimeUnit.SECONDS); + }, 5, TimeUnit.SECONDS); return R.ok(loginVo); } diff --git a/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/core/SseEmitterManager.java b/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/core/SseEmitterManager.java index 4b56b69a0..276df102d 100644 --- a/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/core/SseEmitterManager.java +++ b/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/core/SseEmitterManager.java @@ -30,6 +30,7 @@ public class SseEmitterManager { emitter.onCompletion(() -> emitters.remove(token)); emitter.onTimeout(() -> emitters.remove(token)); + emitter.onError((e) -> emitters.remove(token)); try { emitter.send(SseEmitter.event().comment("connected")); @@ -72,7 +73,7 @@ public class SseEmitterManager { try { entry.getValue().send(SseEmitter.event() .name("message") - .reconnectTime(10000L) + .reconnectTime(-1L) .data(message)); } catch (Exception e) { emitters.remove(entry.getKey()); -- Gitee From 51498958fa7deb731486facf7e7bc0d5edf13fca Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 26 Jul 2024 17:17:18 +0800 Subject: [PATCH 069/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20=E6=9D=83?= =?UTF-8?q?=E9=99=90=E6=A0=87=E8=AF=86=E7=AC=A6=E5=A4=84=E7=90=86=E6=9C=AA?= =?UTF-8?q?=E8=AE=BE=E7=BD=AE=E6=88=90=E5=8A=9F=E7=8A=B6=E6=80=81=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/mybatis/handler/PlusDataPermissionHandler.java | 1 + 1 file changed, 1 insertion(+) diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/PlusDataPermissionHandler.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/PlusDataPermissionHandler.java index 61c86ff36..5ac74c321 100644 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/PlusDataPermissionHandler.java +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/PlusDataPermissionHandler.java @@ -162,6 +162,7 @@ public class PlusDataPermissionHandler { if (StringUtils.isNotBlank(dataColumn.permission()) && CollUtil.contains(user.getMenuPermission(), dataColumn.permission()) ) { + isSuccess = true; continue; } // 设置注解变量 key 为表达式变量 value 为变量值 -- Gitee From 782821aeb2812bbe60f1dc800a594717fce3f5a2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 26 Jul 2024 18:11:36 +0800 Subject: [PATCH 070/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E8=AE=BE?= =?UTF-8?q?=E7=BD=AEnginx=20sse=E7=9B=B8=E5=85=B3=E4=BB=A3=E7=90=86?= =?UTF-8?q?=E5=8F=82=E6=95=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- script/docker/nginx/conf/nginx.conf | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/script/docker/nginx/conf/nginx.conf b/script/docker/nginx/conf/nginx.conf index a6fc07363..3c79d97f6 100644 --- a/script/docker/nginx/conf/nginx.conf +++ b/script/docker/nginx/conf/nginx.conf @@ -78,10 +78,13 @@ http { proxy_set_header X-Real-IP $remote_addr; proxy_set_header REMOTE-HOST $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; - # websocket参数 + proxy_read_timeout 86400s; + # sse 与 websocket参数 proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; + proxy_buffering off; + proxy_cache off; proxy_pass http://server/; } -- Gitee From 1619edb8a113bc0a6351eb4e9485faf71735a319 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Sat, 27 Jul 2024 14:00:35 +0800 Subject: [PATCH 071/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20sse=20?= =?UTF-8?q?=E8=87=AA=E5=8A=A8=E8=A3=85=E9=85=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dromara/common/sse/config/SseAutoConfiguration.java | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/config/SseAutoConfiguration.java b/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/config/SseAutoConfiguration.java index de5afa9a7..0cf8054ed 100644 --- a/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/config/SseAutoConfiguration.java +++ b/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/config/SseAutoConfiguration.java @@ -1,5 +1,6 @@ package org.dromara.common.sse.config; +import org.dromara.common.sse.controller.SseController; import org.dromara.common.sse.core.SseEmitterManager; import org.dromara.common.sse.listener.SseTopicListener; import org.springframework.boot.autoconfigure.AutoConfiguration; @@ -8,6 +9,8 @@ import org.springframework.boot.context.properties.EnableConfigurationProperties import org.springframework.context.annotation.Bean; /** + * SSE 自动装配 + * * @author Lion Li */ @AutoConfiguration @@ -25,4 +28,9 @@ public class SseAutoConfiguration { return new SseTopicListener(); } + @Bean + public SseController sseController(SseEmitterManager sseEmitterManager) { + return new SseController(sseEmitterManager); + } + } -- Gitee From b6d939a9ffe48c1abd131cd85e5e6ae13838cbd3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Sat, 27 Jul 2024 14:00:50 +0800 Subject: [PATCH 072/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20=E4=BB=A3?= =?UTF-8?q?=E7=A0=81=E7=94=9F=E6=88=90=20=E8=A1=A8=E7=BB=93=E6=9E=84?= =?UTF-8?q?=E7=BC=93=E5=AD=98=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/org/dromara/generator/service/GenTableServiceImpl.java | 1 + 1 file changed, 1 insertion(+) diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java index cf9d2d0e8..ba9568c7f 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java +++ b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java @@ -17,6 +17,7 @@ import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.anyline.metadata.Column; import org.anyline.metadata.Table; +import org.anyline.proxy.CacheProxy; import org.anyline.proxy.ServiceProxy; import org.apache.velocity.Template; import org.apache.velocity.VelocityContext; -- Gitee From 19fd562c24d84cdcd1f9b30eae070d0a511955fd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Sat, 27 Jul 2024 14:20:20 +0800 Subject: [PATCH 073/540] update snailjob 1.1.0 => 1.1.1 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 9a39bb8ce..b8796d725 100644 --- a/pom.xml +++ b/pom.xml @@ -34,7 +34,7 @@ 2.2.7 4.3.1 2.14.4 - 1.1.0 + 1.1.1 1.3.6 0.2.0 1.18.32 -- Gitee From 9825f349ac69fa3a6c27060174bc7a5a26c6fb05 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Sat, 27 Jul 2024 14:22:57 +0800 Subject: [PATCH 074/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20=E4=BB=A3?= =?UTF-8?q?=E7=A0=81=E7=94=9F=E6=88=90=20=E8=A1=A8=E7=BB=93=E6=9E=84?= =?UTF-8?q?=E7=BC=93=E5=AD=98=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dromara/generator/service/GenTableServiceImpl.java | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java index ba9568c7f..4d16f713b 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java +++ b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java @@ -186,7 +186,7 @@ public class GenTableServiceImpl implements IGenTableService { @Override public List selectDbTableListByNames(String[] tableNames, String dataName) { Set tableNameSet = new HashSet<>(List.of(tableNames)); - LinkedHashMap> tablesMap = ServiceProxy.metadata().tables(); + LinkedHashMap> tablesMap = ServiceProxy.service(dataName).metadata().tables(); if (CollUtil.isEmpty(tablesMap)) { return new ArrayList<>(); @@ -294,11 +294,9 @@ public class GenTableServiceImpl implements IGenTableService { */ @DS("#dataName") private List selectDbTableColumnsByName(String tableName, String dataName) { - Table table = ServiceProxy.metadata().table(tableName); - if (Objects.isNull(table)) { - return new ArrayList<>(); - } - LinkedHashMap columns = table.getColumns(); + // 清理anyline缓存 + CacheProxy.clear(); + LinkedHashMap columns = ServiceProxy.metadata().columns(tableName); List tableColumns = new ArrayList<>(); columns.forEach((columnName, column) -> { GenTableColumn tableColumn = new GenTableColumn(); -- Gitee From 86acb14f0553060171a5bfaede43fde5375d8906 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Sat, 27 Jul 2024 15:09:33 +0800 Subject: [PATCH 075/540] update anyline 8.7.2-20240726 --- pom.xml | 2 +- .../config/MyBatisDataSourceMonitor.java | 81 +++++++++++++++++++ .../service/GenTableServiceImpl.java | 2 +- 3 files changed, 83 insertions(+), 2 deletions(-) create mode 100644 ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/config/MyBatisDataSourceMonitor.java diff --git a/pom.xml b/pom.xml index b8796d725..8c1e35a6a 100644 --- a/pom.xml +++ b/pom.xml @@ -51,7 +51,7 @@ 1.2.83 - 8.7.2-20240722 + 8.7.2-20240726 7.0.1 diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/config/MyBatisDataSourceMonitor.java b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/config/MyBatisDataSourceMonitor.java new file mode 100644 index 000000000..906733b08 --- /dev/null +++ b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/config/MyBatisDataSourceMonitor.java @@ -0,0 +1,81 @@ +package org.dromara.generator.config; + +import com.baomidou.dynamic.datasource.DynamicRoutingDataSource; +import com.baomidou.dynamic.datasource.toolkit.DynamicDataSourceContextHolder; +import lombok.extern.slf4j.Slf4j; +import org.anyline.data.datasource.DataSourceMonitor; +import org.anyline.util.ConfigTable; +import org.springframework.jdbc.core.JdbcTemplate; +import org.springframework.jdbc.datasource.DataSourceUtils; +import org.springframework.stereotype.Component; + +import javax.sql.DataSource; +import java.sql.Connection; +import java.sql.DatabaseMetaData; +import java.util.HashMap; +import java.util.Map; + +@Slf4j +@Component +public class MyBatisDataSourceMonitor implements DataSourceMonitor { + + public MyBatisDataSourceMonitor() { + // 调整执行模式为自定义 + ConfigTable.KEEP_ADAPTER = 2; + } + + private final Map features = new HashMap<>(); + + /** + * 数据源特征 用来定准 adapter 包含数据库或JDBC协议关键字
+ * 一般会通过 产品名_url 合成 如果返回null 上层方法会通过driver_产品名_url合成 + * + * @param datasource 数据源 + * @return String 返回null由上层自动提取 + */ + @Override + public String feature(Object datasource) { + String feature = null; + if (datasource instanceof JdbcTemplate jdbc) { + DataSource ds = jdbc.getDataSource(); + if (ds instanceof DynamicRoutingDataSource) { + String key = DynamicDataSourceContextHolder.peek(); + feature = features.get(key); + if (null == feature) { + Connection con = null; + try { + con = DataSourceUtils.getConnection(ds); + DatabaseMetaData meta = con.getMetaData(); + String url = meta.getURL(); + feature = meta.getDatabaseProductName().toLowerCase().replace(" ", "") + "_" + url; + features.put(key, feature); + } catch (Exception e) { + log.error(e.getMessage(), e); + } finally { + if (null != con && !DataSourceUtils.isConnectionTransactional(con, ds)) { + DataSourceUtils.releaseConnection(con, ds); + } + } + } + } + } + return feature; + } + + /** + * ConfigTable.KEEP_ADAPTER=2 : 根据当前接口判断是否保持同一个数据源绑定同一个adapter
+ * DynamicRoutingDataSource类型的返回false,因为同一个DynamicRoutingDataSource可能对应多类数据库, 如果项目中只有一种数据库 应该直接返回true + * + * @param datasource 数据源 + * @return boolean + */ + @Override + public boolean keepAdapter(Object datasource) { + if (datasource instanceof JdbcTemplate jdbc) { + DataSource ds = jdbc.getDataSource(); + return !(ds instanceof DynamicRoutingDataSource); + } + return true; + } + +} diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java index 4d16f713b..23eb88986 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java +++ b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java @@ -186,7 +186,7 @@ public class GenTableServiceImpl implements IGenTableService { @Override public List selectDbTableListByNames(String[] tableNames, String dataName) { Set tableNameSet = new HashSet<>(List.of(tableNames)); - LinkedHashMap> tablesMap = ServiceProxy.service(dataName).metadata().tables(); + LinkedHashMap> tablesMap = ServiceProxy.metadata().tables(); if (CollUtil.isEmpty(tablesMap)) { return new ArrayList<>(); -- Gitee From bd872f624a043b00af1124607929e04230dbd212 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Sat, 27 Jul 2024 23:57:13 +0800 Subject: [PATCH 076/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20=E4=BB=A3?= =?UTF-8?q?=E7=A0=81=E7=94=9F=E6=88=90=20=E6=95=B0=E6=8D=AE=E6=BA=90?= =?UTF-8?q?=E5=88=87=E6=8D=A2=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 2 +- .../java/org/anyline/proxy/CacheProxy.java | 349 ++++++++++++++++++ .../config/MyBatisDataSourceMonitor.java | 7 + .../service/GenTableServiceImpl.java | 11 +- .../generator/service/IGenTableService.java | 9 + 5 files changed, 371 insertions(+), 7 deletions(-) create mode 100644 ruoyi-modules/ruoyi-generator/src/main/java/org/anyline/proxy/CacheProxy.java diff --git a/pom.xml b/pom.xml index 8c1e35a6a..0764a758a 100644 --- a/pom.xml +++ b/pom.xml @@ -51,7 +51,7 @@ 1.2.83 - 8.7.2-20240726 + 8.7.2-20240727 7.0.1 diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/org/anyline/proxy/CacheProxy.java b/ruoyi-modules/ruoyi-generator/src/main/java/org/anyline/proxy/CacheProxy.java new file mode 100644 index 000000000..b264fc951 --- /dev/null +++ b/ruoyi-modules/ruoyi-generator/src/main/java/org/anyline/proxy/CacheProxy.java @@ -0,0 +1,349 @@ +/* + * Copyright 2006-2023 www.anyline.org + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + + + +package org.anyline.proxy; + +import org.anyline.cache.CacheProvider; +import org.anyline.data.param.ConfigStore; +import org.anyline.data.runtime.DataRuntime; +import org.anyline.entity.OriginRow; +import org.anyline.metadata.*; +import org.anyline.metadata.graph.EdgeTable; +import org.anyline.metadata.graph.VertexTable; +import org.anyline.util.ConfigTable; +import org.anyline.util.encrypt.MD5Util; + +import java.util.LinkedHashMap; +import java.util.List; + +public class CacheProxy { + + private static final ThreadLocal thread_caches = new ThreadLocal<>(); + private static final ThreadLocal thread_names = new ThreadLocal<>(); + private static OriginRow application_caches = new OriginRow(); + private static OriginRow application_names = new OriginRow(); + public static CacheProvider provider; + public CacheProxy() {} + public static void init(CacheProvider provider) { + CacheProxy.provider = provider; + } + private static OriginRow caches(){ + OriginRow result = new OriginRow(); + if(ConfigTable.METADATA_CACHE_SCOPE == 1){ + result = thread_caches.get(); + if(null == result){ + result = new OriginRow(); + thread_caches.set(result); + } + }else if(ConfigTable.METADATA_CACHE_SCOPE == 9){ + if(application_caches.isExpire(ConfigTable.METADATA_CACHE_SECOND*1000)){ + application_caches = new OriginRow(); + } + result = application_caches; + } + return result; + } + private static OriginRow names(){ + OriginRow result = new OriginRow(); + if(ConfigTable.METADATA_CACHE_SCOPE == 1){ + result = thread_names.get(); + if(null == result){ + result = new OriginRow(); + thread_names.set(result); + } + }else if(ConfigTable.METADATA_CACHE_SCOPE == 9){ + if(application_names.isExpire(ConfigTable.METADATA_CACHE_SECOND*1000)){ + application_names = new OriginRow(); + } + result = application_names; + } + return result; + } +/* + + private static Map cache_columns = new HashMap<>(); + private static Map> cache_names = new HashMap<>(); + private static Map cache_table_maps = new HashMap<>(); + private static Map cache_view_maps = new HashMap<>(); +*/ + + + public static String key(DataRuntime runtime, String flag, boolean greedy, Catalog catalog, Schema schema, String pattern, int types, ConfigStore configs){ + StringBuilder key = new StringBuilder(); + key.append(runtime.datasource()).append("_").append(flag).append("_").append(greedy).append("_"); + if(null != catalog){ + key.append(catalog.getName()); + } + key.append("_"); + if(null != schema){ + key.append(schema.getName()); + } + key.append("_").append(pattern).append("_").append(types); + if(null != configs){ + key.append(MD5Util.crypto(configs.json()));; + } + return key.toString().toUpperCase(); + } + public static String key(DataRuntime runtime, String flag, boolean greedy, Table table){ + StringBuilder key = new StringBuilder(); + key.append(runtime.datasource()).append("_").append(flag).append("_").append(greedy).append("_"); + String name = table.getName(); + String catalog = table.getCatalogName(); + String schema = table.getSchemaName(); + if(null != catalog){ + key.append(catalog); + } + key.append("_"); + if(null != schema){ + key.append(schema); + } + key.append("_").append(name); + return key.toString().toUpperCase(); + } + public static String key(DataRuntime runtime, String flag, boolean greedy, Catalog catalog, Schema schema, String pattern){ + StringBuilder key = new StringBuilder(); + key.append(runtime.datasource()).append("_").append(flag).append("_").append(greedy).append("_"); + if(null != catalog){ + key.append(catalog.getName()); + } + key.append("_"); + if(null != schema){ + key.append(schema.getName()); + } + key.append("_").append(pattern); + return key.toString().toUpperCase(); + } + public static String name(String key) { + return names().getString(key.toUpperCase()); + } + public static void name(String key, String origin) { + names().put(key.toUpperCase(), origin); + } + public static List tables(String cache){ + List tables = (List)caches().get(cache); + return tables; + } + public static List masterTables(String cache){ + List tables = (List)caches().get(cache); + return tables; + } + public static List edgeTables(String cache){ + List tables = (List)caches().get(cache); + return tables; + } + public static List vertexTables(String cache){ + List tables = (List)caches().get(cache); + return tables; + } + public static void tables(String cache, List tables){ + caches().put(cache, tables); + } + + public static List views(String cache){ + List view = (List)caches().get(cache); + return view; + } + public static void views(String cache, List view){ + caches().put(cache, view); + } + + public static void cache(String cache, Object value){ + caches().put(cache, value); + } + +/* + public static void name(DriverAdapter adapter, List tables) { + if(null != tables) { + for (Table table : tables) { + name(adapter, table.getCatalog(), table.getSchema(), table.getName(), table.getName()); + } + } + }*/ +/* + private static String key(DriverAdapter adapter, Catalog catalog, Schema schema) { + String key = null; + String catalog_name = null; + String schema_name = null; + if(null != catalog && adapter.supportCatalog()) { + catalog_name = catalog.getName(); + } + if(null != schema && adapter.supportSchema()) { + schema_name = schema.getName(); + } + if(null != catalog_name) { + key = catalog_name; + } + if(null != schema_name) { + if(null != key) { + key += "_" + schema_name; + }else{ + key = schema_name; + } + } + if(null != key) { + key = key.toUpperCase(); + }else{ + key = "ALL"; + } + return key; + } + private static String key(DriverAdapter adapter, Catalog catalog, Schema schema, Table table) { + String table_name = null; + if(null != table) { + table_name = table.getName(); + } + String key = key(adapter, catalog, schema); + if(null != table_name) { + if(null != key) { + key += ":" + table_name; + }else{ + key = table_name; + } + } + if(null != key) { + key = key.toUpperCase(); + } + return key; + }*//* + public static void name(DriverAdapter adapter, Catalog catalog, Schema schema, String name, String origin) { + String group_key = key(adapter, catalog, schema); + Map maps = cache_names.get(group_key); + if(null == maps) { + maps = new HashMap<>(); + cache_names.put(group_key, maps); + } + String name_key = (group_key + ":" + name).toUpperCase(); + maps.put(name_key, origin); + } + public static Map names(DriverAdapter adapter, Catalog catalog, Schema schema) { + return cache_names.get(key(adapter, catalog, schema)); + } + public static String name(DriverAdapter adapter, boolean greedy, Catalog catalog, Schema schema, String name) { + if(null == name) { + return null; + } + String group_key = key(adapter, catalog, schema); + Map maps = cache_names.get(group_key); + if(null != maps) { + String name_key = (group_key + ":" + name).toUpperCase(); + String origin = maps.get(name_key); + if(null != origin) { + return origin; + } + } + if(greedy) { + for (Map names : cache_names.values()) { + for(String item:names.keySet()) { + if(item.endsWith((":"+name).toUpperCase())) { + return names.get(item); + } + } + } + } + return null; + }*/ + /*public static String datasource(String datasource) { + if(null == datasource || "common".equalsIgnoreCase(datasource)) { + //datasource = DataSourceHolder.curDataSource(); + } + if(null == datasource) { + datasource = "default"; + } + return datasource.toUpperCase(); + } +*//* + public static String tableName(String datasource, String name) { + DataRow row = cache_table_maps.get(datasource(datasource)); + if(null != row) { + return row.getString(name); + } + return name; + } + public static String viewName(String datasource, String name) { + DataRow row = cache_view_maps.get(datasource(datasource)); + if(null != row) { + return row.getString(name); + } + return name; + } + public static void setTableMaps(String datasource, DataRow maps) { + cache_table_maps.put(datasource(datasource), maps); + } + public static void setViewMaps(String datasource, DataRow maps) { + cache_view_maps.put(datasource(datasource), maps); + }*/ + + + /* public static DataRow getTableMaps(String datasource) { + DataRow row = cache_table_maps.get(datasource(datasource)); + if(null == row) { + row = new DataRow(); + cache_table_maps.put(datasource(datasource), row); + } + return row; + }*/ + + /* public static DataRow getViewMaps(String datasource) { + DataRow row = cache_view_maps.get(datasource(datasource)); + if(null == row) { + row = new DataRow(); + cache_view_maps.put(datasource(datasource), row); + } + return row; + }*/ + + + public static LinkedHashMap columns(String key) { + return (LinkedHashMap) caches().get(key); + } + public static LinkedHashMap tags(String key) { + return (LinkedHashMap) caches().get(key); + } + + + /* public static void columns(DriverAdapter adapter, String datasource, Table table, LinkedHashMap columns) { + if(null == table) { + return; + } + String cache = ConfigTable.getString("METADATA_CACHE_KEY"); + String key = datasource(datasource) + "_COLUMNS_" + key(adapter, table.getCatalog(), table.getSchema(), table); + key = key.toUpperCase(); + if(null != provider && BasicUtil.isNotEmpty(cache) && !ConfigTable.IS_CACHE_DISABLED) { + provider.put(cache, key, columns); + }else{ + DataRow static_cache = new DataRow(); + static_cache.put("keys", columns); + cache_columns.put(key, static_cache); + } + } */ + + public static void clear() {/* + if(null != provider && !ConfigTable.IS_CACHE_DISABLED) { + String cache = ConfigTable.METADATA_CACHE_KEY; + if(BasicUtil.isNotEmpty(cache)) { + provider.clear(cache); + } + }else{ + cache_columns.clear(); + }*/ + + caches().clear(); + names().clear(); + } + +} diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/config/MyBatisDataSourceMonitor.java b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/config/MyBatisDataSourceMonitor.java index 906733b08..bb0760621 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/config/MyBatisDataSourceMonitor.java +++ b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/config/MyBatisDataSourceMonitor.java @@ -15,6 +15,11 @@ import java.sql.DatabaseMetaData; import java.util.HashMap; import java.util.Map; +/** + * anyline 适配 动态数据源改造 + * + * @author Lion Li + */ @Slf4j @Component public class MyBatisDataSourceMonitor implements DataSourceMonitor { @@ -22,6 +27,8 @@ public class MyBatisDataSourceMonitor implements DataSourceMonitor { public MyBatisDataSourceMonitor() { // 调整执行模式为自定义 ConfigTable.KEEP_ADAPTER = 2; + // 禁用缓存 + ConfigTable.METADATA_CACHE_SCOPE = 0; } private final Map features = new HashMap<>(); diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java index 23eb88986..b4abc90c0 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java +++ b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java @@ -17,13 +17,13 @@ import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.anyline.metadata.Column; import org.anyline.metadata.Table; -import org.anyline.proxy.CacheProxy; import org.anyline.proxy.ServiceProxy; import org.apache.velocity.Template; import org.apache.velocity.VelocityContext; import org.apache.velocity.app.Velocity; import org.dromara.common.core.constant.Constants; import org.dromara.common.core.exception.ServiceException; +import org.dromara.common.core.utils.SpringUtils; import org.dromara.common.core.utils.StreamUtils; import org.dromara.common.core.utils.StringUtils; import org.dromara.common.core.utils.file.FileUtils; @@ -269,7 +269,7 @@ public class GenTableServiceImpl implements IGenTableService { int row = baseMapper.insert(table); if (row > 0) { // 保存列信息 - List genTableColumns = selectDbTableColumnsByName(tableName, dataName); + List genTableColumns = SpringUtils.getAopProxy(this).selectDbTableColumnsByName(tableName, dataName); List saveColumns = new ArrayList<>(); for (GenTableColumn column : genTableColumns) { GenUtils.initColumnField(column, table); @@ -293,9 +293,8 @@ public class GenTableServiceImpl implements IGenTableService { * @return 列信息 */ @DS("#dataName") - private List selectDbTableColumnsByName(String tableName, String dataName) { - // 清理anyline缓存 - CacheProxy.clear(); + @Override + public List selectDbTableColumnsByName(String tableName, String dataName) { LinkedHashMap columns = ServiceProxy.metadata().columns(tableName); List tableColumns = new ArrayList<>(); columns.forEach((columnName, column) -> { @@ -407,7 +406,7 @@ public class GenTableServiceImpl implements IGenTableService { List tableColumns = table.getColumns(); Map tableColumnMap = StreamUtils.toIdentityMap(tableColumns, GenTableColumn::getColumnName); - List dbTableColumns = selectDbTableColumnsByName(table.getTableName(), table.getDataName()); + List dbTableColumns = SpringUtils.getAopProxy(this).selectDbTableColumnsByName(table.getTableName(), table.getDataName()); if (CollUtil.isEmpty(dbTableColumns)) { throw new ServiceException("同步数据失败,原表结构不存在"); } diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/IGenTableService.java b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/IGenTableService.java index 2a2fb8228..b2c20c57d 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/IGenTableService.java +++ b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/IGenTableService.java @@ -85,6 +85,15 @@ public interface IGenTableService { */ void importGenTable(List tableList, String dataName); + /** + * 根据表名称查询列信息 + * + * @param tableName 表名称 + * @param dataName 数据源名称 + * @return 列信息 + */ + List selectDbTableColumnsByName(String tableName, String dataName); + /** * 预览代码 * -- Gitee From 7297053dd63273fbb0eb68686c7e90f72945345b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Mon, 29 Jul 2024 12:27:51 +0800 Subject: [PATCH 077/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20=E7=99=BB?= =?UTF-8?q?=E5=87=BA=E5=90=8E=E9=87=8D=E6=96=B0=E7=99=BB=E5=BD=95=20sse?= =?UTF-8?q?=E6=8E=A8=E9=80=81=E6=8A=A5=E9=94=99=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/org/dromara/common/sse/controller/SseController.java | 2 ++ .../java/org/dromara/common/sse/core/SseEmitterManager.java | 1 - 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/controller/SseController.java b/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/controller/SseController.java index 57c7c1e82..a28c1fdcc 100644 --- a/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/controller/SseController.java +++ b/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/controller/SseController.java @@ -1,5 +1,6 @@ package org.dromara.common.sse.controller; +import cn.dev33.satoken.annotation.SaIgnore; import cn.dev33.satoken.stp.StpUtil; import lombok.RequiredArgsConstructor; import org.dromara.common.core.domain.R; @@ -26,6 +27,7 @@ public class SseController { return sseEmitterManager.connect(userId, tokenValue); } + @SaIgnore @GetMapping(value = "${sse.path}/close") public R close() { String tokenValue = StpUtil.getTokenValue(); diff --git a/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/core/SseEmitterManager.java b/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/core/SseEmitterManager.java index 276df102d..0f096fac5 100644 --- a/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/core/SseEmitterManager.java +++ b/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/core/SseEmitterManager.java @@ -73,7 +73,6 @@ public class SseEmitterManager { try { entry.getValue().send(SseEmitter.event() .name("message") - .reconnectTime(-1L) .data(message)); } catch (Exception e) { emitters.remove(entry.getKey()); -- Gitee From 239d59c864af365d2b61dc99b2cfa21bf813896b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Mon, 29 Jul 2024 12:44:45 +0800 Subject: [PATCH 078/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20sse?= =?UTF-8?q?=E5=8F=91=E9=80=81=E6=B6=88=E6=81=AF=20=E5=A2=9E=E5=8A=A0token?= =?UTF-8?q?=E6=9C=89=E6=95=88=E6=9C=9F=E5=88=A4=E6=96=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/org/dromara/common/sse/core/SseEmitterManager.java | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/core/SseEmitterManager.java b/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/core/SseEmitterManager.java index 0f096fac5..91dd71dbb 100644 --- a/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/core/SseEmitterManager.java +++ b/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/core/SseEmitterManager.java @@ -1,5 +1,6 @@ package org.dromara.common.sse.core; +import cn.dev33.satoken.stp.StpUtil; import cn.hutool.core.collection.CollUtil; import lombok.extern.slf4j.Slf4j; import org.dromara.common.redis.utils.RedisUtils; @@ -71,6 +72,11 @@ public class SseEmitterManager { if (emitters != null) { for (Map.Entry entry : emitters.entrySet()) { try { + // token 无效或已过期 + if (StpUtil.stpLogic.getTokenActiveTimeoutByToken(entry.getKey()) < -1) { + emitters.remove(entry.getKey()); + continue; + } entry.getValue().send(SseEmitter.event() .name("message") .data(message)); -- Gitee From 857a0b10065bab56152dcc60ce0c92106cb2550f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Mon, 29 Jul 2024 14:33:54 +0800 Subject: [PATCH 079/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96oss=E6=9F=A5?= =?UTF-8?q?=E8=AF=A2=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/dromara/system/service/impl/SysOssServiceImpl.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssServiceImpl.java index d167e8dcc..186653182 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssServiceImpl.java @@ -77,8 +77,9 @@ public class SysOssServiceImpl implements ISysOssService, OssService { @Override public List listByIds(Collection ossIds) { List list = new ArrayList<>(); + SysOssServiceImpl ossService = SpringUtils.getAopProxy(this); for (Long id : ossIds) { - SysOssVo vo = SpringUtils.getAopProxy(this).getById(id); + SysOssVo vo = ossService.getById(id); if (ObjectUtil.isNotNull(vo)) { try { list.add(this.matchingUrl(vo)); @@ -100,8 +101,9 @@ public class SysOssServiceImpl implements ISysOssService, OssService { @Override public String selectUrlByIds(String ossIds) { List list = new ArrayList<>(); + SysOssServiceImpl ossService = SpringUtils.getAopProxy(this); for (Long id : StringUtils.splitTo(ossIds, Convert::toLong)) { - SysOssVo vo = SpringUtils.getAopProxy(this).getById(id); + SysOssVo vo = ossService.getById(id); if (ObjectUtil.isNotNull(vo)) { try { list.add(this.matchingUrl(vo).getUrl()); -- Gitee From 08fece39d8fa6c9bf562f8d1d8cf951bf1cad3cc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Mon, 29 Jul 2024 15:04:54 +0800 Subject: [PATCH 080/540] =?UTF-8?q?add=20=E6=96=B0=E5=A2=9E=20=E6=9B=B4?= =?UTF-8?q?=E5=A4=9A=E8=84=B1=E6=95=8F=E7=AD=96=E7=95=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sensitive/core/SensitiveStrategy.java | 47 ++++++++++++++++++- 1 file changed, 46 insertions(+), 1 deletion(-) diff --git a/ruoyi-common/ruoyi-common-sensitive/src/main/java/org/dromara/common/sensitive/core/SensitiveStrategy.java b/ruoyi-common/ruoyi-common-sensitive/src/main/java/org/dromara/common/sensitive/core/SensitiveStrategy.java index 9d1978a14..6de52c0e0 100644 --- a/ruoyi-common/ruoyi-common-sensitive/src/main/java/org/dromara/common/sensitive/core/SensitiveStrategy.java +++ b/ruoyi-common/ruoyi-common-sensitive/src/main/java/org/dromara/common/sensitive/core/SensitiveStrategy.java @@ -37,7 +37,52 @@ public enum SensitiveStrategy { /** * 银行卡 */ - BANK_CARD(DesensitizedUtil::bankCard); + BANK_CARD(DesensitizedUtil::bankCard), + + /** + * 中文名 + */ + CHINESE_NAME(DesensitizedUtil::chineseName), + + /** + * 固定电话 + */ + FIXED_PHONE(DesensitizedUtil::fixedPhone), + + /** + * 用户ID + */ + user_ID(s -> String.valueOf(DesensitizedUtil.userId())), + + /** + * ipv4 + */ + IPV4(DesensitizedUtil::ipv4), + + /** + * ipv6 + */ + IPV6(DesensitizedUtil::ipv6), + + /** + * 中国大陆车牌,包含普通车辆、新能源车辆 + */ + CAR_LICENSE(DesensitizedUtil::carLicense), + + /** + * 只显示第一个字符 + */ + FIRST_MASK(DesensitizedUtil::firstMask), + + /** + * 清空为null + */ + CLEAR(s -> DesensitizedUtil.clear()), + + /** + * 清空为"" + */ + CLEAR_TO_NULL(s -> DesensitizedUtil.clearToNull()); //可自行添加其他脱敏策略 -- Gitee From 508d7a37e31c6c306c882f3ef11528df27885e8c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Mon, 29 Jul 2024 15:18:23 +0800 Subject: [PATCH 081/540] =?UTF-8?q?update=20=E8=84=B1=E6=95=8F=E7=AD=96?= =?UTF-8?q?=E7=95=A5=E4=BC=98=E5=8C=96=E5=A2=9E=E5=8A=A0=E5=AF=86=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dromara/common/sensitive/core/SensitiveStrategy.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/ruoyi-common/ruoyi-common-sensitive/src/main/java/org/dromara/common/sensitive/core/SensitiveStrategy.java b/ruoyi-common/ruoyi-common-sensitive/src/main/java/org/dromara/common/sensitive/core/SensitiveStrategy.java index 6de52c0e0..995dcbd96 100644 --- a/ruoyi-common/ruoyi-common-sensitive/src/main/java/org/dromara/common/sensitive/core/SensitiveStrategy.java +++ b/ruoyi-common/ruoyi-common-sensitive/src/main/java/org/dromara/common/sensitive/core/SensitiveStrategy.java @@ -52,7 +52,12 @@ public enum SensitiveStrategy { /** * 用户ID */ - user_ID(s -> String.valueOf(DesensitizedUtil.userId())), + USER_ID(s -> String.valueOf(DesensitizedUtil.userId())), + + /** + * 密码 + */ + PASSWORD(DesensitizedUtil::password), /** * ipv4 -- Gitee From 2a340d4d835bc30a6b57f0a49fadb005299181b0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Mon, 29 Jul 2024 17:47:01 +0800 Subject: [PATCH 082/540] update anyline 8.7.2-20240728 --- pom.xml | 2 +- .../java/org/anyline/proxy/CacheProxy.java | 349 ------------------ 2 files changed, 1 insertion(+), 350 deletions(-) delete mode 100644 ruoyi-modules/ruoyi-generator/src/main/java/org/anyline/proxy/CacheProxy.java diff --git a/pom.xml b/pom.xml index 0764a758a..1dc79cf0d 100644 --- a/pom.xml +++ b/pom.xml @@ -51,7 +51,7 @@ 1.2.83 - 8.7.2-20240727 + 8.7.2-20240728 7.0.1 diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/org/anyline/proxy/CacheProxy.java b/ruoyi-modules/ruoyi-generator/src/main/java/org/anyline/proxy/CacheProxy.java deleted file mode 100644 index b264fc951..000000000 --- a/ruoyi-modules/ruoyi-generator/src/main/java/org/anyline/proxy/CacheProxy.java +++ /dev/null @@ -1,349 +0,0 @@ -/* - * Copyright 2006-2023 www.anyline.org - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - - - -package org.anyline.proxy; - -import org.anyline.cache.CacheProvider; -import org.anyline.data.param.ConfigStore; -import org.anyline.data.runtime.DataRuntime; -import org.anyline.entity.OriginRow; -import org.anyline.metadata.*; -import org.anyline.metadata.graph.EdgeTable; -import org.anyline.metadata.graph.VertexTable; -import org.anyline.util.ConfigTable; -import org.anyline.util.encrypt.MD5Util; - -import java.util.LinkedHashMap; -import java.util.List; - -public class CacheProxy { - - private static final ThreadLocal thread_caches = new ThreadLocal<>(); - private static final ThreadLocal thread_names = new ThreadLocal<>(); - private static OriginRow application_caches = new OriginRow(); - private static OriginRow application_names = new OriginRow(); - public static CacheProvider provider; - public CacheProxy() {} - public static void init(CacheProvider provider) { - CacheProxy.provider = provider; - } - private static OriginRow caches(){ - OriginRow result = new OriginRow(); - if(ConfigTable.METADATA_CACHE_SCOPE == 1){ - result = thread_caches.get(); - if(null == result){ - result = new OriginRow(); - thread_caches.set(result); - } - }else if(ConfigTable.METADATA_CACHE_SCOPE == 9){ - if(application_caches.isExpire(ConfigTable.METADATA_CACHE_SECOND*1000)){ - application_caches = new OriginRow(); - } - result = application_caches; - } - return result; - } - private static OriginRow names(){ - OriginRow result = new OriginRow(); - if(ConfigTable.METADATA_CACHE_SCOPE == 1){ - result = thread_names.get(); - if(null == result){ - result = new OriginRow(); - thread_names.set(result); - } - }else if(ConfigTable.METADATA_CACHE_SCOPE == 9){ - if(application_names.isExpire(ConfigTable.METADATA_CACHE_SECOND*1000)){ - application_names = new OriginRow(); - } - result = application_names; - } - return result; - } -/* - - private static Map cache_columns = new HashMap<>(); - private static Map> cache_names = new HashMap<>(); - private static Map cache_table_maps = new HashMap<>(); - private static Map cache_view_maps = new HashMap<>(); -*/ - - - public static String key(DataRuntime runtime, String flag, boolean greedy, Catalog catalog, Schema schema, String pattern, int types, ConfigStore configs){ - StringBuilder key = new StringBuilder(); - key.append(runtime.datasource()).append("_").append(flag).append("_").append(greedy).append("_"); - if(null != catalog){ - key.append(catalog.getName()); - } - key.append("_"); - if(null != schema){ - key.append(schema.getName()); - } - key.append("_").append(pattern).append("_").append(types); - if(null != configs){ - key.append(MD5Util.crypto(configs.json()));; - } - return key.toString().toUpperCase(); - } - public static String key(DataRuntime runtime, String flag, boolean greedy, Table table){ - StringBuilder key = new StringBuilder(); - key.append(runtime.datasource()).append("_").append(flag).append("_").append(greedy).append("_"); - String name = table.getName(); - String catalog = table.getCatalogName(); - String schema = table.getSchemaName(); - if(null != catalog){ - key.append(catalog); - } - key.append("_"); - if(null != schema){ - key.append(schema); - } - key.append("_").append(name); - return key.toString().toUpperCase(); - } - public static String key(DataRuntime runtime, String flag, boolean greedy, Catalog catalog, Schema schema, String pattern){ - StringBuilder key = new StringBuilder(); - key.append(runtime.datasource()).append("_").append(flag).append("_").append(greedy).append("_"); - if(null != catalog){ - key.append(catalog.getName()); - } - key.append("_"); - if(null != schema){ - key.append(schema.getName()); - } - key.append("_").append(pattern); - return key.toString().toUpperCase(); - } - public static String name(String key) { - return names().getString(key.toUpperCase()); - } - public static void name(String key, String origin) { - names().put(key.toUpperCase(), origin); - } - public static List tables(String cache){ - List tables = (List)caches().get(cache); - return tables; - } - public static List masterTables(String cache){ - List tables = (List)caches().get(cache); - return tables; - } - public static List edgeTables(String cache){ - List tables = (List)caches().get(cache); - return tables; - } - public static List vertexTables(String cache){ - List tables = (List)caches().get(cache); - return tables; - } - public static void tables(String cache, List tables){ - caches().put(cache, tables); - } - - public static List views(String cache){ - List view = (List)caches().get(cache); - return view; - } - public static void views(String cache, List view){ - caches().put(cache, view); - } - - public static void cache(String cache, Object value){ - caches().put(cache, value); - } - -/* - public static void name(DriverAdapter adapter, List tables) { - if(null != tables) { - for (Table table : tables) { - name(adapter, table.getCatalog(), table.getSchema(), table.getName(), table.getName()); - } - } - }*/ -/* - private static String key(DriverAdapter adapter, Catalog catalog, Schema schema) { - String key = null; - String catalog_name = null; - String schema_name = null; - if(null != catalog && adapter.supportCatalog()) { - catalog_name = catalog.getName(); - } - if(null != schema && adapter.supportSchema()) { - schema_name = schema.getName(); - } - if(null != catalog_name) { - key = catalog_name; - } - if(null != schema_name) { - if(null != key) { - key += "_" + schema_name; - }else{ - key = schema_name; - } - } - if(null != key) { - key = key.toUpperCase(); - }else{ - key = "ALL"; - } - return key; - } - private static String key(DriverAdapter adapter, Catalog catalog, Schema schema, Table table) { - String table_name = null; - if(null != table) { - table_name = table.getName(); - } - String key = key(adapter, catalog, schema); - if(null != table_name) { - if(null != key) { - key += ":" + table_name; - }else{ - key = table_name; - } - } - if(null != key) { - key = key.toUpperCase(); - } - return key; - }*//* - public static void name(DriverAdapter adapter, Catalog catalog, Schema schema, String name, String origin) { - String group_key = key(adapter, catalog, schema); - Map maps = cache_names.get(group_key); - if(null == maps) { - maps = new HashMap<>(); - cache_names.put(group_key, maps); - } - String name_key = (group_key + ":" + name).toUpperCase(); - maps.put(name_key, origin); - } - public static Map names(DriverAdapter adapter, Catalog catalog, Schema schema) { - return cache_names.get(key(adapter, catalog, schema)); - } - public static String name(DriverAdapter adapter, boolean greedy, Catalog catalog, Schema schema, String name) { - if(null == name) { - return null; - } - String group_key = key(adapter, catalog, schema); - Map maps = cache_names.get(group_key); - if(null != maps) { - String name_key = (group_key + ":" + name).toUpperCase(); - String origin = maps.get(name_key); - if(null != origin) { - return origin; - } - } - if(greedy) { - for (Map names : cache_names.values()) { - for(String item:names.keySet()) { - if(item.endsWith((":"+name).toUpperCase())) { - return names.get(item); - } - } - } - } - return null; - }*/ - /*public static String datasource(String datasource) { - if(null == datasource || "common".equalsIgnoreCase(datasource)) { - //datasource = DataSourceHolder.curDataSource(); - } - if(null == datasource) { - datasource = "default"; - } - return datasource.toUpperCase(); - } -*//* - public static String tableName(String datasource, String name) { - DataRow row = cache_table_maps.get(datasource(datasource)); - if(null != row) { - return row.getString(name); - } - return name; - } - public static String viewName(String datasource, String name) { - DataRow row = cache_view_maps.get(datasource(datasource)); - if(null != row) { - return row.getString(name); - } - return name; - } - public static void setTableMaps(String datasource, DataRow maps) { - cache_table_maps.put(datasource(datasource), maps); - } - public static void setViewMaps(String datasource, DataRow maps) { - cache_view_maps.put(datasource(datasource), maps); - }*/ - - - /* public static DataRow getTableMaps(String datasource) { - DataRow row = cache_table_maps.get(datasource(datasource)); - if(null == row) { - row = new DataRow(); - cache_table_maps.put(datasource(datasource), row); - } - return row; - }*/ - - /* public static DataRow getViewMaps(String datasource) { - DataRow row = cache_view_maps.get(datasource(datasource)); - if(null == row) { - row = new DataRow(); - cache_view_maps.put(datasource(datasource), row); - } - return row; - }*/ - - - public static LinkedHashMap columns(String key) { - return (LinkedHashMap) caches().get(key); - } - public static LinkedHashMap tags(String key) { - return (LinkedHashMap) caches().get(key); - } - - - /* public static void columns(DriverAdapter adapter, String datasource, Table table, LinkedHashMap columns) { - if(null == table) { - return; - } - String cache = ConfigTable.getString("METADATA_CACHE_KEY"); - String key = datasource(datasource) + "_COLUMNS_" + key(adapter, table.getCatalog(), table.getSchema(), table); - key = key.toUpperCase(); - if(null != provider && BasicUtil.isNotEmpty(cache) && !ConfigTable.IS_CACHE_DISABLED) { - provider.put(cache, key, columns); - }else{ - DataRow static_cache = new DataRow(); - static_cache.put("keys", columns); - cache_columns.put(key, static_cache); - } - } */ - - public static void clear() {/* - if(null != provider && !ConfigTable.IS_CACHE_DISABLED) { - String cache = ConfigTable.METADATA_CACHE_KEY; - if(BasicUtil.isNotEmpty(cache)) { - provider.clear(cache); - } - }else{ - cache_columns.clear(); - }*/ - - caches().clear(); - names().clear(); - } - -} -- Gitee From fcf8516f0d9c50237ab3ebb47a6ae17f639ce3ad Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Wed, 31 Jul 2024 09:48:05 +0800 Subject: [PATCH 083/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E9=80=82?= =?UTF-8?q?=E9=85=8D=20anyline=20=E6=96=B0=E6=94=B9=E5=8A=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../config/MyBatisDataSourceMonitor.java | 21 +++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/config/MyBatisDataSourceMonitor.java b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/config/MyBatisDataSourceMonitor.java index bb0760621..8c0f352fa 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/config/MyBatisDataSourceMonitor.java +++ b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/config/MyBatisDataSourceMonitor.java @@ -4,6 +4,7 @@ import com.baomidou.dynamic.datasource.DynamicRoutingDataSource; import com.baomidou.dynamic.datasource.toolkit.DynamicDataSourceContextHolder; import lombok.extern.slf4j.Slf4j; import org.anyline.data.datasource.DataSourceMonitor; +import org.anyline.data.runtime.DataRuntime; import org.anyline.util.ConfigTable; import org.springframework.jdbc.core.JdbcTemplate; import org.springframework.jdbc.datasource.DataSourceUtils; @@ -41,7 +42,7 @@ public class MyBatisDataSourceMonitor implements DataSourceMonitor { * @return String 返回null由上层自动提取 */ @Override - public String feature(Object datasource) { + public String feature(DataRuntime runtime, Object datasource) { String feature = null; if (datasource instanceof JdbcTemplate jdbc) { DataSource ds = jdbc.getDataSource(); @@ -69,6 +70,22 @@ public class MyBatisDataSourceMonitor implements DataSourceMonitor { return feature; } + /** + * 数据源唯一标识 如果不实现则默认feature + * @param datasource 数据源 + * @return String 返回null由上层自动提取 + */ + @Override + public String key(DataRuntime runtime, Object datasource) { + if(datasource instanceof JdbcTemplate jdbc){ + DataSource ds = jdbc.getDataSource(); + if(ds instanceof DynamicRoutingDataSource){ + return DynamicDataSourceContextHolder.peek(); + } + } + return runtime.getKey(); + } + /** * ConfigTable.KEEP_ADAPTER=2 : 根据当前接口判断是否保持同一个数据源绑定同一个adapter
* DynamicRoutingDataSource类型的返回false,因为同一个DynamicRoutingDataSource可能对应多类数据库, 如果项目中只有一种数据库 应该直接返回true @@ -77,7 +94,7 @@ public class MyBatisDataSourceMonitor implements DataSourceMonitor { * @return boolean */ @Override - public boolean keepAdapter(Object datasource) { + public boolean keepAdapter(DataRuntime runtime, Object datasource) { if (datasource instanceof JdbcTemplate jdbc) { DataSource ds = jdbc.getDataSource(); return !(ds instanceof DynamicRoutingDataSource); -- Gitee From 5aa346327f26008f103740cf2a3754079feaae34 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Wed, 31 Jul 2024 13:02:33 +0800 Subject: [PATCH 084/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20=E4=BB=A3?= =?UTF-8?q?=E7=A0=81=E7=94=9F=E6=88=90=20=E9=94=99=E8=AF=AF=E5=8C=B9?= =?UTF-8?q?=E9=85=8D=E8=A1=A8=E5=90=8D=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/org/dromara/generator/service/GenTableServiceImpl.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java index b4abc90c0..e1e340ff1 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java +++ b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java @@ -143,7 +143,7 @@ public class GenTableServiceImpl implements IGenTableService { if (CollUtil.isEmpty(tableNames)) { return true; } - return !StringUtils.containsAnyIgnoreCase(x.getName(), tableArrays); + return !StringUtils.equalsAnyIgnoreCase(x.getName(), tableArrays); }) .filter(x -> { boolean nameMatches = true; -- Gitee From 6b14bce25e87ca7e9ccee096e73f7c8816205913 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Wed, 31 Jul 2024 17:09:16 +0800 Subject: [PATCH 085/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E7=9B=91?= =?UTF-8?q?=E6=8E=A7=E4=BD=BF=E7=94=A8=E7=8B=AC=E7=AB=8Bweb=E4=BE=9D?= =?UTF-8?q?=E8=B5=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ruoyi-extend/ruoyi-monitor-admin/pom.xml | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/ruoyi-extend/ruoyi-monitor-admin/pom.xml b/ruoyi-extend/ruoyi-monitor-admin/pom.xml index 91194c61b..77c9eb71a 100644 --- a/ruoyi-extend/ruoyi-monitor-admin/pom.xml +++ b/ruoyi-extend/ruoyi-monitor-admin/pom.xml @@ -12,10 +12,21 @@ ruoyi-monitor-admin - + org.springframework.boot spring-boot-starter-web + + + spring-boot-starter-tomcat + org.springframework.boot + + + + + + org.springframework.boot + spring-boot-starter-undertow -- Gitee From 2869d590e6ffeb6ab7ff66611e4b74fdddfa0ba7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 1 Aug 2024 14:55:43 +0800 Subject: [PATCH 086/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20sse=20?= =?UTF-8?q?=E5=85=B3=E9=97=AD=E8=BF=9E=E6=8E=A5=E5=90=84=E7=A7=8D=E5=BC=82?= =?UTF-8?q?=E5=B8=B8=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/org/dromara/common/sse/core/SseEmitterManager.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/core/SseEmitterManager.java b/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/core/SseEmitterManager.java index 91dd71dbb..aa7960c24 100644 --- a/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/core/SseEmitterManager.java +++ b/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/core/SseEmitterManager.java @@ -46,7 +46,7 @@ public class SseEmitterManager { if (emitters != null) { try { emitters.get(token).send(SseEmitter.event().comment("disconnected")); - } catch (IOException ignore) { + } catch (Exception ignore) { } emitters.remove(token); } -- Gitee From 588a47897abd7da0cf2860fb4da9e9ddddc55880 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 1 Aug 2024 15:15:54 +0800 Subject: [PATCH 087/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20=E8=BD=AC?= =?UTF-8?q?=E6=8D=A2=E6=A8=A1=E5=9E=8B=E7=BC=BA=E5=B0=91=E5=88=86=E7=B1=BB?= =?UTF-8?q?=E5=AD=97=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../workflow/service/impl/ActProcessDefinitionServiceImpl.java | 1 + 1 file changed, 1 insertion(+) diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActProcessDefinitionServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActProcessDefinitionServiceImpl.java index 2680db8ef..e3c2ed67a 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActProcessDefinitionServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActProcessDefinitionServiceImpl.java @@ -288,6 +288,7 @@ public class ActProcessDefinitionServiceImpl implements IActProcessDefinitionSer Model modelData = repositoryService.newModel(); modelData.setKey(pd.getKey()); modelData.setName(pd.getName()); + modelData.setCategory(pd.getCategory()); modelData.setTenantId(pd.getTenantId()); repositoryService.saveModel(modelData); repositoryService.addModelEditorSource(modelData.getId(), IoUtil.readBytes(inputStream)); -- Gitee From ecc3472fb72cb05682dd24d8cd02ed4c824a97e1 Mon Sep 17 00:00:00 2001 From: hfdy2019 <5463852+hfdy2019@user.noreply.gitee.com> Date: Thu, 1 Aug 2024 23:07:42 +0800 Subject: [PATCH 088/540] =?UTF-8?q?=E5=90=8C=E6=AD=A5=E6=9C=80=E6=96=B0?= =?UTF-8?q?=E4=BB=A3=E7=A0=81=EF=BC=8C=E8=A7=A3=E5=86=B3=E5=86=B2=E7=AA=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 1 + ruoyi-admin/pom.xml | 8 +- .../src/main/resources/application-dev.yml | 14 +-- .../src/main/resources/application.yml | 2 +- .../common/mybatis/annotation/DataColumn.java | 16 ++-- ruoyi-modules/ruoyi-generator/pom.xml | 10 +- .../config/MyBatisDataSourceMonitor.java | 15 +-- .../service/GenTableServiceImpl.java | 93 ++++++++++--------- .../service/impl/TestLeaveServiceImpl.java | 5 +- 9 files changed, 84 insertions(+), 80 deletions(-) diff --git a/pom.xml b/pom.xml index d7031e7d0..0111e11cb 100644 --- a/pom.xml +++ b/pom.xml @@ -26,6 +26,7 @@ 2.3 1.38.0 1.9.3 + 3.0.3 5.8.29 4.10.0 3.2.3 diff --git a/ruoyi-admin/pom.xml b/ruoyi-admin/pom.xml index 9e9780464..5b232b4bd 100644 --- a/ruoyi-admin/pom.xml +++ b/ruoyi-admin/pom.xml @@ -35,10 +35,10 @@ - - - - + + org.postgresql + postgresql + diff --git a/ruoyi-admin/src/main/resources/application-dev.yml b/ruoyi-admin/src/main/resources/application-dev.yml index b00f143c4..a0ea68b48 100644 --- a/ruoyi-admin/src/main/resources/application-dev.yml +++ b/ruoyi-admin/src/main/resources/application-dev.yml @@ -13,7 +13,7 @@ spring.boot.admin.client: --- # snail-job 配置 snail-job: - enabled: true + enabled: false # 需要在 SnailJob 后台组管理创建对应名称的组,然后创建任务的时候选择对应的组,才能正确分派任务 group: "ruoyi_group" # SnailJob 接入验证令牌 详见 script/sql/snail_job.sql `sj_group_config` 表 @@ -58,14 +58,14 @@ mybatis-flex: master: # jdbc 所有参数配置参考 https://lionli.blog.csdn.net/article/details/122018562 # rewriteBatchedStatements=true 批处理优化 大幅提升批量插入更新删除性能(对数据库有性能损耗 使用批量操作应考虑性能问题) - url: jdbc:mysql://localhost:3306/ry-vue?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&autoReconnect=true&rewriteBatchedStatements=true&allowPublicKeyRetrieval=true + url: jdbc:mysql://localhost:3306/ry-vue?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&autoReconnect=true&rewriteBatchedStatements=true&allowPublicKeyRetrieval=true username: root - password: 123456 + password: 905303 # 从库数据源 slave: - url: jdbc:mysql://localhost:3306/ry-vue?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&autoReconnect=true&rewriteBatchedStatements=true&allowPublicKeyRetrieval=true - username: root - password: 123456 + url: jdbc:postgresql://localhost:5432/ry-vue?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&autoReconnect=true&rewriteBatchedStatements=true&allowPublicKeyRetrieval=true + username: postgres + password: postgres # oracle: # type: ${spring.datasource.type} # driverClassName: oracle.jdbc.OracleDriver @@ -99,7 +99,7 @@ spring.data: # 数据库索引 database: 0 # redis 密码必须配置 - password: ruoyi123 +# password: ruoyi123 # 连接超时时间 timeout: 10s # 是否开启ssl diff --git a/ruoyi-admin/src/main/resources/application.yml b/ruoyi-admin/src/main/resources/application.yml index 99a6a4101..f508e82e9 100644 --- a/ruoyi-admin/src/main/resources/application.yml +++ b/ruoyi-admin/src/main/resources/application.yml @@ -25,7 +25,7 @@ server: port: 8080 servlet: # 应用的访问路径 - context-path: / + context-path: /ruoyi-plus/ # undertow 配置 undertow: # HTTP post内容的最大大小。当值为-1时,默认值为大小是无限的 diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/annotation/DataColumn.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/annotation/DataColumn.java index e7f74f7cd..489ad5f7a 100644 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/annotation/DataColumn.java +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/annotation/DataColumn.java @@ -32,6 +32,14 @@ public class DataColumn { */ private String[] value; + /** + * 权限标识符 用于通过菜单权限标识符来获取数据权限 + * 拥有此标识符的角色 将不会拼接此角色的数据过滤sql + * + * @return 权限标识符 + */ +// private String permission; + public static DataColumn of(String[] key, String[] value) { return new DataColumn(key, value); } @@ -44,12 +52,4 @@ public class DataColumn { public static DataColumn of(String key, QueryColumn value) { return new DataColumn(new String[]{key}, new String[]{"`" + value.getTable().getName() + "`.`" + value.getName() + "`"}); } - - /** - * 权限标识符 用于通过菜单权限标识符来获取数据权限 - * 拥有此标识符的角色 将不会拼接此角色的数据过滤sql - * - * @return 权限标识符 - */ - String permission() default ""; } diff --git a/ruoyi-modules/ruoyi-generator/pom.xml b/ruoyi-modules/ruoyi-generator/pom.xml index b7fd94f59..553a7e09f 100644 --- a/ruoyi-modules/ruoyi-generator/pom.xml +++ b/ruoyi-modules/ruoyi-generator/pom.xml @@ -67,11 +67,11 @@ - - - - - + + org.anyline + anyline-data-jdbc-postgresql + ${anyline.version} + diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/config/MyBatisDataSourceMonitor.java b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/config/MyBatisDataSourceMonitor.java index 8c0f352fa..941e2ae34 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/config/MyBatisDataSourceMonitor.java +++ b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/config/MyBatisDataSourceMonitor.java @@ -1,7 +1,7 @@ package org.dromara.generator.config; -import com.baomidou.dynamic.datasource.DynamicRoutingDataSource; -import com.baomidou.dynamic.datasource.toolkit.DynamicDataSourceContextHolder; +import com.mybatisflex.core.datasource.DataSourceKey; +import com.mybatisflex.core.datasource.FlexDataSource; import lombok.extern.slf4j.Slf4j; import org.anyline.data.datasource.DataSourceMonitor; import org.anyline.data.runtime.DataRuntime; @@ -46,8 +46,9 @@ public class MyBatisDataSourceMonitor implements DataSourceMonitor { String feature = null; if (datasource instanceof JdbcTemplate jdbc) { DataSource ds = jdbc.getDataSource(); - if (ds instanceof DynamicRoutingDataSource) { - String key = DynamicDataSourceContextHolder.peek(); + if (ds instanceof FlexDataSource) { +// String key = ((FlexDataSource) ds).getDefaultDataSourceKey(); + String key = DataSourceKey.get(); feature = features.get(key); if (null == feature) { Connection con = null; @@ -79,8 +80,8 @@ public class MyBatisDataSourceMonitor implements DataSourceMonitor { public String key(DataRuntime runtime, Object datasource) { if(datasource instanceof JdbcTemplate jdbc){ DataSource ds = jdbc.getDataSource(); - if(ds instanceof DynamicRoutingDataSource){ - return DynamicDataSourceContextHolder.peek(); + if(ds instanceof FlexDataSource){ + return DataSourceKey.get(); } } return runtime.getKey(); @@ -97,7 +98,7 @@ public class MyBatisDataSourceMonitor implements DataSourceMonitor { public boolean keepAdapter(DataRuntime runtime, Object datasource) { if (datasource instanceof JdbcTemplate jdbc) { DataSource ds = jdbc.getDataSource(); - return !(ds instanceof DynamicRoutingDataSource); + return !(ds instanceof FlexDataSource); } return true; } diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java index 06f53ac0d..abc58afb1 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java +++ b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java @@ -117,57 +117,58 @@ public class GenTableServiceImpl implements IGenTableService { String tableName = genTable.getTableName(); String tableComment = genTable.getTableComment(); - LinkedHashMap> tablesMap = ServiceProxy.metadata().tables(); - if (CollUtil.isEmpty(tablesMap)) { - return TableDataInfo.build(); - } - List tableNames = baseMapper.selectTableNameList(genTable.getDataName()); - String[] tableArrays; - if (CollUtil.isNotEmpty(tableNames)) { - tableArrays = tableNames.toArray(new String[0]); - } else { - tableArrays = new String[0]; - } - // 过滤并转换表格数据 - List tables = tablesMap.values().stream() - .filter(x -> !StringUtils.containsAnyIgnoreCase(x.getName(), TABLE_IGNORE)) - .filter(x -> { - if (CollUtil.isEmpty(tableNames)) { - return true; - } - return !StringUtils.equalsAnyIgnoreCase(x.getName(), tableArrays); - }) - .filter(x -> { - boolean nameMatches = true; - boolean commentMatches = true; - // 进行表名称的模糊查询 - if (StringUtils.isNotBlank(tableName)) { - nameMatches = StringUtils.containsIgnoreCase(x.getName(), tableName); - } - // 进行表描述的模糊查询 - if (StringUtils.isNotBlank(tableComment)) { - commentMatches = StringUtils.containsIgnoreCase(x.getComment(), tableComment); - } - // 同时匹配名称和描述 - return nameMatches && commentMatches; - }) - .map(x -> { - GenTable gen = new GenTable(); - gen.setTableName(x.getName()); - gen.setTableComment(x.getComment()); - gen.setCreateTime(x.getCreateTime()); - gen.setUpdateTime(x.getUpdateTime()); - return gen; - }).toList(); - - IPage page = pageQuery.build(); - page.setTotal(tables.size()); + LinkedHashMap> tablesMap = ServiceProxy.metadata().tables(); + if (CollUtil.isEmpty(tablesMap)) { + return TableDataInfo.build(); + } + List tableNames = baseMapper.selectTableNameList(genTable.getDataName()); + String[] tableArrays; + if (CollUtil.isNotEmpty(tableNames)) { + tableArrays = tableNames.toArray(new String[0]); + } else { + tableArrays = new String[0]; + } + // 过滤并转换表格数据 + List tables = tablesMap.values().stream() + .filter(x -> !StringUtils.containsAnyIgnoreCase(x.getName(), TABLE_IGNORE)) + .filter(x -> { + if (CollUtil.isEmpty(tableNames)) { + return true; + } + return !StringUtils.equalsAnyIgnoreCase(x.getName(), tableArrays); + }) + .filter(x -> { + boolean nameMatches = true; + boolean commentMatches = true; + // 进行表名称的模糊查询 + if (StringUtils.isNotBlank(tableName)) { + nameMatches = StringUtils.containsIgnoreCase(x.getName(), tableName); + } + // 进行表描述的模糊查询 + if (StringUtils.isNotBlank(tableComment)) { + commentMatches = StringUtils.containsIgnoreCase(x.getComment(), tableComment); + } + // 同时匹配名称和描述 + return nameMatches && commentMatches; + }) + .map(x -> { + GenTable gen = new GenTable(); + gen.setTableName(x.getName()); + gen.setTableComment(x.getComment()); + gen.setCreateTime(x.getCreateTime()); + gen.setUpdateTime(x.getUpdateTime()); + return gen; + }).toList(); + + Page page = pageQuery.build(); + page.setTotalRow(tables.size()); // 手动分页 set数据 - page.setRecords(CollUtil.page((int) page.getCurrent() - 1, (int) page.getSize(), tables)); + page.setRecords(CollUtil.page((int) page.getPageNumber() - 1, (int) page.getPageSize(), tables)); return TableDataInfo.build(page); } finally { DataSourceKey.clear(); } + } /** diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/TestLeaveServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/TestLeaveServiceImpl.java index 08624ba35..b188a3bd4 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/TestLeaveServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/TestLeaveServiceImpl.java @@ -11,7 +11,7 @@ import org.dromara.common.core.service.WorkflowService; import org.dromara.common.core.utils.MapstructUtils; import org.dromara.common.core.utils.StreamUtils; import org.dromara.common.core.utils.StringUtils; -import org.dromara.common.mybatis.core.domain.BaseEntity; +import org.dromara.common.mybatis.annotation.DataColumn; import org.dromara.common.mybatis.core.page.PageQuery; import org.dromara.common.mybatis.core.page.TableDataInfo; import org.dromara.workflow.domain.TestLeave; @@ -56,7 +56,8 @@ public class TestLeaveServiceImpl implements ITestLeaveService { @Override public TableDataInfo queryPageList(TestLeaveBo bo, PageQuery pageQuery) { QueryWrapper lqw = buildQueryWrapper(bo); - Page result = baseMapper.paginateAs(pageQuery.build(), lqw, TestLeaveVo.class); + Page result = baseMapper.paginateAs(pageQuery.build(), lqw, TestLeaveVo.class, + DataColumn.of("deptName", "create_dept"), DataColumn.of("userName", "create_by")); return TableDataInfo.build(result); } -- Gitee From b886f3a04b5b3b109cb0b1a8989f8c71e5f73d89 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 1 Aug 2024 23:20:29 +0800 Subject: [PATCH 089/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20=E7=99=BB?= =?UTF-8?q?=E5=BD=95=E9=94=99=E8=AF=AF=E9=94=81=E5=AE=9A=E4=B8=8D=E5=8C=BA?= =?UTF-8?q?=E5=88=86=E7=A7=9F=E6=88=B7=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dromara/web/service/SysLoginService.java | 20 +++++------ .../web/service/impl/EmailAuthStrategy.java | 36 +++++++++---------- .../service/impl/PasswordAuthStrategy.java | 33 +++++++++-------- .../web/service/impl/SmsAuthStrategy.java | 36 +++++++++---------- .../web/service/impl/SocialAuthStrategy.java | 32 ++++++++--------- .../common/core/constant/CacheConstants.java | 5 +++ .../common/core/constant/GlobalConstants.java | 5 --- .../monitor/SysLogininforController.java | 8 ++--- 8 files changed, 80 insertions(+), 95 deletions(-) diff --git a/ruoyi-admin/src/main/java/org/dromara/web/service/SysLoginService.java b/ruoyi-admin/src/main/java/org/dromara/web/service/SysLoginService.java index af6e7f557..52803663c 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/service/SysLoginService.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/service/SysLoginService.java @@ -4,13 +4,14 @@ import cn.dev33.satoken.exception.NotLoginException; import cn.dev33.satoken.stp.StpUtil; import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollUtil; +import cn.hutool.core.lang.Opt; import cn.hutool.core.util.ObjectUtil; import com.baomidou.lock.annotation.Lock4j; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import me.zhyd.oauth.model.AuthUser; +import org.dromara.common.core.constant.CacheConstants; import org.dromara.common.core.constant.Constants; -import org.dromara.common.core.constant.GlobalConstants; import org.dromara.common.core.constant.TenantConstants; import org.dromara.common.core.domain.dto.RoleDTO; import org.dromara.common.core.domain.model.LoginUser; @@ -155,16 +156,11 @@ public class SysLoginService { loginUser.setUserType(user.getUserType()); loginUser.setMenuPermission(permissionService.getMenuPermission(user.getUserId())); loginUser.setRolePermission(permissionService.getRolePermission(user.getUserId())); - TenantHelper.dynamic(user.getTenantId(), () -> { - SysDeptVo dept = null; - if (ObjectUtil.isNotNull(user.getDeptId())) { - dept = deptService.selectDeptById(user.getDeptId()); - } - loginUser.setDeptName(ObjectUtil.isNull(dept) ? "" : dept.getDeptName()); - loginUser.setDeptCategory(ObjectUtil.isNull(dept) ? "" : dept.getDeptCategory()); - List roles = roleService.selectRolesByUserId(user.getUserId()); - loginUser.setRoles(BeanUtil.copyToList(roles, RoleDTO.class)); - }); + Opt deptOpt = Opt.of(user.getDeptId()).map(deptService::selectDeptById); + loginUser.setDeptName(deptOpt.map(SysDeptVo::getDeptName).orElse(StringUtils.EMPTY)); + loginUser.setDeptCategory(deptOpt.map(SysDeptVo::getDeptCategory).orElse(StringUtils.EMPTY)); + List roles = roleService.selectRolesByUserId(user.getUserId()); + loginUser.setRoles(BeanUtil.copyToList(roles, RoleDTO.class)); return loginUser; } @@ -186,7 +182,7 @@ public class SysLoginService { * 登录校验 */ public void checkLogin(LoginType loginType, String tenantId, String username, Supplier supplier) { - String errorKey = GlobalConstants.PWD_ERR_CNT_KEY + username; + String errorKey = CacheConstants.PWD_ERR_CNT_KEY + username; String loginFail = Constants.LOGIN_FAIL; // 获取用户登录错误次数,默认为0 (可自定义限制策略 例如: key + username + ip) diff --git a/ruoyi-admin/src/main/java/org/dromara/web/service/impl/EmailAuthStrategy.java b/ruoyi-admin/src/main/java/org/dromara/web/service/impl/EmailAuthStrategy.java index 38fdc448b..b5a24976e 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/service/impl/EmailAuthStrategy.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/service/impl/EmailAuthStrategy.java @@ -21,7 +21,6 @@ import org.dromara.common.json.utils.JsonUtils; import org.dromara.common.redis.utils.RedisUtils; import org.dromara.common.satoken.utils.LoginHelper; import org.dromara.common.tenant.helper.TenantHelper; -import org.dromara.system.domain.SysClient; import org.dromara.system.domain.SysUser; import org.dromara.system.domain.vo.SysClientVo; import org.dromara.system.domain.vo.SysUserVo; @@ -51,13 +50,12 @@ public class EmailAuthStrategy implements IAuthStrategy { String tenantId = loginBody.getTenantId(); String email = loginBody.getEmail(); String emailCode = loginBody.getEmailCode(); - - // 通过邮箱查找用户 - SysUserVo user = loadUserByEmail(tenantId, email); - - loginService.checkLogin(LoginType.EMAIL, tenantId, user.getUserName(), () -> !validateEmailCode(tenantId, email, emailCode)); - // 此处可根据登录用户的数据不同 自行创建 loginUser 属性不够用继承扩展就行了 - LoginUser loginUser = loginService.buildLoginUser(user); + LoginUser loginUser = TenantHelper.dynamic(tenantId, () -> { + SysUserVo user = loadUserByEmail(email); + loginService.checkLogin(LoginType.EMAIL, tenantId, user.getUserName(), () -> !validateEmailCode(tenantId, email, emailCode)); + // 此处可根据登录用户的数据不同 自行创建 loginUser 属性不够用继承扩展就行了 + return loginService.buildLoginUser(user); + }); loginUser.setClientKey(client.getClientKey()); loginUser.setDeviceType(client.getDeviceType()); SaLoginModel model = new SaLoginModel(); @@ -89,18 +87,16 @@ public class EmailAuthStrategy implements IAuthStrategy { return code.equals(emailCode); } - private SysUserVo loadUserByEmail(String tenantId, String email) { - return TenantHelper.dynamic(tenantId, () -> { - SysUserVo user = userMapper.selectVoOne(new LambdaQueryWrapper().eq(SysUser::getEmail, email)); - if (ObjectUtil.isNull(user)) { - log.info("登录用户:{} 不存在.", email); - throw new UserException("user.not.exists", email); - } else if (UserStatus.DISABLE.getCode().equals(user.getStatus())) { - log.info("登录用户:{} 已被停用.", email); - throw new UserException("user.blocked", email); - } - return user; - }); + private SysUserVo loadUserByEmail(String email) { + SysUserVo user = userMapper.selectVoOne(new LambdaQueryWrapper().eq(SysUser::getEmail, email)); + if (ObjectUtil.isNull(user)) { + log.info("登录用户:{} 不存在.", email); + throw new UserException("user.not.exists", email); + } else if (UserStatus.DISABLE.getCode().equals(user.getStatus())) { + log.info("登录用户:{} 已被停用.", email); + throw new UserException("user.blocked", email); + } + return user; } } diff --git a/ruoyi-admin/src/main/java/org/dromara/web/service/impl/PasswordAuthStrategy.java b/ruoyi-admin/src/main/java/org/dromara/web/service/impl/PasswordAuthStrategy.java index 5d3ebd755..f28024f35 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/service/impl/PasswordAuthStrategy.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/service/impl/PasswordAuthStrategy.java @@ -62,11 +62,12 @@ public class PasswordAuthStrategy implements IAuthStrategy { if (captchaEnabled) { validateCaptcha(tenantId, username, code, uuid); } - - SysUserVo user = loadUserByUsername(tenantId, username); - loginService.checkLogin(LoginType.PASSWORD, tenantId, username, () -> !BCrypt.checkpw(password, user.getPassword())); - // 此处可根据登录用户的数据不同 自行创建 loginUser - LoginUser loginUser = loginService.buildLoginUser(user); + LoginUser loginUser = TenantHelper.dynamic(tenantId, () -> { + SysUserVo user = loadUserByUsername(username); + loginService.checkLogin(LoginType.PASSWORD, tenantId, username, () -> !BCrypt.checkpw(password, user.getPassword())); + // 此处可根据登录用户的数据不同 自行创建 loginUser + return loginService.buildLoginUser(user); + }); loginUser.setClientKey(client.getClientKey()); loginUser.setDeviceType(client.getDeviceType()); SaLoginModel model = new SaLoginModel(); @@ -107,18 +108,16 @@ public class PasswordAuthStrategy implements IAuthStrategy { } } - private SysUserVo loadUserByUsername(String tenantId, String username) { - return TenantHelper.dynamic(tenantId, () -> { - SysUserVo user = userMapper.selectVoOne(new LambdaQueryWrapper().eq(SysUser::getUserName, username)); - if (ObjectUtil.isNull(user)) { - log.info("登录用户:{} 不存在.", username); - throw new UserException("user.not.exists", username); - } else if (UserStatus.DISABLE.getCode().equals(user.getStatus())) { - log.info("登录用户:{} 已被停用.", username); - throw new UserException("user.blocked", username); - } - return user; - }); + private SysUserVo loadUserByUsername(String username) { + SysUserVo user = userMapper.selectVoOne(new LambdaQueryWrapper().eq(SysUser::getUserName, username)); + if (ObjectUtil.isNull(user)) { + log.info("登录用户:{} 不存在.", username); + throw new UserException("user.not.exists", username); + } else if (UserStatus.DISABLE.getCode().equals(user.getStatus())) { + log.info("登录用户:{} 已被停用.", username); + throw new UserException("user.blocked", username); + } + return user; } } diff --git a/ruoyi-admin/src/main/java/org/dromara/web/service/impl/SmsAuthStrategy.java b/ruoyi-admin/src/main/java/org/dromara/web/service/impl/SmsAuthStrategy.java index f883632f9..89f846244 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/service/impl/SmsAuthStrategy.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/service/impl/SmsAuthStrategy.java @@ -21,7 +21,6 @@ import org.dromara.common.json.utils.JsonUtils; import org.dromara.common.redis.utils.RedisUtils; import org.dromara.common.satoken.utils.LoginHelper; import org.dromara.common.tenant.helper.TenantHelper; -import org.dromara.system.domain.SysClient; import org.dromara.system.domain.SysUser; import org.dromara.system.domain.vo.SysClientVo; import org.dromara.system.domain.vo.SysUserVo; @@ -51,13 +50,12 @@ public class SmsAuthStrategy implements IAuthStrategy { String tenantId = loginBody.getTenantId(); String phonenumber = loginBody.getPhonenumber(); String smsCode = loginBody.getSmsCode(); - - // 通过手机号查找用户 - SysUserVo user = loadUserByPhonenumber(tenantId, phonenumber); - - loginService.checkLogin(LoginType.SMS, tenantId, user.getUserName(), () -> !validateSmsCode(tenantId, phonenumber, smsCode)); - // 此处可根据登录用户的数据不同 自行创建 loginUser 属性不够用继承扩展就行了 - LoginUser loginUser = loginService.buildLoginUser(user); + LoginUser loginUser = TenantHelper.dynamic(tenantId, () -> { + SysUserVo user = loadUserByPhonenumber(phonenumber); + loginService.checkLogin(LoginType.SMS, tenantId, user.getUserName(), () -> !validateSmsCode(tenantId, phonenumber, smsCode)); + // 此处可根据登录用户的数据不同 自行创建 loginUser 属性不够用继承扩展就行了 + return loginService.buildLoginUser(user); + }); loginUser.setClientKey(client.getClientKey()); loginUser.setDeviceType(client.getDeviceType()); SaLoginModel model = new SaLoginModel(); @@ -89,18 +87,16 @@ public class SmsAuthStrategy implements IAuthStrategy { return code.equals(smsCode); } - private SysUserVo loadUserByPhonenumber(String tenantId, String phonenumber) { - return TenantHelper.dynamic(tenantId, () -> { - SysUserVo user = userMapper.selectVoOne(new LambdaQueryWrapper().eq(SysUser::getPhonenumber, phonenumber)); - if (ObjectUtil.isNull(user)) { - log.info("登录用户:{} 不存在.", phonenumber); - throw new UserException("user.not.exists", phonenumber); - } else if (UserStatus.DISABLE.getCode().equals(user.getStatus())) { - log.info("登录用户:{} 已被停用.", phonenumber); - throw new UserException("user.blocked", phonenumber); - } - return user; - }); + private SysUserVo loadUserByPhonenumber(String phonenumber) { + SysUserVo user = userMapper.selectVoOne(new LambdaQueryWrapper().eq(SysUser::getPhonenumber, phonenumber)); + if (ObjectUtil.isNull(user)) { + log.info("登录用户:{} 不存在.", phonenumber); + throw new UserException("user.not.exists", phonenumber); + } else if (UserStatus.DISABLE.getCode().equals(user.getStatus())) { + log.info("登录用户:{} 已被停用.", phonenumber); + throw new UserException("user.blocked", phonenumber); + } + return user; } } diff --git a/ruoyi-admin/src/main/java/org/dromara/web/service/impl/SocialAuthStrategy.java b/ruoyi-admin/src/main/java/org/dromara/web/service/impl/SocialAuthStrategy.java index 01db20027..84630260f 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/service/impl/SocialAuthStrategy.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/service/impl/SocialAuthStrategy.java @@ -92,11 +92,11 @@ public class SocialAuthStrategy implements IAuthStrategy { } else { social = list.get(0); } - // 查找用户 - SysUserVo user = loadUser(social.getTenantId(), social.getUserId()); - - // 此处可根据登录用户的数据不同 自行创建 loginUser 属性不够用继承扩展就行了 - LoginUser loginUser = loginService.buildLoginUser(user); + LoginUser loginUser = TenantHelper.dynamic(social.getTenantId(), () -> { + SysUserVo user = loadUser(social.getUserId()); + // 此处可根据登录用户的数据不同 自行创建 loginUser 属性不够用继承扩展就行了 + return loginService.buildLoginUser(user); + }); loginUser.setClientKey(client.getClientKey()); loginUser.setDeviceType(client.getDeviceType()); SaLoginModel model = new SaLoginModel(); @@ -116,18 +116,16 @@ public class SocialAuthStrategy implements IAuthStrategy { return loginVo; } - private SysUserVo loadUser(String tenantId, Long userId) { - return TenantHelper.dynamic(tenantId, () -> { - SysUserVo user = userMapper.selectVoById(userId); - if (ObjectUtil.isNull(user)) { - log.info("登录用户:{} 不存在.", ""); - throw new UserException("user.not.exists", ""); - } else if (UserStatus.DISABLE.getCode().equals(user.getStatus())) { - log.info("登录用户:{} 已被停用.", ""); - throw new UserException("user.blocked", ""); - } - return user; - }); + private SysUserVo loadUser(Long userId) { + SysUserVo user = userMapper.selectVoById(userId); + if (ObjectUtil.isNull(user)) { + log.info("登录用户:{} 不存在.", ""); + throw new UserException("user.not.exists", ""); + } else if (UserStatus.DISABLE.getCode().equals(user.getStatus())) { + log.info("登录用户:{} 已被停用.", ""); + throw new UserException("user.blocked", ""); + } + return user; } } diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/CacheConstants.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/CacheConstants.java index 67bc8e4c2..ceb837044 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/CacheConstants.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/CacheConstants.java @@ -22,4 +22,9 @@ public interface CacheConstants { */ String SYS_DICT_KEY = "sys_dict:"; + /** + * 登录账户密码错误次数 redis key + */ + String PWD_ERR_CNT_KEY = "pwd_err_cnt:"; + } diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/GlobalConstants.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/GlobalConstants.java index ae9bc2e62..5352b118f 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/GlobalConstants.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/GlobalConstants.java @@ -27,11 +27,6 @@ public interface GlobalConstants { */ String RATE_LIMIT_KEY = GLOBAL_REDIS_KEY + "rate_limit:"; - /** - * 登录账户密码错误次数 redis key - */ - String PWD_ERR_CNT_KEY = GLOBAL_REDIS_KEY + "pwd_err_cnt:"; - /** * 三方认证 redis key */ diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/monitor/SysLogininforController.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/monitor/SysLogininforController.java index 18e32d8c6..98ac2d58f 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/monitor/SysLogininforController.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/monitor/SysLogininforController.java @@ -1,7 +1,9 @@ package org.dromara.system.controller.monitor; import cn.dev33.satoken.annotation.SaCheckPermission; -import org.dromara.common.core.constant.GlobalConstants; +import jakarta.servlet.http.HttpServletResponse; +import lombok.RequiredArgsConstructor; +import org.dromara.common.core.constant.CacheConstants; import org.dromara.common.core.domain.R; import org.dromara.common.excel.utils.ExcelUtil; import org.dromara.common.log.annotation.Log; @@ -13,8 +15,6 @@ import org.dromara.common.web.core.BaseController; import org.dromara.system.domain.bo.SysLogininforBo; import org.dromara.system.domain.vo.SysLogininforVo; import org.dromara.system.service.ISysLogininforService; -import jakarta.servlet.http.HttpServletResponse; -import lombok.RequiredArgsConstructor; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; @@ -79,7 +79,7 @@ public class SysLogininforController extends BaseController { @Log(title = "账户解锁", businessType = BusinessType.OTHER) @GetMapping("/unlock/{userName}") public R unlock(@PathVariable("userName") String userName) { - String loginName = GlobalConstants.PWD_ERR_CNT_KEY + userName; + String loginName = CacheConstants.PWD_ERR_CNT_KEY + userName; if (RedisUtils.hasKey(loginName)) { RedisUtils.deleteObject(loginName); } -- Gitee From 615ad918ca83328bbec94841747bb70a7ba07a46 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 2 Aug 2024 00:55:11 +0800 Subject: [PATCH 090/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20sse=20?= =?UTF-8?q?=E6=8B=A6=E6=88=AA=E7=BD=91=E7=BB=9C=E4=B8=AD=E6=96=ADio?= =?UTF-8?q?=E5=BC=82=E5=B8=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/sse/core/SseEmitterManager.java | 6 ------ .../web/handler/GlobalExceptionHandler.java | 17 +++++++++++++++++ 2 files changed, 17 insertions(+), 6 deletions(-) diff --git a/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/core/SseEmitterManager.java b/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/core/SseEmitterManager.java index aa7960c24..039e17f4e 100644 --- a/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/core/SseEmitterManager.java +++ b/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/core/SseEmitterManager.java @@ -1,6 +1,5 @@ package org.dromara.common.sse.core; -import cn.dev33.satoken.stp.StpUtil; import cn.hutool.core.collection.CollUtil; import lombok.extern.slf4j.Slf4j; import org.dromara.common.redis.utils.RedisUtils; @@ -72,11 +71,6 @@ public class SseEmitterManager { if (emitters != null) { for (Map.Entry entry : emitters.entrySet()) { try { - // token 无效或已过期 - if (StpUtil.stpLogic.getTokenActiveTimeoutByToken(entry.getKey()) < -1) { - emitters.remove(entry.getKey()); - continue; - } entry.getValue().send(SseEmitter.event() .name("message") .data(message)); diff --git a/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/handler/GlobalExceptionHandler.java b/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/handler/GlobalExceptionHandler.java index bd47c189d..061d3aa45 100644 --- a/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/handler/GlobalExceptionHandler.java +++ b/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/handler/GlobalExceptionHandler.java @@ -16,10 +16,13 @@ import org.springframework.web.HttpRequestMethodNotSupportedException; import org.springframework.web.bind.MethodArgumentNotValidException; import org.springframework.web.bind.MissingPathVariableException; import org.springframework.web.bind.annotation.ExceptionHandler; +import org.springframework.web.bind.annotation.ResponseStatus; import org.springframework.web.bind.annotation.RestControllerAdvice; import org.springframework.web.method.annotation.MethodArgumentTypeMismatchException; import org.springframework.web.servlet.NoHandlerFoundException; +import java.io.IOException; + /** * 全局异常处理器 * @@ -89,6 +92,20 @@ public class GlobalExceptionHandler { return R.fail(HttpStatus.HTTP_NOT_FOUND, e.getMessage()); } + /** + * 拦截未知的运行时异常 + */ + @ResponseStatus(org.springframework.http.HttpStatus.INTERNAL_SERVER_ERROR) + @ExceptionHandler(IOException.class) + public void handleRuntimeException(IOException e, HttpServletRequest request) { + String requestURI = request.getRequestURI(); + if (requestURI.contains("sse")) { + // sse 经常性连接中断 例如关闭浏览器 直接屏蔽 + return; + } + log.error("请求地址'{}',连接中断", requestURI, e); + } + /** * 拦截未知的运行时异常 */ -- Gitee From 85403e975f86a2697d8dab152ecbb3461a01ec2d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 2 Aug 2024 00:55:42 +0800 Subject: [PATCH 091/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20=E7=99=BB?= =?UTF-8?q?=E5=87=BA=E6=97=A0=E6=B3=95=E6=AD=A3=E7=A1=AE=E5=88=A0=E9=99=A4?= =?UTF-8?q?=E5=AF=B9=E5=BA=94=E7=9A=84=E7=A7=9F=E6=88=B7=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../web/listener/UserActionListener.java | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/ruoyi-admin/src/main/java/org/dromara/web/listener/UserActionListener.java b/ruoyi-admin/src/main/java/org/dromara/web/listener/UserActionListener.java index a4724043b..07595e092 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/listener/UserActionListener.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/listener/UserActionListener.java @@ -3,6 +3,8 @@ package org.dromara.web.listener; import cn.dev33.satoken.config.SaTokenConfig; import cn.dev33.satoken.listener.SaTokenListener; import cn.dev33.satoken.stp.SaLoginModel; +import cn.dev33.satoken.stp.StpUtil; +import cn.hutool.core.convert.Convert; import cn.hutool.http.useragent.UserAgent; import cn.hutool.http.useragent.UserAgentUtil; import lombok.RequiredArgsConstructor; @@ -81,7 +83,10 @@ public class UserActionListener implements SaTokenListener { */ @Override public void doLogout(String loginType, Object loginId, String tokenValue) { - RedisUtils.deleteObject(CacheConstants.ONLINE_TOKEN_KEY + tokenValue); + String tenantId = Convert.toStr(StpUtil.getExtra(tokenValue, LoginHelper.TENANT_KEY)); + TenantHelper.dynamic(tenantId, () -> { + RedisUtils.deleteObject(CacheConstants.ONLINE_TOKEN_KEY + tokenValue); + }); log.info("user doLogout, userId:{}, token:{}", loginId, tokenValue); } @@ -90,7 +95,10 @@ public class UserActionListener implements SaTokenListener { */ @Override public void doKickout(String loginType, Object loginId, String tokenValue) { - RedisUtils.deleteObject(CacheConstants.ONLINE_TOKEN_KEY + tokenValue); + String tenantId = Convert.toStr(StpUtil.getExtra(tokenValue, LoginHelper.TENANT_KEY)); + TenantHelper.dynamic(tenantId, () -> { + RedisUtils.deleteObject(CacheConstants.ONLINE_TOKEN_KEY + tokenValue); + }); log.info("user doKickout, userId:{}, token:{}", loginId, tokenValue); } @@ -99,7 +107,10 @@ public class UserActionListener implements SaTokenListener { */ @Override public void doReplaced(String loginType, Object loginId, String tokenValue) { - RedisUtils.deleteObject(CacheConstants.ONLINE_TOKEN_KEY + tokenValue); + String tenantId = Convert.toStr(StpUtil.getExtra(tokenValue, LoginHelper.TENANT_KEY)); + TenantHelper.dynamic(tenantId, () -> { + RedisUtils.deleteObject(CacheConstants.ONLINE_TOKEN_KEY + tokenValue); + }); log.info("user doReplaced, userId:{}, token:{}", loginId, tokenValue); } -- Gitee From b615a3b088b0e0b14937b010941b5bdf2791edb0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 2 Aug 2024 10:03:17 +0800 Subject: [PATCH 092/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20id=E5=AD=97?= =?UTF-8?q?=E7=AC=A6=E4=B8=B2=E6=A0=BC=E5=BC=8F=E8=BD=AC=E6=8D=A2=E9=94=99?= =?UTF-8?q?=E8=AF=AF=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/dromara/workflow/service/impl/ActTaskServiceImpl.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActTaskServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActTaskServiceImpl.java index 32e6aec08..c44a02ade 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActTaskServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActTaskServiceImpl.java @@ -260,7 +260,7 @@ public class ActTaskServiceImpl implements IActTaskService { String userId = String.valueOf(LoginHelper.getUserId()); queryWrapper.eq("t.business_status_", BusinessStatusEnum.WAITING.getStatus()); queryWrapper.eq(TenantHelper.isEnable(), "t.tenant_id_", TenantHelper.getTenantId()); - String ids = StreamUtils.join(roleIds, x -> "'" + x + "'"); + String ids = StreamUtils.join(roleIds, x -> x); queryWrapper.and(w1 -> w1.eq("t.assignee_", userId).or(w2 -> w2.isNull("t.assignee_").apply("exists ( select LINK.ID_ from ACT_RU_IDENTITYLINK LINK where LINK.TASK_ID_ = t.ID_ and LINK.TYPE_ = 'candidate' and (LINK.USER_ID_ = {0} or ( LINK.GROUP_ID_ IN ({1}) ) ))", userId, ids))); if (StringUtils.isNotBlank(taskBo.getName())) { queryWrapper.like("t.name_", taskBo.getName()); -- Gitee From 2b0efd1f93f20063c7df0d8d0c5824cc81f42e67 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 2 Aug 2024 10:07:47 +0800 Subject: [PATCH 093/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0=E5=88=A0=E9=99=A4=E6=A0=87=E5=BF=97=E4=BD=8D=E5=B8=B8?= =?UTF-8?q?=E9=87=8F=E4=BC=98=E5=8C=96=E6=9F=A5=E8=AF=A2=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dromara/common/core/constant/UserConstants.java | 10 ++++++++++ .../system/service/impl/SysDeptServiceImpl.java | 2 +- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/UserConstants.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/UserConstants.java index 6f3b0b96b..76f6dd4ad 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/UserConstants.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/UserConstants.java @@ -67,6 +67,16 @@ public interface UserConstants { */ String DICT_NORMAL = "0"; + /** + * 通用存在标志 + */ + String DEL_FLAG_NORMAL = "0"; + + /** + * 通用删除标志 + */ + String DEL_FLAG_REMOVED = "2"; + /** * 是否为系统默认(是) */ diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java index 505403642..160238df3 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java @@ -78,7 +78,7 @@ public class SysDeptServiceImpl implements ISysDeptService, DeptService { private LambdaQueryWrapper buildQueryWrapper(SysDeptBo bo) { LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); - lqw.eq(SysDept::getDelFlag, "0"); + lqw.eq(SysDept::getDelFlag, UserConstants.DEL_FLAG_NORMAL); lqw.eq(ObjectUtil.isNotNull(bo.getDeptId()), SysDept::getDeptId, bo.getDeptId()); lqw.eq(ObjectUtil.isNotNull(bo.getParentId()), SysDept::getParentId, bo.getParentId()); lqw.like(StringUtils.isNotBlank(bo.getDeptName()), SysDept::getDeptName, bo.getDeptName()); -- Gitee From 7393a61305c7e45a72a95b09e37e1895a76fa6b0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 2 Aug 2024 10:36:34 +0800 Subject: [PATCH 094/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20id=E5=AD=97?= =?UTF-8?q?=E7=AC=A6=E4=B8=B2=E6=A0=BC=E5=BC=8F=E8=BD=AC=E6=8D=A2=E9=94=99?= =?UTF-8?q?=E8=AF=AF=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/dromara/workflow/service/impl/ActTaskServiceImpl.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActTaskServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActTaskServiceImpl.java index c44a02ade..b6ae67ebf 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActTaskServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActTaskServiceImpl.java @@ -260,8 +260,8 @@ public class ActTaskServiceImpl implements IActTaskService { String userId = String.valueOf(LoginHelper.getUserId()); queryWrapper.eq("t.business_status_", BusinessStatusEnum.WAITING.getStatus()); queryWrapper.eq(TenantHelper.isEnable(), "t.tenant_id_", TenantHelper.getTenantId()); - String ids = StreamUtils.join(roleIds, x -> x); - queryWrapper.and(w1 -> w1.eq("t.assignee_", userId).or(w2 -> w2.isNull("t.assignee_").apply("exists ( select LINK.ID_ from ACT_RU_IDENTITYLINK LINK where LINK.TASK_ID_ = t.ID_ and LINK.TYPE_ = 'candidate' and (LINK.USER_ID_ = {0} or ( LINK.GROUP_ID_ IN ({1}) ) ))", userId, ids))); + String ids = StreamUtils.join(roleIds, x -> "'" + x + "'"); + queryWrapper.and(w1 -> w1.eq("t.assignee_", userId).or(w2 -> w2.isNull("t.assignee_").apply("exists ( select LINK.ID_ from ACT_RU_IDENTITYLINK LINK where LINK.TASK_ID_ = t.ID_ and LINK.TYPE_ = 'candidate' and (LINK.USER_ID_ = {0} or ( LINK.GROUP_ID_ IN (" + ids + ") ) ))", userId))); if (StringUtils.isNotBlank(taskBo.getName())) { queryWrapper.like("t.name_", taskBo.getName()); } -- Gitee From f32d0266eee6cf2fe4bd8b5063f9c4a098c70c05 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 2 Aug 2024 11:37:21 +0800 Subject: [PATCH 095/540] =?UTF-8?q?update=20=E6=9B=B4=E6=96=B0=20readme?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index ad9c2cee7..71895dc3f 100644 --- a/README.md +++ b/README.md @@ -61,6 +61,7 @@ CCFlow 驰聘低代码-流程-表单 - https://gitee.com/opencc/RuoYi-JFlow
| 数据库连接池 | 采用 HikariCP Spring官方内置连接池 配置简单 以性能与稳定性闻名天下 | 采用 druid bug众多 社区维护差 活跃度低 配置众多繁琐性能一般 | | 数据库主键 | 采用 雪花ID 基于时间戳的 有序增长 唯一ID 再也不用为分库分表 数据合并主键冲突重复而发愁 | 采用 数据库自增ID 支持数据量有限 不支持多数据源主键唯一 | | WebSocket协议 | 基于 Spring 封装的 WebSocket 协议 扩展了Token鉴权与分布式会话同步 不再只是基于单机的废物 | 无 | +| SSE推送 | 采用 Spring SSE 实现 扩展了Token鉴权与分布式会话同步 | 无 | | 序列化 | 采用 Jackson Spring官方内置序列化 靠谱!!! | 采用 fastjson bugjson 远近闻名 | | 分布式幂等 | 参考美团GTIS防重系统简化实现(细节可看文档) | 手动编写注解基于aop实现 | | 分布式锁 | 采用 Lock4j 底层基于 Redisson | 无 | @@ -72,6 +73,7 @@ CCFlow 驰聘低代码-流程-表单 - https://gitee.com/opencc/RuoYi-JFlow
| 接口文档 | 采用 SpringDoc、javadoc 无注解零入侵基于java注释
只需把注释写好 无需再写一大堆的文档注解了 | 采用 Springfox 已停止维护 需要编写大量的注解来支持文档生成 | | 校验框架 | 采用 Validation 支持注解与工具类校验 注解支持国际化 | 仅支持注解 且注解不支持国际化 | | Excel框架 | 采用 Alibaba EasyExcel 基于插件化
框架对其增加了很多功能 例如 自动合并相同内容 自动排列布局 字典翻译等 | 基于 POI 手写实现 功能有限 复杂 扩展性差 | +| 工作流支持 | 支持各种复杂审批 转办 委派 加减签 会签 或签 票签 等功能 | 无 | | 工具类框架 | 采用 Hutool、Lombok 上百种工具覆盖90%的使用需求 基于注解自动生成 get set 等简化框架大量代码 | 手写工具稳定性差易出问题 工具数量有限 代码臃肿需自己手写 get set 等 | | 监控框架 | 采用 SpringBoot-Admin 基于SpringBoot官方 actuator 探针机制
实时监控服务状态 框架还为其扩展了在线日志查看监控 | 无 | | 链路追踪 | 采用 Apache SkyWalking 还在为请求不知道去哪了 到哪出了问题而烦恼吗
用了它即可实时查看请求经过的每一处每一个节点 | 无 | -- Gitee From ecfaa9ad5c83be221e9baabfe2e5c8647899b7d5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 2 Aug 2024 17:09:46 +0800 Subject: [PATCH 096/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E8=A7=92?= =?UTF-8?q?=E8=89=B2=E6=9D=83=E9=99=90=E5=88=A4=E6=96=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/SysUserServiceImpl.java | 20 +++++++------------ 1 file changed, 7 insertions(+), 13 deletions(-) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java index c38d0d055..6fbeab56d 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java @@ -26,10 +26,7 @@ import org.dromara.common.mybatis.core.page.PageQuery; import org.dromara.common.mybatis.core.page.TableDataInfo; import org.dromara.common.mybatis.helper.DataBaseHelper; import org.dromara.common.satoken.utils.LoginHelper; -import org.dromara.system.domain.SysDept; -import org.dromara.system.domain.SysUser; -import org.dromara.system.domain.SysUserPost; -import org.dromara.system.domain.SysUserRole; +import org.dromara.system.domain.*; import org.dromara.system.domain.bo.SysUserBo; import org.dromara.system.domain.vo.SysPostVo; import org.dromara.system.domain.vo.SysRoleVo; @@ -473,17 +470,14 @@ public class SysUserServiceImpl implements ISysUserService, UserService { */ private void insertUserRole(Long userId, Long[] roleIds, boolean clear) { if (ArrayUtil.isNotEmpty(roleIds)) { - // 判断是否具有此角色的操作权限 - List roles = roleMapper.selectRoleList(new LambdaQueryWrapper<>()); - if (CollUtil.isEmpty(roles)) { - throw new ServiceException("没有权限访问角色的数据"); - } - List roleList = StreamUtils.toList(roles, SysRoleVo::getRoleId); + List roleList = new ArrayList<>(List.of(roleIds)); if (!LoginHelper.isSuperAdmin(userId)) { roleList.remove(UserConstants.SUPER_ADMIN_ID); } - List canDoRoleList = StreamUtils.filter(List.of(roleIds), roleList::contains); - if (CollUtil.isEmpty(canDoRoleList)) { + // 判断是否具有此角色的操作权限 + List roles = roleMapper.selectRoleList( + new QueryWrapper().in("r.role_id", roleList)); + if (CollUtil.isEmpty(roles)) { throw new ServiceException("没有权限访问角色的数据"); } if (clear) { @@ -491,7 +485,7 @@ public class SysUserServiceImpl implements ISysUserService, UserService { userRoleMapper.delete(new LambdaQueryWrapper().eq(SysUserRole::getUserId, userId)); } // 新增用户与角色管理 - List list = StreamUtils.toList(canDoRoleList, roleId -> { + List list = StreamUtils.toList(roleList, roleId -> { SysUserRole ur = new SysUserRole(); ur.setUserId(userId); ur.setRoleId(roleId); -- Gitee From d5733ca0283ade86925c7b4effd49ca98f294444 Mon Sep 17 00:00:00 2001 From: hfdy2019 <5463852+hfdy2019@user.noreply.gitee.com> Date: Sat, 3 Aug 2024 06:13:16 +0800 Subject: [PATCH 097/540] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=20caffeine?= =?UTF-8?q?=E7=BC=93=E5=AD=98=E8=A3=85=E9=A5=B0=E5=99=A8=20getName?= =?UTF-8?q?=E7=A7=9F=E6=88=B7=E8=AE=BE=E7=BD=AE=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: hfdy2019 <5463852+hfdy2019@user.noreply.gitee.com> --- .../common/redis/config/CacheConfig.java | 2 + .../AbstractPlusSpringCacheManager.java | 209 ++++++++++++++++++ .../redis/manager/CaffeineCacheDecorator.java | 2 +- .../redis/manager/PlusSpringCacheManager.java | 172 +------------- .../common/tenant/config/TenantConfig.java | 5 +- .../manager/TenantCaffeineCacheDecorator.java | 34 +++ .../manager/TenantSpringCacheManager.java | 25 ++- 7 files changed, 275 insertions(+), 174 deletions(-) create mode 100644 ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/manager/AbstractPlusSpringCacheManager.java create mode 100644 ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/manager/TenantCaffeineCacheDecorator.java diff --git a/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/config/CacheConfig.java b/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/config/CacheConfig.java index d57ba4e65..41a2bdc17 100644 --- a/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/config/CacheConfig.java +++ b/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/config/CacheConfig.java @@ -4,6 +4,7 @@ import com.github.benmanes.caffeine.cache.Cache; import com.github.benmanes.caffeine.cache.Caffeine; import org.dromara.common.redis.manager.PlusSpringCacheManager; import org.springframework.boot.autoconfigure.AutoConfiguration; +import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean; import org.springframework.cache.CacheManager; import org.springframework.cache.annotation.EnableCaching; import org.springframework.context.annotation.Bean; @@ -38,6 +39,7 @@ public class CacheConfig { * 自定义缓存管理器 整合spring-cache */ @Bean + @ConditionalOnMissingBean(CacheManager.class) public CacheManager cacheManager() { return new PlusSpringCacheManager(); } diff --git a/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/manager/AbstractPlusSpringCacheManager.java b/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/manager/AbstractPlusSpringCacheManager.java new file mode 100644 index 000000000..b40731e41 --- /dev/null +++ b/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/manager/AbstractPlusSpringCacheManager.java @@ -0,0 +1,209 @@ +/** + * Copyright (c) 2013-2021 Nikita Koksharov + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.dromara.common.redis.manager; + +import org.dromara.common.redis.utils.RedisUtils; +import org.redisson.api.RMap; +import org.redisson.api.RMapCache; +import org.redisson.spring.cache.CacheConfig; +import org.redisson.spring.cache.RedissonCache; +import org.springframework.boot.convert.DurationStyle; +import org.springframework.cache.Cache; +import org.springframework.cache.CacheManager; +import org.springframework.cache.transaction.TransactionAwareCacheDecorator; +import org.springframework.util.StringUtils; + +import java.util.Collection; +import java.util.Collections; +import java.util.Map; +import java.util.concurrent.ConcurrentHashMap; +import java.util.concurrent.ConcurrentMap; + +/** + * A {@link CacheManager} implementation + * backed by Redisson instance. + *

+ * 修改 RedissonSpringCacheManager 源码 + * 重写 cacheName 处理方法 支持多参数 + * + * @author Nikita Koksharov + * + */ +@SuppressWarnings("unchecked") +public abstract class AbstractPlusSpringCacheManager implements CacheManager { + + private boolean dynamic = true; + + private boolean allowNullValues = true; + + private boolean transactionAware = true; + + Map configMap = new ConcurrentHashMap<>(); + ConcurrentMap instanceMap = new ConcurrentHashMap<>(); + + /** + * Creates CacheManager supplied by Redisson instance + */ + public AbstractPlusSpringCacheManager() { + } + + + /** + * Defines possibility of storing {@code null} values. + *

+ * Default is true + * + * @param allowNullValues stores if true + */ + public void setAllowNullValues(boolean allowNullValues) { + this.allowNullValues = allowNullValues; + } + + /** + * Defines if cache aware of Spring-managed transactions. + * If {@code true} put/evict operations are executed only for successful transaction in after-commit phase. + *

+ * Default is false + * + * @param transactionAware cache is transaction aware if true + */ + public void setTransactionAware(boolean transactionAware) { + this.transactionAware = transactionAware; + } + + /** + * Defines 'fixed' cache names. + * A new cache instance will not be created in dynamic for non-defined names. + *

+ * `null` parameter setups dynamic mode + * + * @param names of caches + */ + public void setCacheNames(Collection names) { + if (names != null) { + for (String name : names) { + getCache(name); + } + dynamic = false; + } else { + dynamic = true; + } + } + + /** + * Set cache config mapped by cache name + * + * @param config object + */ + public void setConfig(Map config) { + this.configMap = (Map) config; + } + + protected CacheConfig createDefaultConfig() { + return new CacheConfig(); + } + + @Override + public Cache getCache(String name) { + name = getCacheNameWrapper(name); + + // 重写 cacheName 支持多参数 + String[] array = StringUtils.delimitedListToStringArray(name, "#"); + name = array[0]; + + Cache cache = instanceMap.get(name); + if (cache != null) { + return cache; + } + if (!dynamic) { + return cache; + } + + CacheConfig config = configMap.get(name); + if (config == null) { + config = createDefaultConfig(); + configMap.put(name, config); + } + + if (array.length > 1) { + config.setTTL(DurationStyle.detectAndParse(array[1]).toMillis()); + } + if (array.length > 2) { + config.setMaxIdleTime(DurationStyle.detectAndParse(array[2]).toMillis()); + } + if (array.length > 3) { + config.setMaxSize(Integer.parseInt(array[3])); + } + + if (config.getMaxIdleTime() == 0 && config.getTTL() == 0 && config.getMaxSize() == 0) { + return createMap(name, config); + } + + return createMapCache(name, config); + } + + private Cache createMap(String name, CacheConfig config) { + RMap map = RedisUtils.getClient().getMap(name); + + Cache cache = getCaffeineCacheDecorator(new RedissonCache(map, allowNullValues)); + if (transactionAware) { + cache = new TransactionAwareCacheDecorator(cache); + } + Cache oldCache = instanceMap.putIfAbsent(name, cache); + if (oldCache != null) { + cache = oldCache; + } + return cache; + } + + private Cache createMapCache(String name, CacheConfig config) { + RMapCache map = RedisUtils.getClient().getMapCache(name); + + Cache cache = getCaffeineCacheDecorator(new RedissonCache(map, config, allowNullValues)); + if (transactionAware) { + cache = new TransactionAwareCacheDecorator(cache); + } + Cache oldCache = instanceMap.putIfAbsent(name, cache); + if (oldCache != null) { + cache = oldCache; + } else { + map.setMaxSize(config.getMaxSize()); + } + return cache; + } + + @Override + public Collection getCacheNames() { + return Collections.unmodifiableSet(configMap.keySet()); + } + + + /** + * 获取缓存名称包装 + * + * @param cacheName 缓存名称 + * @return {@link String } + */ + public abstract String getCacheNameWrapper(String cacheName); + + /** + * 获取Caffeine缓存装饰器 + * + * @param cache 缓存 + * @return {@link Cache } + */ + public abstract Cache getCaffeineCacheDecorator(Cache cache); +} diff --git a/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/manager/CaffeineCacheDecorator.java b/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/manager/CaffeineCacheDecorator.java index ee1d405f2..d72954cd8 100644 --- a/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/manager/CaffeineCacheDecorator.java +++ b/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/manager/CaffeineCacheDecorator.java @@ -32,7 +32,7 @@ public class CaffeineCacheDecorator implements Cache { } public String getUniqueKey(Object key) { - return cache.getName() + ":" + key; + return getName() + ":" + key; } @Override diff --git a/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/manager/PlusSpringCacheManager.java b/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/manager/PlusSpringCacheManager.java index a48cb1422..cb4dc4f3e 100644 --- a/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/manager/PlusSpringCacheManager.java +++ b/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/manager/PlusSpringCacheManager.java @@ -1,5 +1,5 @@ /** - * Copyright (c) 2013-2021 Nikita Koksharov + * Copyright (c) 2024-2024 supreme * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -15,178 +15,26 @@ */ package org.dromara.common.redis.manager; -import org.dromara.common.redis.utils.RedisUtils; -import org.redisson.api.RMap; -import org.redisson.api.RMapCache; -import org.redisson.spring.cache.CacheConfig; -import org.redisson.spring.cache.RedissonCache; -import org.springframework.boot.convert.DurationStyle; import org.springframework.cache.Cache; -import org.springframework.cache.CacheManager; -import org.springframework.cache.transaction.TransactionAwareCacheDecorator; -import org.springframework.util.StringUtils; - -import java.util.Collection; -import java.util.Collections; -import java.util.Map; -import java.util.concurrent.ConcurrentHashMap; -import java.util.concurrent.ConcurrentMap; /** - * A {@link org.springframework.cache.CacheManager} implementation + * A {@link org.dromara.common.redis.manager.AbstractPlusSpringCacheManager} extends * backed by Redisson instance. *

- * 修改 RedissonSpringCacheManager 源码 - * 重写 cacheName 处理方法 支持多参数 - * - * @author Nikita Koksharov + * 重写 cacheName 处理方法 + * 重写 获取Caffeine缓存装饰器 * + * @author supreme */ -@SuppressWarnings("unchecked") -public class PlusSpringCacheManager implements CacheManager { - - private boolean dynamic = true; - - private boolean allowNullValues = true; - - private boolean transactionAware = true; - - Map configMap = new ConcurrentHashMap<>(); - ConcurrentMap instanceMap = new ConcurrentHashMap<>(); - - /** - * Creates CacheManager supplied by Redisson instance - */ - public PlusSpringCacheManager() { - } - - - /** - * Defines possibility of storing {@code null} values. - *

- * Default is true - * - * @param allowNullValues stores if true - */ - public void setAllowNullValues(boolean allowNullValues) { - this.allowNullValues = allowNullValues; - } - - /** - * Defines if cache aware of Spring-managed transactions. - * If {@code true} put/evict operations are executed only for successful transaction in after-commit phase. - *

- * Default is false - * - * @param transactionAware cache is transaction aware if true - */ - public void setTransactionAware(boolean transactionAware) { - this.transactionAware = transactionAware; - } - - /** - * Defines 'fixed' cache names. - * A new cache instance will not be created in dynamic for non-defined names. - *

- * `null` parameter setups dynamic mode - * - * @param names of caches - */ - public void setCacheNames(Collection names) { - if (names != null) { - for (String name : names) { - getCache(name); - } - dynamic = false; - } else { - dynamic = true; - } - } - - /** - * Set cache config mapped by cache name - * - * @param config object - */ - public void setConfig(Map config) { - this.configMap = (Map) config; - } - - protected CacheConfig createDefaultConfig() { - return new CacheConfig(); - } +public class PlusSpringCacheManager extends AbstractPlusSpringCacheManager { @Override - public Cache getCache(String name) { - // 重写 cacheName 支持多参数 - String[] array = StringUtils.delimitedListToStringArray(name, "#"); - name = array[0]; - - Cache cache = instanceMap.get(name); - if (cache != null) { - return cache; - } - if (!dynamic) { - return cache; - } - - CacheConfig config = configMap.get(name); - if (config == null) { - config = createDefaultConfig(); - configMap.put(name, config); - } - - if (array.length > 1) { - config.setTTL(DurationStyle.detectAndParse(array[1]).toMillis()); - } - if (array.length > 2) { - config.setMaxIdleTime(DurationStyle.detectAndParse(array[2]).toMillis()); - } - if (array.length > 3) { - config.setMaxSize(Integer.parseInt(array[3])); - } - - if (config.getMaxIdleTime() == 0 && config.getTTL() == 0 && config.getMaxSize() == 0) { - return createMap(name, config); - } - - return createMapCache(name, config); - } - - private Cache createMap(String name, CacheConfig config) { - RMap map = RedisUtils.getClient().getMap(name); - - Cache cache = new CaffeineCacheDecorator(new RedissonCache(map, allowNullValues)); - if (transactionAware) { - cache = new TransactionAwareCacheDecorator(cache); - } - Cache oldCache = instanceMap.putIfAbsent(name, cache); - if (oldCache != null) { - cache = oldCache; - } - return cache; - } - - private Cache createMapCache(String name, CacheConfig config) { - RMapCache map = RedisUtils.getClient().getMapCache(name); - - Cache cache = new CaffeineCacheDecorator(new RedissonCache(map, config, allowNullValues)); - if (transactionAware) { - cache = new TransactionAwareCacheDecorator(cache); - } - Cache oldCache = instanceMap.putIfAbsent(name, cache); - if (oldCache != null) { - cache = oldCache; - } else { - map.setMaxSize(config.getMaxSize()); - } - return cache; + public String getCacheNameWrapper(String cacheName) { + return cacheName; } @Override - public Collection getCacheNames() { - return Collections.unmodifiableSet(configMap.keySet()); + public Cache getCaffeineCacheDecorator(Cache cache) { + return new CaffeineCacheDecorator(cache); } - - } diff --git a/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/config/TenantConfig.java b/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/config/TenantConfig.java index cca6810b0..73f91110f 100644 --- a/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/config/TenantConfig.java +++ b/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/config/TenantConfig.java @@ -5,6 +5,7 @@ import cn.hutool.core.util.ObjectUtil; import com.mybatisflex.core.tenant.TenantFactory; import org.dromara.common.core.utils.reflect.ReflectUtils; import org.dromara.common.mybatis.config.MybatisFlexConfig; +import org.dromara.common.redis.config.CacheConfig; import org.dromara.common.redis.config.RedisConfig; import org.dromara.common.redis.config.properties.RedissonProperties; import org.dromara.common.tenant.core.TenantSaTokenDao; @@ -16,7 +17,6 @@ import org.redisson.config.ClusterServersConfig; import org.redisson.config.SingleServerConfig; import org.redisson.spring.starter.RedissonAutoConfigurationCustomizer; import org.springframework.boot.autoconfigure.AutoConfiguration; -import org.springframework.boot.autoconfigure.condition.ConditionalOnBean; import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; import org.springframework.boot.context.properties.EnableConfigurationProperties; import org.springframework.cache.CacheManager; @@ -29,7 +29,7 @@ import org.springframework.context.annotation.Primary; * @author Lion Li */ @EnableConfigurationProperties(TenantProperties.class) -@AutoConfiguration(after = {RedisConfig.class, MybatisFlexConfig.class}) +@AutoConfiguration(after = {RedisConfig.class, MybatisFlexConfig.class}, before = CacheConfig.class) @ConditionalOnProperty(value = "tenant.enable", havingValue = "true") public class TenantConfig { @@ -66,7 +66,6 @@ public class TenantConfig { /** * 多租户缓存管理器 */ - @Primary @Bean public CacheManager tenantCacheManager() { return new TenantSpringCacheManager(); diff --git a/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/manager/TenantCaffeineCacheDecorator.java b/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/manager/TenantCaffeineCacheDecorator.java new file mode 100644 index 000000000..9898c876d --- /dev/null +++ b/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/manager/TenantCaffeineCacheDecorator.java @@ -0,0 +1,34 @@ +package org.dromara.common.tenant.manager; + +import cn.hutool.core.text.StrPool; +import org.dromara.common.core.constant.GlobalConstants; +import org.dromara.common.core.utils.StringUtils; +import org.dromara.common.redis.manager.CaffeineCacheDecorator; +import org.dromara.common.tenant.helper.TenantHelper; +import org.springframework.cache.Cache; + +/** + * 重写 CaffeineCacheDecorator Name处理方法 支持多租户 + * + * @author Supreme + * @since 2024/07/25 + */ +public class TenantCaffeineCacheDecorator extends CaffeineCacheDecorator { + public TenantCaffeineCacheDecorator(Cache cache) { + super(cache); + } + + @Override + public String getName() { + String cacheName = super.getName(); + if (StringUtils.contains(cacheName, GlobalConstants.GLOBAL_REDIS_KEY)) { + return cacheName; + } + String tenantId = TenantHelper.getTenantId(); + if (StringUtils.startsWith(cacheName, tenantId)) { + // 如果存在则直接返回 + return cacheName; + } + return tenantId + StrPool.COLON + cacheName; + } +} diff --git a/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/manager/TenantSpringCacheManager.java b/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/manager/TenantSpringCacheManager.java index d230afc1a..448ad36c7 100644 --- a/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/manager/TenantSpringCacheManager.java +++ b/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/manager/TenantSpringCacheManager.java @@ -1,32 +1,41 @@ package org.dromara.common.tenant.manager; +import cn.hutool.core.text.StrPool; import org.dromara.common.core.constant.GlobalConstants; import org.dromara.common.core.utils.StringUtils; +import org.dromara.common.redis.manager.AbstractPlusSpringCacheManager; import org.dromara.common.redis.manager.PlusSpringCacheManager; import org.dromara.common.tenant.helper.TenantHelper; import org.springframework.cache.Cache; /** * 重写 cacheName 处理方法 支持多租户 + * 重写 CaffeineCacheDecorator 获取方法 支持多租户 * - * @author Lion Li + * @author Supreme + * @since 2024/07/25 */ -public class TenantSpringCacheManager extends PlusSpringCacheManager { +public class TenantSpringCacheManager extends AbstractPlusSpringCacheManager { public TenantSpringCacheManager() { } + @Override - public Cache getCache(String name) { - if (StringUtils.contains(name, GlobalConstants.GLOBAL_REDIS_KEY)) { - return super.getCache(name); + public String getCacheNameWrapper(String cacheName) { + if (StringUtils.contains(cacheName, GlobalConstants.GLOBAL_REDIS_KEY)) { + return cacheName; } String tenantId = TenantHelper.getTenantId(); - if (StringUtils.startsWith(name, tenantId)) { + if (StringUtils.startsWith(cacheName, tenantId)) { // 如果存在则直接返回 - return super.getCache(name); + return cacheName; } - return super.getCache(tenantId + ":" + name); + return tenantId + StrPool.COLON + cacheName; } + @Override + public Cache getCaffeineCacheDecorator(Cache cache) { + return new TenantCaffeineCacheDecorator(cache); + } } -- Gitee From 76253ecc42bb3d3af7f7bea283e98fae686e2fbd Mon Sep 17 00:00:00 2001 From: hfdy2019 <5463852+hfdy2019@user.noreply.gitee.com> Date: Sat, 3 Aug 2024 06:25:58 +0800 Subject: [PATCH 098/540] =?UTF-8?q?update:=20=E4=BC=98=E5=8C=96=20?= =?UTF-8?q?=E8=A7=92=E8=89=B2=E5=88=86=E9=85=8D=E8=8F=9C=E5=8D=95=E6=9F=A5?= =?UTF-8?q?=E8=AF=A2=20=E5=8F=AA=E6=9F=A5=E8=AF=A2=E5=BD=93=E5=89=8D?= =?UTF-8?q?=E7=A7=9F=E6=88=B7=E4=B8=8B=E7=9A=84=E5=A5=97=E9=A4=90=E9=85=8D?= =?UTF-8?q?=E7=BD=AE=E7=9A=84=E8=8F=9C=E5=8D=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: hfdy2019 <5463852+hfdy2019@user.noreply.gitee.com> --- .../controller/system/SysMenuController.java | 8 ++-- .../system/mapper/SysTenantPackageMapper.java | 43 ++++++++++++++++++- .../system/service/ISysMenuService.java | 6 ++- .../service/impl/SysMenuServiceImpl.java | 31 ++++++++----- 4 files changed, 71 insertions(+), 17 deletions(-) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysMenuController.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysMenuController.java index e5daa0e12..9319c56a1 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysMenuController.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysMenuController.java @@ -58,7 +58,7 @@ public class SysMenuController extends BaseController { @SaCheckPermission("system:menu:list") @GetMapping("/list") public R> list(SysMenuBo menu) { - List menus = menuService.selectMenuList(menu, LoginHelper.getUserId()); + List menus = menuService.selectMenuList(menu, LoginHelper.getUserId(), true); return R.ok(menus); } @@ -83,7 +83,7 @@ public class SysMenuController extends BaseController { @SaCheckPermission("system:menu:query") @GetMapping("/treeselect") public R>> treeselect(SysMenuBo menu) { - List menus = menuService.selectMenuList(menu, LoginHelper.getUserId()); + List menus = menuService.selectMenuList(menu, LoginHelper.getUserId(), false); return R.ok(menuService.buildMenuTreeSelect(menus)); } @@ -95,7 +95,7 @@ public class SysMenuController extends BaseController { @SaCheckPermission("system:menu:query") @GetMapping(value = "/roleMenuTreeselect/{roleId}") public R roleMenuTreeselect(@PathVariable("roleId") Long roleId) { - List menus = menuService.selectMenuList(LoginHelper.getUserId()); + List menus = menuService.selectMenuList(LoginHelper.getUserId(), false); MenuTreeSelectVo selectVo = new MenuTreeSelectVo(); selectVo.setCheckedKeys(menuService.selectMenuListByRoleId(roleId)); selectVo.setMenus(menuService.buildMenuTreeSelect(menus)); @@ -111,7 +111,7 @@ public class SysMenuController extends BaseController { @SaCheckPermission("system:menu:query") @GetMapping(value = "/tenantPackageMenuTreeselect/{packageId}") public R tenantPackageMenuTreeselect(@PathVariable("packageId") Long packageId) { - List menus = menuService.selectMenuList(LoginHelper.getUserId()); + List menus = menuService.selectMenuList(LoginHelper.getUserId(), true); MenuTreeSelectVo selectVo = new MenuTreeSelectVo(); selectVo.setCheckedKeys(menuService.selectMenuListByPackageId(packageId)); selectVo.setMenus(menuService.buildMenuTreeSelect(menus)); diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysTenantPackageMapper.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysTenantPackageMapper.java index 532d991d2..c9c6bcd5c 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysTenantPackageMapper.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysTenantPackageMapper.java @@ -1,7 +1,20 @@ package org.dromara.system.mapper; +import cn.hutool.core.convert.Convert; +import com.mybatisflex.core.query.QueryWrapper; +import org.dromara.common.core.constant.TenantConstants; +import org.dromara.common.core.exception.ServiceException; +import org.dromara.common.core.utils.StringUtils; import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; import org.dromara.system.domain.SysTenantPackage; +import org.dromara.system.domain.vo.SysTenantPackageVo; + +import java.util.ArrayList; +import java.util.List; +import java.util.Optional; + +import static org.dromara.system.domain.table.SysTenantPackageTableDef.SYS_TENANT_PACKAGE; +import static org.dromara.system.domain.table.SysTenantTableDef.SYS_TENANT; /** * 租户套餐Mapper接口 @@ -9,5 +22,33 @@ import org.dromara.system.domain.SysTenantPackage; * @author Michelle.Chung */ public interface SysTenantPackageMapper extends BaseMapperPlus { - + /** + * 根据租户ID获取租户对应租户套餐下的菜单ID列表 + * + * @param tenantId 租户ID + * @return {@link List }<{@link Long }> + */ + default List selectMenuIdsByTenantId(String tenantId) { + // 默认租户,下面sql查不到对应的租户套餐,会被判定为租户已禁用或不存在 + // 顾需要特殊处理,返回空列表,使用侧会控制是否生效 + if (TenantConstants.DEFAULT_TENANT_ID.equals(tenantId)) { + return new ArrayList<>(); + } + SysTenantPackageVo sysTenantPackageVo = Optional.ofNullable( + selectOneByQueryAs(QueryWrapper.create() + .select(SYS_TENANT_PACKAGE.PACKAGE_ID, SYS_TENANT_PACKAGE.PACKAGE_NAME, SYS_TENANT_PACKAGE.MENU_IDS, SYS_TENANT_PACKAGE.STATUS) + .from(SYS_TENANT_PACKAGE.as("stp")) + .leftJoin(SYS_TENANT.as("st")) + .on(SYS_TENANT.PACKAGE_ID.eq(SYS_TENANT_PACKAGE.PACKAGE_ID)) + .and(SYS_TENANT.STATUS.eq(TenantConstants.NORMAL)) + .where(SYS_TENANT.TENANT_ID.eq(tenantId)), + SysTenantPackageVo.class)) + // 获取不到记录,则判断为查不到tenantId对应的租户,及绑定租户套餐(DEFAULT_TENANT未绑定租户套餐,上面已做处理),即判定为租户已禁用/不存在 + .orElseThrow(() -> new ServiceException(String.format("租户ID %s 对应租户已禁用或不存在", tenantId))); + // 通过该方式,避免编写if-else + // 三目表达式中判定租户套餐的status字段是否为禁用,如果是,则返回null,由Optional orElseThrow来抛出异常 + Optional.ofNullable(TenantConstants.DISABLE.equals(sysTenantPackageVo.getStatus()) ? null : sysTenantPackageVo.getStatus()) + .orElseThrow(() -> new ServiceException(String.format("租户套餐 %s 已禁用", sysTenantPackageVo.getPackageName()))); + return StringUtils.splitTo(sysTenantPackageVo.getMenuIds(), Convert::toLong); + } } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysMenuService.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysMenuService.java index 72d705e9b..926678158 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysMenuService.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysMenuService.java @@ -20,18 +20,20 @@ public interface ISysMenuService { * 根据用户查询系统菜单列表 * * @param userId 用户ID + * @param ignoreTenantPackage 是否忽略租户套餐设置 * @return 菜单列表 */ - List selectMenuList(Long userId); + List selectMenuList(Long userId, Boolean ignoreTenantPackage); /** * 根据用户查询系统菜单列表 * * @param menu 菜单信息 * @param userId 用户ID + * @param ignoreTenantPackage 是否忽略租户套餐设置 * @return 菜单列表 */ - List selectMenuList(SysMenuBo menu, Long userId); + List selectMenuList(SysMenuBo menu, Long userId, Boolean ignoreTenantPackage); /** * 根据用户ID查询权限 diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysMenuServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysMenuServiceImpl.java index f233caf84..5ced8929f 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysMenuServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysMenuServiceImpl.java @@ -3,8 +3,6 @@ package org.dromara.system.service.impl; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.convert.Convert; import cn.hutool.core.lang.tree.Tree; -import cn.hutool.core.util.ObjectUtil; -import lombok.RequiredArgsConstructor; import com.mybatisflex.core.query.QueryWrapper; import lombok.RequiredArgsConstructor; import org.dromara.common.core.constant.UserConstants; @@ -13,6 +11,7 @@ import org.dromara.common.core.utils.StreamUtils; import org.dromara.common.core.utils.StringUtils; import org.dromara.common.core.utils.TreeBuildUtils; import org.dromara.common.satoken.utils.LoginHelper; +import org.dromara.common.tenant.helper.TenantHelper; import org.dromara.system.domain.SysMenu; import org.dromara.system.domain.SysRole; import org.dromara.system.domain.SysTenantPackage; @@ -22,7 +21,6 @@ import org.dromara.system.domain.vo.RouterVo; import org.dromara.system.domain.vo.SysMenuVo; import org.dromara.system.mapper.SysMenuMapper; import org.dromara.system.mapper.SysRoleMapper; -import org.dromara.system.mapper.SysRoleMenuMapper; import org.dromara.system.mapper.SysTenantPackageMapper; import org.dromara.system.service.ISysMenuService; import org.springframework.stereotype.Service; @@ -46,36 +44,46 @@ public class SysMenuServiceImpl implements ISysMenuService { private final SysMenuMapper baseMapper; private final SysRoleMapper roleMapper; - private final SysRoleMenuMapper roleMenuMapper; private final SysTenantPackageMapper tenantPackageMapper; /** * 根据用户查询系统菜单列表 * * @param userId 用户ID + * @param ignoreTenantPackage 是否忽略租户套餐设置 * @return 菜单列表 */ @Override - public List selectMenuList(Long userId) { - return selectMenuList(new SysMenuBo(), userId); + public List selectMenuList(Long userId, Boolean ignoreTenantPackage) { + return selectMenuList(new SysMenuBo(), userId, ignoreTenantPackage); } /** * 查询系统菜单列表 * * @param menu 菜单信息 + * @param userId 用户ID + * @param ignoreTenantPackage 是否忽略租户套餐设置 * @return 菜单列表 */ @Override - public List selectMenuList(SysMenuBo menu, Long userId) { + public List selectMenuList(SysMenuBo menu, Long userId, Boolean ignoreTenantPackage) { List menuList; + // 获取租户对应租户套餐下的菜单ID列表 + List menuIds = new ArrayList<>(); + // 支持忽略租户套餐菜单获取 + if (!ignoreTenantPackage) { + menuIds = tenantPackageMapper.selectMenuIdsByTenantId(TenantHelper.getTenantId()); + } // 管理员显示所有菜单信息 if (LoginHelper.isSuperAdmin(userId)) { menuList = baseMapper.selectListByQueryAs( QueryWrapper.create().from(SYS_MENU) - .where(SYS_MENU.MENU_NAME.like(menu.getMenuName())) - .and(SYS_MENU.VISIBLE.eq(menu.getVisible())) - .and(SYS_MENU.STATUS.eq(menu.getStatus())) + .where(SYS_MENU.MENU_NAME.like(menu.getMenuName(), StringUtils.isNotBlank(menu.getMenuName()))) + .and(SYS_MENU.VISIBLE.eq(menu.getVisible(), StringUtils.isNotBlank(menu.getVisible()))) + .and(SYS_MENU.STATUS.eq(menu.getStatus(), StringUtils.isNotBlank(menu.getStatus()))) + // 如果从租户套餐中获取菜单ID列表为空,则管理员取所有菜单 + .and(SYS_MENU.MENU_ID.in(menuIds, CollUtil.isNotEmpty(menuIds))) .orderBy(SYS_MENU.PARENT_ID, true) .orderBy(SYS_MENU.ORDER_NUM, true), SysMenuVo.class @@ -92,6 +100,9 @@ public class SysMenuServiceImpl implements ISysMenuService { .and(SYS_MENU.MENU_NAME.like(menu.getMenuName(), StringUtils.isNotBlank(menu.getMenuName()))) .and(SYS_MENU.VISIBLE.like(menu.getVisible(), StringUtils.isNotBlank(menu.getVisible()))) .and(SYS_MENU.STATUS.like(menu.getStatus(), StringUtils.isNotBlank(menu.getStatus()))) + // 如果从租户套餐中获取菜单ID列表为空,则普通用户取拥有角色下所有的菜单 + // 用户只能给其他角色分配名下有的菜单,不可越权 + .and(SYS_MENU.MENU_ID.in(menuIds, CollUtil.isNotEmpty(menuIds))) .orderBy(SYS_MENU.PARENT_ID, true) .orderBy(SYS_MENU.ORDER_NUM, true); -- Gitee From 88b962596adb7ee289be78481b910b82f4aaece6 Mon Sep 17 00:00:00 2001 From: hfdy2019 <5463852+hfdy2019@user.noreply.gitee.com> Date: Sat, 3 Aug 2024 06:39:52 +0800 Subject: [PATCH 099/540] =?UTF-8?q?update:=20=E4=BC=98=E5=8C=96=20?= =?UTF-8?q?=E7=A7=9F=E6=88=B7/=E7=A7=9F=E6=88=B7=E5=A5=97=E9=A4=90=20?= =?UTF-8?q?=E7=8A=B6=E6=80=81/=E5=88=A0=E9=99=A4=20=E6=93=8D=E4=BD=9C?= =?UTF-8?q?=E6=A0=A1=E9=AA=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: hfdy2019 <5463852+hfdy2019@user.noreply.gitee.com> --- .../impl/SysTenantPackageServiceImpl.java | 25 +++++++++-- .../service/impl/SysTenantServiceImpl.java | 45 +++++++++++++++++-- 2 files changed, 62 insertions(+), 8 deletions(-) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantPackageServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantPackageServiceImpl.java index 28f806217..4cc3cf425 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantPackageServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantPackageServiceImpl.java @@ -10,6 +10,7 @@ import org.dromara.common.core.utils.MapstructUtils; import org.dromara.common.core.utils.StringUtils; import org.dromara.common.mybatis.core.page.PageQuery; import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.dromara.common.tenant.helper.TenantHelper; import org.dromara.system.domain.SysTenantPackage; import org.dromara.system.domain.bo.SysTenantPackageBo; import org.dromara.system.domain.vo.SysTenantPackageVo; @@ -125,6 +126,11 @@ public class SysTenantPackageServiceImpl implements ISysTenantPackageService { */ @Override public int updatePackageStatus(SysTenantPackageBo bo) { + if (TenantConstants.DISABLE.equals(bo.getStatus())) { + // 如果修改状态为禁用,则需判定该租户套餐是否绑定租户,如果绑定,则不可禁用 + checkTenantPackageIdsInUse(List.of(bo.getPackageId())); + } + SysTenantPackage tenantPackage = MapstructUtils.convert(bo, SysTenantPackage.class); return baseMapper.update(tenantPackage); } @@ -136,12 +142,23 @@ public class SysTenantPackageServiceImpl implements ISysTenantPackageService { @Transactional(rollbackFor = Exception.class) public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { if(isValid){ - boolean exists = tenantMapper.selectCountByQuery(QueryWrapper.create().from(SYS_TENANT).where(SYS_TENANT.PACKAGE_ID.in(ids))) >0; - if (exists) { - throw new ServiceException("租户套餐已被使用"); - } + checkTenantPackageIdsInUse(ids); } return baseMapper.deleteBatchByIds(ids) > 0; } + /** + * 检查租户套餐ID集合是否在使用中 + * + * @param packageIds 租户套餐ID集合 + */ + private void checkTenantPackageIdsInUse(Collection packageIds) { + boolean exists = TenantHelper.ignore(() -> + tenantMapper.selectCountByQuery(QueryWrapper.create().from(SYS_TENANT).where(SYS_TENANT.PACKAGE_ID.in(packageIds))) >0 + ); + if (exists) { + throw new ServiceException("租户套餐已被使用, 不可禁用!"); + } + } + } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java index 08a38dcd3..65cbc7fce 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java @@ -1,6 +1,8 @@ package org.dromara.system.service.impl; import cn.dev33.satoken.secure.BCrypt; +import cn.dev33.satoken.stp.StpUtil; +import cn.hutool.core.collection.CollUtil; import cn.hutool.core.convert.Convert; import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.RandomUtil; @@ -13,27 +15,28 @@ import lombok.RequiredArgsConstructor; import org.dromara.common.core.constant.CacheNames; import org.dromara.common.core.constant.Constants; import org.dromara.common.core.constant.TenantConstants; +import org.dromara.common.core.domain.model.LoginUser; import org.dromara.common.core.exception.ServiceException; import org.dromara.common.core.utils.MapstructUtils; import org.dromara.common.core.utils.SpringUtils; +import org.dromara.common.core.utils.StreamUtils; import org.dromara.common.core.utils.StringUtils; import org.dromara.common.mybatis.core.page.PageQuery; import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.dromara.common.satoken.utils.LoginHelper; import org.dromara.common.tenant.helper.TenantHelper; import org.dromara.system.domain.*; import org.dromara.system.domain.bo.SysTenantBo; import org.dromara.system.domain.vo.SysTenantVo; import org.dromara.system.mapper.*; import org.dromara.system.service.ISysTenantService; +import org.jetbrains.annotations.Nullable; import org.springframework.cache.annotation.CacheEvict; import org.springframework.cache.annotation.Cacheable; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; -import java.util.ArrayList; -import java.util.Collection; -import java.util.Date; -import java.util.List; +import java.util.*; import static org.dromara.system.domain.table.SysConfigTableDef.SYS_CONFIG; import static org.dromara.system.domain.table.SysDictDataTableDef.SYS_DICT_DATA; @@ -286,10 +289,44 @@ public class SysTenantServiceImpl implements ISysTenantService { @CacheEvict(cacheNames = CacheNames.SYS_TENANT, key = "#bo.tenantId") @Override public int updateTenantStatus(SysTenantBo bo) { + if (TenantConstants.DISABLE.equals(bo.getStatus())) { + // 如果修改状态为禁用,则需判定该租户是否存在登录用户,如果存在,则不可禁用 + Optional anyOnlineUser = getAnyOnlineUserOpt(bo); + if (anyOnlineUser.isPresent()) { + throw new ServiceException("该租户下存在在线用户,不可禁用!如需禁用,请先在【在线用户】页强制下线所有用户!"); + } + } + // 当切换至当前租户时,需清除动态租户 + if (TenantHelper.isEnable() && bo.getTenantId().equals(TenantHelper.getDynamic())) { + TenantHelper.clearDynamic(); + } SysTenant tenant = MapstructUtils.convert(bo, SysTenant.class); return TenantHelper.ignore(() -> baseMapper.update(tenant)); } + /** + * 获取当前操作的租户下的 任何在线用户 选项 + * + * @param bo 租户BO + * @return {@link Optional }<{@link String }> + */ + private Optional getAnyOnlineUserOpt(SysTenantBo bo) { + List keys = StpUtil.searchTokenValue("", 0, -1, false); + if (CollUtil.isEmpty(keys)) { + return Optional.empty(); + } + // 租户关联的在线用户量过大会导致redis阻塞卡顿 谨慎操作 + return StreamUtils.findAny(keys, (key) -> { + String token = StringUtils.substringAfterLast(key, ":"); + // 如果已经过期则跳过 + if (StpUtil.stpLogic.getTokenActiveTimeoutByToken(token) < -1) { + return false; + } + LoginUser loginUser = LoginHelper.getLoginUser(token); + return bo.getTenantId().equals(loginUser.getTenantId()); + }); + } + /** * 校验租户是否允许操作 * -- Gitee From fa9420467abb4e91d9ed33732196325e849fb371 Mon Sep 17 00:00:00 2001 From: hfdy2019 <5463852+hfdy2019@user.noreply.gitee.com> Date: Sat, 3 Aug 2024 06:41:36 +0800 Subject: [PATCH 100/540] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=20=E8=A7=92?= =?UTF-8?q?=E8=89=B2=E6=9C=AA=E6=8E=88=E6=9D=83=E7=94=A8=E6=88=B7=E6=9F=A5?= =?UTF-8?q?=E8=AF=A2=20=E8=BF=94=E5=9B=9E=E7=BB=93=E6=9E=9C=E9=94=99?= =?UTF-8?q?=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: hfdy2019 <5463852+hfdy2019@user.noreply.gitee.com> --- .../system/service/impl/SysUserServiceImpl.java | 16 +++++----------- 1 file changed, 5 insertions(+), 11 deletions(-) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java index 9d67f69a3..a28b3b16c 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java @@ -8,8 +8,6 @@ import cn.hutool.core.util.ObjectUtil; import com.mybatisflex.core.BaseMapper; import com.mybatisflex.core.paginate.Page; import com.mybatisflex.core.query.If; -import com.mybatisflex.core.query.QueryColumn; -import com.mybatisflex.core.query.QueryCondition; import com.mybatisflex.core.query.QueryWrapper; import com.mybatisflex.core.row.Db; import com.mybatisflex.core.util.UpdateEntity; @@ -91,8 +89,7 @@ public class SysUserServiceImpl implements ISysUserService, UserService { private QueryWrapper buildQueryWrapper(SysUserBo user) { Map params = user.getParams(); QueryWrapper queryWrapper = QueryWrapper.create().from(SYS_USER.as("u")) - .where(SYS_USER.DEL_FLAG.eq(UserConstants.USER_NORMAL)) - .and(SYS_USER.USER_ID.eq(user.getUserId())) + .where(SYS_USER.USER_ID.eq(user.getUserId())) .and(SYS_USER.USER_NAME.like(user.getUserName())) .and(SYS_USER.STATUS.eq(user.getStatus())) .and(SYS_USER.PHONENUMBER.eq(user.getPhonenumber())) @@ -108,8 +105,6 @@ public class SysUserServiceImpl implements ISysUserService, UserService { queryWrapper.orderBy(SYS_USER.USER_ID, true); if (StringUtils.isNotBlank(user.getExcludeUserIds())) { queryWrapper.notIn("u.user_id", StringUtils.splitTo(user.getExcludeUserIds(), Convert::toLong)); -// TODO -// wrapper.notIn("u.user_id", StringUtils.splitTo(user.getExcludeUserIds(), Convert::toLong)); } return queryWrapper; } @@ -128,8 +123,7 @@ public class SysUserServiceImpl implements ISysUserService, UserService { .leftJoin(SYS_DEPT).as("d").on(SYS_USER.DEPT_ID.eq(SYS_DEPT.DEPT_ID)) .leftJoin(SYS_USER_ROLE).on(SYS_USER.USER_ID.eq(SYS_USER_ROLE.USER_ID)) .leftJoin(SYS_ROLE).on(SYS_ROLE.ROLE_ID.eq(SYS_USER_ROLE.ROLE_ID)) - .where(SYS_USER.DEL_FLAG.eq(UserConstants.USER_NORMAL)) - .and(SYS_ROLE.ROLE_ID.eq(user.getRoleId())) + .where(SYS_ROLE.ROLE_ID.eq(user.getRoleId())) .and(SYS_USER.USER_NAME.like(user.getUserName())) .and(SYS_USER.STATUS.eq(user.getStatus())) .and(SYS_USER.PHONENUMBER.eq(user.getPhonenumber())) @@ -147,14 +141,14 @@ public class SysUserServiceImpl implements ISysUserService, UserService { @Override public TableDataInfo selectUnallocatedList(SysUserBo user, PageQuery pageQuery) { List userIds = userRoleMapper.selectUserIdsByRoleId(user.getRoleId()); + userIds.add(UserConstants.SUPER_ADMIN_ID); QueryWrapper queryWrapper = QueryWrapper.create() .select(distinct(SYS_USER.USER_ID, SYS_USER.DEPT_ID, SYS_USER.USER_NAME, SYS_USER.NICK_NAME, SYS_USER.EMAIL, SYS_USER.PHONENUMBER, SYS_USER.STATUS, SYS_USER.CREATE_TIME)) .from(SYS_USER).as("u") .leftJoin(SYS_DEPT).as("d").on(SYS_USER.DEPT_ID.eq(SYS_DEPT.DEPT_ID)) .leftJoin(SYS_USER_ROLE).on(SYS_USER.USER_ID.eq(SYS_USER_ROLE.USER_ID)) .leftJoin(SYS_ROLE).on(SYS_ROLE.ROLE_ID.eq(SYS_USER_ROLE.ROLE_ID)) - .where(SYS_USER.DEL_FLAG.eq(UserConstants.USER_NORMAL)) - .and(SYS_ROLE.ROLE_ID.eq(user.getRoleId()).or(SYS_ROLE.ROLE_ID.isNull())) + .where(SYS_ROLE.ROLE_ID.ne(user.getRoleId()).or(SYS_ROLE.ROLE_ID.isNull())) .and(SYS_USER.USER_ID.notIn(userIds, If::isNotEmpty)) .and(SYS_USER.USER_NAME.like(user.getUserName())) .and(SYS_USER.PHONENUMBER.eq(user.getPhonenumber())) @@ -493,7 +487,7 @@ public class SysUserServiceImpl implements ISysUserService, UserService { roleList.remove(UserConstants.SUPER_ADMIN_ID); } // 判断是否具有此角色的操作权限 - List roles = roleMapper.selectRoleList(QueryWrapper.create().where(QueryCondition.createEmpty().and(new QueryColumn("r.role_id").in(roleList)))); + List roles = roleMapper.selectRoleList(QueryWrapper.create().in("r.role_id", roleList, CollUtil.isNotEmpty(roleList))); if (CollUtil.isEmpty(roles)) { throw new ServiceException("没有权限访问角色的数据"); } -- Gitee From c0a93a458d236ebf3e5eafda4606383521c2854e Mon Sep 17 00:00:00 2001 From: hfdy2019 <5463852+hfdy2019@user.noreply.gitee.com> Date: Sat, 3 Aug 2024 06:42:50 +0800 Subject: [PATCH 101/540] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=20=E7=A7=9F?= =?UTF-8?q?=E6=88=B7=E5=88=97=E8=A1=A8=E6=9F=A5=E8=AF=A2=20=E5=8F=AA?= =?UTF-8?q?=E6=9F=A5=E8=AF=A2=E5=90=AF=E7=94=A8=E7=9A=84=E7=A7=9F=E6=88=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: hfdy2019 <5463852+hfdy2019@user.noreply.gitee.com> --- .../java/org/dromara/web/controller/AuthController.java | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/ruoyi-admin/src/main/java/org/dromara/web/controller/AuthController.java b/ruoyi-admin/src/main/java/org/dromara/web/controller/AuthController.java index b561693d6..d50930c67 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/controller/AuthController.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/controller/AuthController.java @@ -12,6 +12,7 @@ import me.zhyd.oauth.model.AuthResponse; import me.zhyd.oauth.model.AuthUser; import me.zhyd.oauth.request.AuthRequest; import me.zhyd.oauth.utils.AuthStateUtils; +import org.dromara.common.core.constant.TenantConstants; import org.dromara.common.core.constant.UserConstants; import org.dromara.common.core.domain.R; import org.dromara.common.core.domain.model.LoginBody; @@ -203,8 +204,10 @@ public class AuthController { if (!enable) { return R.ok(result); } - - List tenantList = tenantService.queryList(new SysTenantBo()); + // 查询出来的租户需要状态为启用的 + SysTenantBo sysTenantBo = new SysTenantBo(); + sysTenantBo.setStatus(TenantConstants.NORMAL); + List tenantList = tenantService.queryList(sysTenantBo); List voList = MapstructUtils.convert(tenantList, TenantListVo.class); try { // 如果只超管返回所有租户 -- Gitee From d541c109ade02148fe502e27707cce1134355aa1 Mon Sep 17 00:00:00 2001 From: hfdy2019 <5463852+hfdy2019@user.noreply.gitee.com> Date: Sat, 3 Aug 2024 06:44:05 +0800 Subject: [PATCH 102/540] =?UTF-8?q?update:=20=E4=BC=98=E5=8C=96=20system?= =?UTF-8?q?=E6=A8=A1=E5=9D=97=20Mybatis-SQL=20=E8=BD=AC=20Mybatis-Flex?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: hfdy2019 <5463852+hfdy2019@user.noreply.gitee.com> --- .../dromara/system/domain/vo/SysUserVo.java | 4 +- .../dromara/system/mapper/SysMenuMapper.java | 62 +++++++++++++++++-- .../dromara/system/mapper/SysPostMapper.java | 15 ++++- .../system/mapper/SysUserRoleMapper.java | 27 +++++++- 4 files changed, 97 insertions(+), 11 deletions(-) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysUserVo.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysUserVo.java index c02a0c435..b181a5674 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysUserVo.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysUserVo.java @@ -2,8 +2,6 @@ package org.dromara.system.domain.vo; import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonProperty; -import com.mybatisflex.annotation.RelationManyToMany; -import com.mybatisflex.annotation.RelationOneToOne; import io.github.linpeilie.annotations.AutoMapper; import lombok.Data; import org.dromara.common.sensitive.annotation.Sensitive; @@ -124,7 +122,7 @@ public class SysUserVo implements Serializable { /** * 角色对象 */ - @RelationManyToMany(selfField = "userId", joinSelfColumn = "user_id", targetTable = "sys_role", targetField = "roleId", joinTargetColumn = "role_id", joinTable = "sys_user_role") + // @RelationManyToMany(selfField = "userId", joinSelfColumn = "user_id", targetTable = "sys_role", targetField = "roleId", joinTargetColumn = "role_id", joinTable = "sys_user_role") private List roles; /** diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysMenuMapper.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysMenuMapper.java index 470baa71c..8d2c630ec 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysMenuMapper.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysMenuMapper.java @@ -8,7 +8,11 @@ import org.apache.ibatis.annotations.Param; import java.util.List; +import static com.mybatisflex.core.query.QueryMethods.*; import static org.dromara.system.domain.table.SysMenuTableDef.SYS_MENU; +import static org.dromara.system.domain.table.SysRoleMenuTableDef.SYS_ROLE_MENU; +import static org.dromara.system.domain.table.SysRoleTableDef.SYS_ROLE; +import static org.dromara.system.domain.table.SysUserRoleTableDef.SYS_USER_ROLE; /** * 菜单表 数据层 @@ -23,7 +27,18 @@ public interface SysMenuMapper extends BaseMapperPlus { * @param userId 用户ID * @return 权限列表 */ - List selectMenuPermsByUserId(Long userId); + default List selectMenuPermsByUserId(Long userId) { + return selectListByQueryAs(QueryWrapper.create().select(distinct(SYS_MENU.PERMS)) + .from(SYS_MENU) + .leftJoin(SYS_ROLE_MENU).on(SYS_MENU.MENU_ID.eq(SYS_ROLE_MENU.MENU_ID)) + .leftJoin(SYS_ROLE).on(SYS_ROLE_MENU.ROLE_ID.eq(SYS_ROLE.ROLE_ID)).and(SYS_ROLE.STATUS.eq(UserConstants.ROLE_NORMAL)) + .where(SYS_MENU.STATUS.eq(UserConstants.MENU_NORMAL)) + .and(exists(select(SYS_USER_ROLE.ROLE_ID) + .from(SYS_USER_ROLE) + .where(SYS_USER_ROLE.ROLE_ID.eq(SYS_ROLE.ROLE_ID)) + .and(SYS_USER_ROLE.USER_ID.eq(userId)))) + , String.class); + } /** * 根据角色ID查询权限 @@ -31,7 +46,13 @@ public interface SysMenuMapper extends BaseMapperPlus { * @param roleId 角色ID * @return 权限列表 */ - List selectMenuPermsByRoleId(Long roleId); + default List selectMenuPermsByRoleId(Long roleId) { + return selectListByQueryAs(QueryWrapper.create().select(distinct(SYS_MENU.PERMS)) + .from(SYS_MENU) + .leftJoin(SYS_ROLE_MENU).on(SYS_MENU.MENU_ID.eq(SYS_ROLE_MENU.MENU_ID)) + .where(SYS_MENU.STATUS.eq(UserConstants.MENU_NORMAL)) + .and(SYS_ROLE_MENU.ROLE_ID.eq(roleId)), String.class); + } /** * 根据用户ID查询菜单 @@ -53,7 +74,23 @@ public interface SysMenuMapper extends BaseMapperPlus { * @param userId 用户ID * @return 菜单列表 */ - List selectMenuTreeByUserId(Long userId); + default List selectMenuTreeByUserId(Long userId) { + return selectListByQuery(QueryWrapper.create().select(distinct(SYS_MENU.MENU_ID, SYS_MENU.PARENT_ID, SYS_MENU.MENU_NAME, + SYS_MENU.PATH, SYS_MENU.COMPONENT, SYS_MENU.QUERY_PARAM, SYS_MENU.VISIBLE, SYS_MENU.STATUS, SYS_MENU.PERMS, + SYS_MENU.IS_FRAME, SYS_MENU.IS_CACHE, SYS_MENU.MENU_TYPE, SYS_MENU.ICON, SYS_MENU.ORDER_NUM, SYS_MENU.CREATE_TIME)) + .from(SYS_MENU) + .leftJoin(SYS_ROLE_MENU).on(SYS_MENU.MENU_ID.eq(SYS_ROLE_MENU.MENU_ID)) + .leftJoin(SYS_ROLE).on(SYS_ROLE_MENU.ROLE_ID.eq(SYS_ROLE.ROLE_ID)).and(SYS_ROLE.STATUS.eq(UserConstants.ROLE_NORMAL)) + .where(SYS_MENU.MENU_TYPE.in(UserConstants.TYPE_DIR, UserConstants.TYPE_MENU)) + .and(SYS_MENU.STATUS.eq(UserConstants.MENU_NORMAL)) + .and(exists(select(distinct(SYS_USER_ROLE.ROLE_ID)) + .from(SYS_USER_ROLE) + .where(SYS_USER_ROLE.ROLE_ID.eq(SYS_ROLE.ROLE_ID)) + .and(SYS_USER_ROLE.USER_ID.eq(userId)))) + .orderBy(SYS_MENU.PARENT_ID, true) + .orderBy(SYS_MENU.ORDER_NUM, true) + ); + } /** * 根据角色ID查询菜单树信息 @@ -62,6 +99,21 @@ public interface SysMenuMapper extends BaseMapperPlus { * @param menuCheckStrictly 菜单树选择项是否关联显示 * @return 选中菜单列表 */ - List selectMenuListByRoleId(@Param("roleId") Long roleId, @Param("menuCheckStrictly") boolean menuCheckStrictly); - + default List selectMenuListByRoleId(@Param("roleId") Long roleId, @Param("menuCheckStrictly") boolean menuCheckStrictly) { + return selectListByQueryAs(QueryWrapper.create().select(distinct(SYS_MENU.MENU_ID)) + .from(SYS_MENU) + .leftJoin(SYS_ROLE_MENU).on(SYS_MENU.MENU_ID.eq(SYS_ROLE_MENU.MENU_ID)) + .where(SYS_MENU.STATUS.eq(UserConstants.MENU_NORMAL)) + .and(SYS_ROLE_MENU.ROLE_ID.eq(roleId)) + .and(SYS_MENU.MENU_ID.notIn( + select(distinct(SYS_MENU.PARENT_ID)) + .from(SYS_MENU) + .innerJoin(SYS_ROLE_MENU) + .on(SYS_MENU.MENU_ID.eq(SYS_ROLE_MENU.MENU_ID)) + .and(SYS_ROLE_MENU.ROLE_ID.eq(roleId)) + , menuCheckStrictly)) + .orderBy(SYS_MENU.PARENT_ID, true) + .orderBy(SYS_MENU.ORDER_NUM, true) + , Long.class); + } } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysPostMapper.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysPostMapper.java index 702dafa72..fb835193f 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysPostMapper.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysPostMapper.java @@ -1,11 +1,16 @@ package org.dromara.system.mapper; +import com.mybatisflex.core.query.QueryWrapper; import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; import org.dromara.system.domain.SysPost; import org.dromara.system.domain.vo.SysPostVo; import java.util.List; +import static org.dromara.system.domain.table.SysPostTableDef.SYS_POST; +import static org.dromara.system.domain.table.SysUserPostTableDef.SYS_USER_POST; +import static org.dromara.system.domain.table.SysUserTableDef.SYS_USER; + /** * 岗位信息 数据层 * @@ -18,6 +23,14 @@ public interface SysPostMapper extends BaseMapperPlus { * @param userId 用户ID * @return 结果 */ - List selectPostsByUserId(Long userId); + default List selectPostsByUserId(Long userId) { + return selectListByQueryAs(QueryWrapper.create() + .select(SYS_POST.POST_ID, SYS_POST.DEPT_ID, SYS_POST.POST_NAME, SYS_POST.POST_CODE, SYS_POST.POST_CATEGORY) + .from(SYS_POST.as("p")) + .leftJoin(SYS_USER_POST.as("up")).on(SYS_USER_POST.POST_ID.eq(SYS_POST.POST_ID)) + .leftJoin(SYS_USER.as("u")).on(SYS_USER.USER_ID.eq(SYS_USER_POST.USER_ID)) + .where(SYS_USER.USER_ID.eq(userId)), + SysPostVo.class); + } } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysUserRoleMapper.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysUserRoleMapper.java index 532af6cea..ab2a1e47c 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysUserRoleMapper.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysUserRoleMapper.java @@ -1,17 +1,40 @@ package org.dromara.system.mapper; +import cn.hutool.core.collection.CollUtil; +import com.mybatisflex.core.query.QueryWrapper; import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; import org.dromara.system.domain.SysUserRole; +import java.util.ArrayList; import java.util.List; +import static com.mybatisflex.core.query.QueryMethods.distinct; +import static org.dromara.system.domain.table.SysUserRoleTableDef.SYS_USER_ROLE; +import static org.dromara.system.domain.table.SysUserTableDef.SYS_USER; + /** * 用户与角色关联表 数据层 * - * @author Lion Li + * @author Supreme Lai + * @since 2024/07/26 */ public interface SysUserRoleMapper extends BaseMapperPlus { - List selectUserIdsByRoleId(Long roleId); + /** + * 根据角色Id查询用户ID列表 + * + * @param roleId 角色ID + * @return {@link List }<{@link Long }> + */ + default List selectUserIdsByRoleId(Long roleId) { + List userIds = selectListByQueryAs(QueryWrapper.create() + .select(distinct(SYS_USER.USER_ID)) + .from(SYS_USER.as("u")) + .innerJoin(SYS_USER_ROLE.as("sur")) + .on(SYS_USER_ROLE.USER_ID.eq(SYS_USER.USER_ID)) + .and(SYS_USER_ROLE.ROLE_ID.eq(roleId)) + , Long.class); + return CollUtil.isNotEmpty(userIds) ? userIds : new ArrayList<>(); + } } -- Gitee From 321d1f4fcdf659fd59523552a78efed7f7f688ff Mon Sep 17 00:00:00 2001 From: hfdy2019 <5463852+hfdy2019@user.noreply.gitee.com> Date: Sat, 3 Aug 2024 06:44:57 +0800 Subject: [PATCH 103/540] =?UTF-8?q?update:=20=E4=BC=98=E5=8C=96=20workflow?= =?UTF-8?q?=20=E7=A7=9F=E6=88=B7=E6=9D=A1=E4=BB=B6=E8=AE=BE=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: hfdy2019 <5463852+hfdy2019@user.noreply.gitee.com> --- .../java/org/dromara/workflow/domain/TestLeave.java | 4 ++-- .../org/dromara/workflow/mapper/ActTaskMapper.java | 6 ++++-- .../workflow/service/impl/ActTaskServiceImpl.java | 11 ++++++----- 3 files changed, 12 insertions(+), 9 deletions(-) diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/TestLeave.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/TestLeave.java index 06b0797ed..184c50870 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/TestLeave.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/TestLeave.java @@ -4,7 +4,7 @@ import com.mybatisflex.annotation.Id; import com.mybatisflex.annotation.Table; import lombok.Data; import lombok.EqualsAndHashCode; -import org.dromara.common.mybatis.core.domain.BaseEntity; +import org.dromara.common.tenant.core.TenantEntity; import java.io.Serial; import java.util.Date; @@ -18,7 +18,7 @@ import java.util.Date; @Data @EqualsAndHashCode(callSuper = true) @Table("test_leave") -public class TestLeave extends BaseEntity { +public class TestLeave extends TenantEntity { @Serial private static final long serialVersionUID = 1L; diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/mapper/ActTaskMapper.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/mapper/ActTaskMapper.java index a94c302dc..56a395249 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/mapper/ActTaskMapper.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/mapper/ActTaskMapper.java @@ -6,6 +6,7 @@ import com.mybatisflex.core.query.QueryTable; import com.mybatisflex.core.query.QueryWrapper; import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; import org.dromara.common.mybatis.core.page.PageQuery; +import org.dromara.common.tenant.helper.TenantHelper; import org.dromara.workflow.domain.bo.TaskBo; import org.dromara.workflow.domain.vo.TaskVo; @@ -27,11 +28,12 @@ public interface ActTaskMapper extends BaseMapperPlus { .select(new QueryColumn("ARP", "KEY_").as("processDefinitionKey")) .select(new QueryColumn("ARP", "VERSION_").as("processDefinitionVersion")) .from(new QueryTable("ACT_HI_TASKINST").as("HTI")) - .innerJoin(ACT_HI_PROCINST.as("AHP")).on(new QueryColumn("HTI", "PROC_INST_ID_").eq(ACT_HI_PROCINST.PROC_INST_ID)) - .innerJoin(new QueryTable("ACT_RE_PROCDEF").as("ARP")).on(new QueryColumn("ARP", "ID_").eq(new QueryColumn("HTI", "PROC_DEF_ID_"))) + .innerJoin(ACT_HI_PROCINST.as("AHP")).on(new QueryColumn("HTI", "PROC_INST_ID_").eq(ACT_HI_PROCINST.PROC_INST_ID)).and(ACT_HI_PROCINST.TENANT_ID.eq(TenantHelper.getTenantId(), TenantHelper.isEnable())) + .innerJoin(new QueryTable("ACT_RE_PROCDEF").as("ARP")).on(new QueryColumn("ARP", "ID_").eq(new QueryColumn("HTI", "PROC_DEF_ID_"))).and(new QueryColumn("ARP", "TENANT_ID_").eq(TenantHelper.getTenantId(), TenantHelper.isEnable())) .where(new QueryColumn("HTI", "PARENT_TASK_ID_").isNull()) .and(new QueryColumn("HTI", "END_TIME_").isNotNull()) .and(new QueryColumn("HTI", "NAME").like(taskBo.getName())) + .and(new QueryColumn("HTI", "TENANT_ID_").eq(TenantHelper.getTenantId(), TenantHelper.isEnable())) .and(new QueryColumn("ARP", "NAME_").like(taskBo.getProcessDefinitionName())) .and(new QueryColumn("ARP", "KEY_").like(taskBo.getProcessDefinitionKey())) .and(new QueryColumn("HTI", "ASSIGNEE_").eq(userId)) diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActTaskServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActTaskServiceImpl.java index 9aa2d8099..fab7977c1 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActTaskServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActTaskServiceImpl.java @@ -268,14 +268,14 @@ public class ActTaskServiceImpl implements IActTaskService { .select(new QueryColumn("ARP", "KEY_").as("processDefinitionKey")) .select(new QueryColumn("ARP", "VERSION_").as("processDefinitionVersion")) .from(new QueryTable("ACT_RU_TASK").as("RES")) - .innerJoin(ACT_HI_PROCINST.as("AHP")).on(new QueryColumn("RES", "PROC_INST_ID_").eq(ACT_HI_PROCINST.PROC_INST_ID)) - .innerJoin(new QueryTable("ACT_RE_PROCDEF").as("ARP")).on(new QueryColumn("ARP", "ID_").eq(new QueryColumn("RES", "PROC_DEF_ID_"))) + .innerJoin(ACT_HI_PROCINST.as("AHP")).on(new QueryColumn("RES", "PROC_INST_ID_").eq(ACT_HI_PROCINST.PROC_INST_ID)).and(ACT_HI_PROCINST.TENANT_ID.eq(TenantHelper.getTenantId(), TenantHelper.isEnable())) + .innerJoin(new QueryTable("ACT_RE_PROCDEF").as("ARP")).on(new QueryColumn("ARP", "ID_").eq(new QueryColumn("RES", "PROC_DEF_ID_"))).and(new QueryColumn("ARP", "TENANT_ID_").eq(TenantHelper.getTenantId(), TenantHelper.isEnable())) .where(new QueryColumn("RES", "PARENT_TASK_ID_").isNull() .and(new QueryColumn("AHP", "BUSINESS_STATUS_").eq(BusinessStatusEnum.WAITING.getStatus())) .and(new QueryColumn("RES", "TENANT_ID_").eq(TenantHelper.getTenantId(), TenantHelper.isEnable())) .and(new QueryColumn("RES", "ASSIGNEE_").eq(userId) .or(new QueryColumn("RES", "ASSIGNEE_").isNull() - .and("exists ( select LINK.ID_ from ACT_RU_IDENTITYLINK LINK where LINK.TASK_ID_ = RES.ID_ and LINK.TYPE_ = 'candidate' " + "and (LINK.USER_ID_ = " + userId + " or ( LINK.GROUP_ID_ IN (" + ids + ") ) ))") + .and("exists ( select LINK.ID_ from ACT_RU_IDENTITYLINK LINK where LINK.TASK_ID_ = RES.ID_ and LINK.TYPE_ = 'candidate' " + "and (LINK.USER_ID_ = " + userId + (StringUtils.isNotBlank(ids) ? " or LINK.GROUP_ID_ IN (" + ids + ") " : "" ) + " ))") ) ) .and(new QueryColumn("RES", "NAME_").like(taskBo.getName(), StringUtils.isNotBlank(taskBo.getName()))) @@ -400,11 +400,12 @@ public class ActTaskServiceImpl implements IActTaskService { .select(new QueryColumn("ARP", "KEY_").as("processDefinitionKey")) .select(new QueryColumn("ARP", "VERSION_").as("processDefinitionVersion")) .from(new QueryTable("ACT_HI_TASKINST").as("AHT")) - .innerJoin(ACT_HI_PROCINST.as("AHP")).on(new QueryColumn("AHT", "PROC_INST_ID_").eq(ACT_HI_PROCINST.PROC_INST_ID)) - .innerJoin(new QueryTable("ACT_RE_PROCDEF").as("ARP")).on(new QueryColumn("ARP", "ID_").eq(new QueryColumn("AHT", "PROC_DEF_ID_"))) + .innerJoin(ACT_HI_PROCINST.as("AHP")).on(new QueryColumn("AHT", "PROC_INST_ID_").eq(ACT_HI_PROCINST.PROC_INST_ID)).and(ACT_HI_PROCINST.TENANT_ID.eq(TenantHelper.getTenantId(), TenantHelper.isEnable())) + .innerJoin(new QueryTable("ACT_RE_PROCDEF").as("ARP")).on(new QueryColumn("ARP", "ID_").eq(new QueryColumn("AHT", "PROC_DEF_ID_"))).and(new QueryColumn("ARP", "TENANT_ID_").eq(TenantHelper.getTenantId(), TenantHelper.isEnable())) .where(new QueryColumn("AHT", "PARENT_TASK_ID_").isNotNull()) .and(new QueryColumn("AHT", "scope_type_").eq("copy")) .and(new QueryColumn("AHT", "NAME").like(taskBo.getName())) + .and(new QueryColumn("AHT", "TENANT_ID_").eq(TenantHelper.getTenantId(), TenantHelper.isEnable())) .and(new QueryColumn("ARP", "NAME_").like(taskBo.getProcessDefinitionName())) .and(new QueryColumn("ARP", "KEY_").eq(taskBo.getProcessDefinitionKey())) .and(new QueryColumn("AHT", "ASSIGNEE_").eq(userId)) -- Gitee From 77942702abc3516ec4e6158ccea0e1f1633dd9a9 Mon Sep 17 00:00:00 2001 From: hfdy2019 <5463852+hfdy2019@user.noreply.gitee.com> Date: Sat, 3 Aug 2024 06:45:46 +0800 Subject: [PATCH 104/540] =?UTF-8?q?update:=20=E4=BC=98=E5=8C=96=20server?= =?UTF-8?q?=E6=A8=A1=E5=9D=97=20=E8=AE=BE=E7=BD=AEmaven.install.skip?= =?UTF-8?q?=E3=80=81maven.deploy.skip?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: hfdy2019 <5463852+hfdy2019@user.noreply.gitee.com> --- ruoyi-admin/pom.xml | 5 +++++ ruoyi-extend/ruoyi-monitor-admin/pom.xml | 5 +++++ ruoyi-extend/ruoyi-snailjob-server/pom.xml | 5 +++++ 3 files changed, 15 insertions(+) diff --git a/ruoyi-admin/pom.xml b/ruoyi-admin/pom.xml index 5b232b4bd..f13fa75bd 100644 --- a/ruoyi-admin/pom.xml +++ b/ruoyi-admin/pom.xml @@ -15,6 +15,11 @@ web服务入口 + + true + true + + diff --git a/ruoyi-extend/ruoyi-monitor-admin/pom.xml b/ruoyi-extend/ruoyi-monitor-admin/pom.xml index 77c9eb71a..402208c11 100644 --- a/ruoyi-extend/ruoyi-monitor-admin/pom.xml +++ b/ruoyi-extend/ruoyi-monitor-admin/pom.xml @@ -11,6 +11,11 @@ jar ruoyi-monitor-admin + + true + true + + diff --git a/ruoyi-extend/ruoyi-snailjob-server/pom.xml b/ruoyi-extend/ruoyi-snailjob-server/pom.xml index 7348b29e7..3cbb1888b 100644 --- a/ruoyi-extend/ruoyi-snailjob-server/pom.xml +++ b/ruoyi-extend/ruoyi-snailjob-server/pom.xml @@ -11,6 +11,11 @@ jar ruoyi-snailjob-server + + true + true + + com.aizuda -- Gitee From f119d082cf061c892a7d4fe987ea34a43ad297d9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Sun, 4 Aug 2024 10:40:12 +0800 Subject: [PATCH 105/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20=E4=B8=80?= =?UTF-8?q?=E7=BA=A7=E7=BC=93=E5=AD=98key=E6=9C=AA=E5=8C=BA=E5=88=86?= =?UTF-8?q?=E7=A7=9F=E6=88=B7=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/redis/manager/CaffeineCacheDecorator.java | 8 +++++--- .../common/redis/manager/PlusSpringCacheManager.java | 4 ++-- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/manager/CaffeineCacheDecorator.java b/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/manager/CaffeineCacheDecorator.java index ee1d405f2..793e21f5c 100644 --- a/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/manager/CaffeineCacheDecorator.java +++ b/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/manager/CaffeineCacheDecorator.java @@ -15,15 +15,17 @@ public class CaffeineCacheDecorator implements Cache { private static final com.github.benmanes.caffeine.cache.Cache CAFFEINE = SpringUtils.getBean("caffeine"); + private final String name; private final Cache cache; - public CaffeineCacheDecorator(Cache cache) { + public CaffeineCacheDecorator(String name, Cache cache) { + this.name = name; this.cache = cache; } @Override public String getName() { - return cache.getName(); + return name; } @Override @@ -32,7 +34,7 @@ public class CaffeineCacheDecorator implements Cache { } public String getUniqueKey(Object key) { - return cache.getName() + ":" + key; + return name + ":" + key; } @Override diff --git a/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/manager/PlusSpringCacheManager.java b/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/manager/PlusSpringCacheManager.java index a48cb1422..740e2a13b 100644 --- a/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/manager/PlusSpringCacheManager.java +++ b/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/manager/PlusSpringCacheManager.java @@ -156,7 +156,7 @@ public class PlusSpringCacheManager implements CacheManager { private Cache createMap(String name, CacheConfig config) { RMap map = RedisUtils.getClient().getMap(name); - Cache cache = new CaffeineCacheDecorator(new RedissonCache(map, allowNullValues)); + Cache cache = new CaffeineCacheDecorator(name, new RedissonCache(map, allowNullValues)); if (transactionAware) { cache = new TransactionAwareCacheDecorator(cache); } @@ -170,7 +170,7 @@ public class PlusSpringCacheManager implements CacheManager { private Cache createMapCache(String name, CacheConfig config) { RMapCache map = RedisUtils.getClient().getMapCache(name); - Cache cache = new CaffeineCacheDecorator(new RedissonCache(map, config, allowNullValues)); + Cache cache = new CaffeineCacheDecorator(name, new RedissonCache(map, config, allowNullValues)); if (transactionAware) { cache = new TransactionAwareCacheDecorator(cache); } -- Gitee From f51e6d81b1495d997a579764f15d6edd8e9a5b61 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Sun, 4 Aug 2024 10:45:25 +0800 Subject: [PATCH 106/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20TenantSpr?= =?UTF-8?q?ingCacheManager=20=E5=A4=84=E7=90=86=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/tenant/manager/TenantSpringCacheManager.java | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/manager/TenantSpringCacheManager.java b/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/manager/TenantSpringCacheManager.java index d230afc1a..346e36f1c 100644 --- a/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/manager/TenantSpringCacheManager.java +++ b/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/manager/TenantSpringCacheManager.java @@ -1,5 +1,7 @@ package org.dromara.common.tenant.manager; +import com.baomidou.mybatisplus.core.plugins.InterceptorIgnoreHelper; +import lombok.extern.slf4j.Slf4j; import org.dromara.common.core.constant.GlobalConstants; import org.dromara.common.core.utils.StringUtils; import org.dromara.common.redis.manager.PlusSpringCacheManager; @@ -11,6 +13,7 @@ import org.springframework.cache.Cache; * * @author Lion Li */ +@Slf4j public class TenantSpringCacheManager extends PlusSpringCacheManager { public TenantSpringCacheManager() { @@ -18,10 +21,16 @@ public class TenantSpringCacheManager extends PlusSpringCacheManager { @Override public Cache getCache(String name) { + if (InterceptorIgnoreHelper.willIgnoreTenantLine("")) { + return super.getCache(name); + } if (StringUtils.contains(name, GlobalConstants.GLOBAL_REDIS_KEY)) { return super.getCache(name); } String tenantId = TenantHelper.getTenantId(); + if (StringUtils.isBlank(tenantId)) { + log.error("无法获取有效的租户id -> Null"); + } if (StringUtils.startsWith(name, tenantId)) { // 如果存在则直接返回 return super.getCache(name); -- Gitee From a9d7a42c65e2dff0b68e14e4a7d44ea3e61fa8fa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Sun, 4 Aug 2024 22:58:17 +0800 Subject: [PATCH 107/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0mp=E5=A1=AB=E5=85=85=E5=99=A8=E5=85=9C=E5=BA=95?= =?UTF-8?q?=E7=AD=96=E7=95=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/mybatis/handler/InjectionMetaObjectHandler.java | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/InjectionMetaObjectHandler.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/InjectionMetaObjectHandler.java index 99e6b3888..7d44d2648 100644 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/InjectionMetaObjectHandler.java +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/InjectionMetaObjectHandler.java @@ -48,6 +48,10 @@ public class InjectionMetaObjectHandler implements MetaObjectHandler { ? baseEntity.getCreateDept() : loginUser.getDeptId()); } } + } else { + Date date = new Date(); + this.strictInsertFill(metaObject, "createTime", Date.class, date); + this.strictInsertFill(metaObject, "updateTime", Date.class, date); } } catch (Exception e) { throw new ServiceException("自动注入异常 => " + e.getMessage(), HttpStatus.HTTP_UNAUTHORIZED); @@ -72,6 +76,8 @@ public class InjectionMetaObjectHandler implements MetaObjectHandler { if (ObjectUtil.isNotNull(userId)) { baseEntity.setUpdateBy(userId); } + } else { + this.strictUpdateFill(metaObject, "updateTime", Date.class, new Date()); } } catch (Exception e) { throw new ServiceException("自动注入异常 => " + e.getMessage(), HttpStatus.HTTP_UNAUTHORIZED); -- Gitee From 20cc8a6d6cf16e97e236a9839406d858861cce3c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Tue, 6 Aug 2024 13:53:40 +0800 Subject: [PATCH 108/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20excel=20?= =?UTF-8?q?=E5=9F=BA=E4=BA=8E=E5=85=B6=E4=BB=96=E5=AD=97=E6=AE=B5=20?= =?UTF-8?q?=E5=90=88=E5=B9=B6=E9=94=99=E8=AF=AF=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/dromara/common/excel/core/CellMergeStrategy.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/core/CellMergeStrategy.java b/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/core/CellMergeStrategy.java index 7c0a48b9a..7c7721c60 100644 --- a/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/core/CellMergeStrategy.java +++ b/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/core/CellMergeStrategy.java @@ -107,7 +107,7 @@ public class CellMergeStrategy extends AbstractMergeStrategy implements Workbook } if (!cellValue.equals(val)) { - if ((i - repeatCell.getCurrent() > 1) && isMerge(list, i, field)) { + if ((i - repeatCell.getCurrent() > 1)) { cellList.add(new CellRangeAddress(repeatCell.getCurrent() + rowIndex, i + rowIndex - 1, colNum, colNum)); } map.put(field, new RepeatCell(val, i)); @@ -115,6 +115,11 @@ public class CellMergeStrategy extends AbstractMergeStrategy implements Workbook if (i > repeatCell.getCurrent() && isMerge(list, i, field)) { cellList.add(new CellRangeAddress(repeatCell.getCurrent() + rowIndex, i + rowIndex, colNum, colNum)); } + } else if (!isMerge(list, i, field)) { + if ((i - repeatCell.getCurrent() > 1)) { + cellList.add(new CellRangeAddress(repeatCell.getCurrent() + rowIndex, i + rowIndex - 1, colNum, colNum)); + } + map.put(field, new RepeatCell(val, i)); } } } -- Gitee From e19140462deb5bc077d32c4242782455ccdf35d7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Tue, 6 Aug 2024 15:38:16 +0800 Subject: [PATCH 109/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20=E5=85=B3?= =?UTF-8?q?=E9=97=AD=20sse=20=E6=8A=A5=E9=94=99=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/org/dromara/common/sse/controller/SseController.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/controller/SseController.java b/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/controller/SseController.java index a28c1fdcc..6c136b582 100644 --- a/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/controller/SseController.java +++ b/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/controller/SseController.java @@ -7,6 +7,7 @@ import org.dromara.common.core.domain.R; import org.dromara.common.satoken.utils.LoginHelper; import org.dromara.common.sse.core.SseEmitterManager; import org.dromara.common.sse.dto.SseMessageDto; +import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; import org.springframework.http.MediaType; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RestController; @@ -15,6 +16,7 @@ import org.springframework.web.servlet.mvc.method.annotation.SseEmitter; import java.util.List; @RestController +@ConditionalOnProperty(value = "sse.enabled", havingValue = "true") @RequiredArgsConstructor public class SseController { -- Gitee From 4306ea4181f7092bc095c9b5e131bbc4c42fb5f8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Tue, 6 Aug 2024 16:07:22 +0800 Subject: [PATCH 110/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E6=94=AF?= =?UTF-8?q?=E6=8C=81=E9=80=9A=E8=BF=87=E9=85=8D=E7=BD=AE=E6=96=87=E4=BB=B6?= =?UTF-8?q?=E5=85=B3=E9=97=AD=E5=B7=A5=E4=BD=9C=E6=B5=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ruoyi-admin/src/main/resources/application.yml | 4 ++++ .../workflow/controller/ActModelController.java | 5 +++-- .../workflow/controller/ActTaskController.java | 6 +++--- .../service/impl/ActModelServiceImpl.java | 4 +++- .../impl/ActProcessDefinitionServiceImpl.java | 7 +++++-- .../impl/ActProcessInstanceServiceImpl.java | 16 +++++++++++----- .../service/impl/ActTaskServiceImpl.java | 16 +++++++++++----- .../service/impl/WfCategoryServiceImpl.java | 5 +++-- .../service/impl/WorkflowServiceImpl.java | 4 +++- 9 files changed, 46 insertions(+), 21 deletions(-) diff --git a/ruoyi-admin/src/main/resources/application.yml b/ruoyi-admin/src/main/resources/application.yml index f9a9cc3a9..3e789d682 100644 --- a/ruoyi-admin/src/main/resources/application.yml +++ b/ruoyi-admin/src/main/resources/application.yml @@ -272,6 +272,10 @@ websocket: --- #flowable配置 flowable: + # 开关 用于启动/停用工作流 + enabled: false + process.enabled: ${flowable.enabled} + eventregistry.enabled: ${flowable.enabled} async-executor-activate: false #关闭定时任务JOB # 将databaseSchemaUpdate设置为true。当Flowable发现库与数据库表结构不一致时,会自动将数据库表结构升级至新版本。 database-schema-update: true diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/ActModelController.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/ActModelController.java index 3332f86a5..842d3d667 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/ActModelController.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/ActModelController.java @@ -18,6 +18,7 @@ import org.dromara.workflow.domain.vo.ModelVo; import org.dromara.workflow.service.IActModelService; import org.flowable.engine.RepositoryService; import org.flowable.engine.repository.Model; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.transaction.annotation.Transactional; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; @@ -36,8 +37,8 @@ import java.util.List; @RequestMapping("/workflow/model") public class ActModelController extends BaseController { - private final RepositoryService repositoryService; - + @Autowired(required = false) + private RepositoryService repositoryService; private final IActModelService actModelService; diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/ActTaskController.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/ActTaskController.java index 75f9d9b2a..25724b6d9 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/ActTaskController.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/ActTaskController.java @@ -21,6 +21,7 @@ import org.dromara.workflow.service.IActTaskService; import org.dromara.workflow.service.IWfTaskBackNodeService; import org.dromara.workflow.utils.QueryUtils; import org.flowable.engine.TaskService; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; @@ -38,10 +39,9 @@ import java.util.Map; @RequestMapping("/workflow/task") public class ActTaskController extends BaseController { + @Autowired(required = false) + private TaskService taskService; private final IActTaskService actTaskService; - - private final TaskService taskService; - private final IWfTaskBackNodeService wfTaskBackNodeService; diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActModelServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActModelServiceImpl.java index d4f696b6c..217538e44 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActModelServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActModelServiceImpl.java @@ -39,6 +39,7 @@ import org.flowable.engine.repository.Model; import org.flowable.engine.repository.ModelQuery; import org.flowable.engine.repository.ProcessDefinition; import org.flowable.validation.ValidationError; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -65,7 +66,8 @@ import java.util.zip.ZipOutputStream; @Service public class ActModelServiceImpl implements IActModelService { - private final RepositoryService repositoryService; + @Autowired(required = false) + private RepositoryService repositoryService; private final IWfNodeConfigService wfNodeConfigService; private final IWfDefinitionConfigService wfDefinitionConfigService; diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActProcessDefinitionServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActProcessDefinitionServiceImpl.java index e3c2ed67a..77fb257b5 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActProcessDefinitionServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActProcessDefinitionServiceImpl.java @@ -37,6 +37,7 @@ import org.flowable.engine.RepositoryService; import org.flowable.engine.history.HistoricProcessInstance; import org.flowable.engine.impl.bpmn.deployer.ResourceNameUtil; import org.flowable.engine.repository.*; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.web.multipart.MultipartFile; @@ -61,8 +62,10 @@ import java.util.zip.ZipInputStream; @Service public class ActProcessDefinitionServiceImpl implements IActProcessDefinitionService { - private final RepositoryService repositoryService; - private final ProcessMigrationService processMigrationService; + @Autowired(required = false) + private RepositoryService repositoryService; + @Autowired(required = false) + private ProcessMigrationService processMigrationService; private final IWfCategoryService wfCategoryService; private final IWfDefinitionConfigService wfDefinitionConfigService; private final WfDefinitionConfigMapper wfDefinitionConfigMapper; diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActProcessInstanceServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActProcessInstanceServiceImpl.java index e22e80053..8b9b113fd 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActProcessInstanceServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActProcessInstanceServiceImpl.java @@ -48,6 +48,7 @@ import org.flowable.engine.task.Comment; import org.flowable.task.api.Task; import org.flowable.task.api.history.HistoricTaskInstance; import org.springframework.beans.BeanUtils; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -68,12 +69,17 @@ import java.util.*; @Service public class ActProcessInstanceServiceImpl implements IActProcessInstanceService { - private final RepositoryService repositoryService; - private final RuntimeService runtimeService; - private final HistoryService historyService; - private final TaskService taskService; + @Autowired(required = false) + private RepositoryService repositoryService; + @Autowired(required = false) + private RuntimeService runtimeService; + @Autowired(required = false) + private HistoryService historyService; + @Autowired(required = false) + private TaskService taskService; + @Autowired(required = false) + private ManagementService managementService; private final IActHiProcinstService actHiProcinstService; - private final ManagementService managementService; private final IWfTaskBackNodeService wfTaskBackNodeService; private final IWfNodeConfigService wfNodeConfigService; private final FlowProcessEventHandler flowProcessEventHandler; diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActTaskServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActTaskServiceImpl.java index b6ae67ebf..5235d1265 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActTaskServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActTaskServiceImpl.java @@ -52,6 +52,7 @@ import org.flowable.task.api.TaskQuery; import org.flowable.task.api.history.HistoricTaskInstance; import org.flowable.task.service.impl.persistence.entity.TaskEntity; import org.flowable.variable.api.persistence.entity.VariableInstance; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.scheduling.annotation.Async; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -71,11 +72,16 @@ import static org.dromara.workflow.common.constant.FlowConstant.*; @Service public class ActTaskServiceImpl implements IActTaskService { - private final RuntimeService runtimeService; - private final TaskService taskService; - private final HistoryService historyService; - private final IdentityService identityService; - private final ManagementService managementService; + @Autowired(required = false) + private RuntimeService runtimeService; + @Autowired(required = false) + private TaskService taskService; + @Autowired(required = false) + private HistoryService historyService; + @Autowired(required = false) + private IdentityService identityService; + @Autowired(required = false) + private ManagementService managementService; private final ActTaskMapper actTaskMapper; private final IWfTaskBackNodeService wfTaskBackNodeService; private final ActHiTaskinstMapper actHiTaskinstMapper; diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WfCategoryServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WfCategoryServiceImpl.java index b498262c2..e5628232b 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WfCategoryServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WfCategoryServiceImpl.java @@ -15,6 +15,7 @@ import org.flowable.engine.RepositoryService; import org.flowable.engine.repository.Deployment; import org.flowable.engine.repository.Model; import org.flowable.engine.repository.ProcessDefinition; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -32,8 +33,8 @@ import java.util.List; public class WfCategoryServiceImpl implements IWfCategoryService { private final WfCategoryMapper baseMapper; - - private final RepositoryService repositoryService; + @Autowired(required = false) + private RepositoryService repositoryService; /** * 查询流程分类 diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WorkflowServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WorkflowServiceImpl.java index 11f6ef106..f75a18880 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WorkflowServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WorkflowServiceImpl.java @@ -8,6 +8,7 @@ import org.dromara.workflow.service.IActHiProcinstService; import org.dromara.workflow.service.IActProcessInstanceService; import org.dromara.workflow.utils.WorkflowUtils; import org.flowable.engine.RuntimeService; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.List; @@ -22,8 +23,9 @@ import java.util.Map; @Service public class WorkflowServiceImpl implements WorkflowService { + @Autowired(required = false) + private RuntimeService runtimeService; private final IActProcessInstanceService iActProcessInstanceService; - private final RuntimeService runtimeService; private final IActHiProcinstService iActHiProcinstService; /** * 运行中的实例 删除程实例,删除历史记录,删除业务与流程关联信息 -- Gitee From 88a4a5195642886eaeb97f590ce2be69759d89b0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Tue, 6 Aug 2024 16:10:11 +0800 Subject: [PATCH 111/540] =?UTF-8?q?update=20=E9=BB=98=E8=AE=A4=E5=BC=80?= =?UTF-8?q?=E5=90=AF=E5=B7=A5=E4=BD=9C=E6=B5=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ruoyi-admin/src/main/resources/application.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ruoyi-admin/src/main/resources/application.yml b/ruoyi-admin/src/main/resources/application.yml index 3e789d682..5d94bef93 100644 --- a/ruoyi-admin/src/main/resources/application.yml +++ b/ruoyi-admin/src/main/resources/application.yml @@ -273,7 +273,7 @@ websocket: --- #flowable配置 flowable: # 开关 用于启动/停用工作流 - enabled: false + enabled: true process.enabled: ${flowable.enabled} eventregistry.enabled: ${flowable.enabled} async-executor-activate: false #关闭定时任务JOB -- Gitee From f124fbd6aa4d305948a676339cefcd4720e41b97 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Wed, 7 Aug 2024 09:57:20 +0800 Subject: [PATCH 112/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20=E5=85=B3?= =?UTF-8?q?=E9=97=AD=E5=BA=94=E7=94=A8sse=E9=94=80=E6=AF=81=E6=8A=A5?= =?UTF-8?q?=E9=94=99=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/dromara/common/sse/controller/SseController.java | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/controller/SseController.java b/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/controller/SseController.java index 6c136b582..91413f191 100644 --- a/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/controller/SseController.java +++ b/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/controller/SseController.java @@ -7,6 +7,7 @@ import org.dromara.common.core.domain.R; import org.dromara.common.satoken.utils.LoginHelper; import org.dromara.common.sse.core.SseEmitterManager; import org.dromara.common.sse.dto.SseMessageDto; +import org.springframework.beans.factory.DisposableBean; import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; import org.springframework.http.MediaType; import org.springframework.web.bind.annotation.GetMapping; @@ -18,7 +19,7 @@ import java.util.List; @RestController @ConditionalOnProperty(value = "sse.enabled", havingValue = "true") @RequiredArgsConstructor -public class SseController { +public class SseController implements DisposableBean { private final SseEmitterManager sseEmitterManager; @@ -53,4 +54,9 @@ public class SseController { return R.ok(); } + @Override + public void destroy() throws Exception { + // 销毁时不需要做什么 此方法避免无用操作报错 + } + } -- Gitee From 6d28072167dbdc00f945a939d0240cea732b83a1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Wed, 7 Aug 2024 09:58:11 +0800 Subject: [PATCH 113/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E4=B8=B4?= =?UTF-8?q?=E6=97=B6=E5=8D=87=E7=BA=A7=20undertow=20=E7=89=88=E6=9C=AC=20?= =?UTF-8?q?=E8=A7=A3=E5=86=B3=E8=99=9A=E6=8B=9F=E7=BA=BF=E7=A8=8B=E6=BA=A2?= =?UTF-8?q?=E5=87=BA=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 1 + ruoyi-common/ruoyi-common-web/pom.xml | 16 ++++++++++++++++ 2 files changed, 17 insertions(+) diff --git a/pom.xml b/pom.xml index 1dc79cf0d..d84f17296 100644 --- a/pom.xml +++ b/pom.xml @@ -42,6 +42,7 @@ 1.16.6 2.7.0 + 2.3.15.Final 2.25.15 diff --git a/ruoyi-common/ruoyi-common-web/pom.xml b/ruoyi-common/ruoyi-common-web/pom.xml index b250fa9d0..295b3ed43 100644 --- a/ruoyi-common/ruoyi-common-web/pom.xml +++ b/ruoyi-common/ruoyi-common-web/pom.xml @@ -43,6 +43,22 @@ spring-boot-starter-undertow + + io.undertow + undertow-core + ${undertow.version} + + + io.undertow + undertow-servlet + ${undertow.version} + + + io.undertow + undertow-websockets-jsr + ${undertow.version} + + org.springframework.boot spring-boot-starter-actuator -- Gitee From 3fc37d6362d230a6563dcf57f791391983931236 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Wed, 7 Aug 2024 11:19:16 +0800 Subject: [PATCH 114/540] update easyexcel 3.3.4 => 4.0.2 --- pom.xml | 19 +------------------ ruoyi-common/ruoyi-common-excel/pom.xml | 5 +++++ 2 files changed, 6 insertions(+), 18 deletions(-) diff --git a/pom.xml b/pom.xml index d84f17296..56822348c 100644 --- a/pom.xml +++ b/pom.xml @@ -21,8 +21,7 @@ 3.5.16 2.6.0 0.15.0 - 5.2.3 - 3.3.4 + 4.0.2 2.3 1.38.0 3.5.7 @@ -158,26 +157,10 @@ ${lombok.version} - - org.apache.poi - poi - ${poi.version} - - - org.apache.poi - poi-ooxml - ${poi.version} - com.alibaba easyexcel ${easyexcel.version} - - - org.apache.poi - poi-ooxml-schemas - - diff --git a/ruoyi-common/ruoyi-common-excel/pom.xml b/ruoyi-common/ruoyi-common-excel/pom.xml index dd4a5eebe..14b9410bb 100644 --- a/ruoyi-common/ruoyi-common-excel/pom.xml +++ b/ruoyi-common/ruoyi-common-excel/pom.xml @@ -25,6 +25,11 @@ com.alibaba easyexcel + + commons-compress + org.apache.commons + 1.26.2 + -- Gitee From 31569646b0f2d274660e6c6bba02defb43405474 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Wed, 7 Aug 2024 11:20:34 +0800 Subject: [PATCH 115/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20=E4=BE=9D?= =?UTF-8?q?=E8=B5=96=E6=BC=8F=E6=B4=9E=20=E9=99=90=E5=88=B6=E9=83=A8?= =?UTF-8?q?=E5=88=86=E4=BE=9D=E8=B5=96=E7=89=88=E6=9C=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 22 ++++++++++++++++++++++ ruoyi-common/ruoyi-common-web/pom.xml | 3 --- ruoyi-modules/ruoyi-workflow/pom.xml | 2 +- 3 files changed, 23 insertions(+), 4 deletions(-) diff --git a/pom.xml b/pom.xml index 56822348c..8b96348ae 100644 --- a/pom.xml +++ b/pom.xml @@ -319,6 +319,28 @@ ${ip2region.version} + + io.undertow + undertow-core + ${undertow.version} + + + io.undertow + undertow-servlet + ${undertow.version} + + + io.undertow + undertow-websockets-jsr + ${undertow.version} + + + + commons-compress + org.apache.commons + 1.26.2 + + com.alibaba fastjson diff --git a/ruoyi-common/ruoyi-common-web/pom.xml b/ruoyi-common/ruoyi-common-web/pom.xml index 295b3ed43..5e366bc3b 100644 --- a/ruoyi-common/ruoyi-common-web/pom.xml +++ b/ruoyi-common/ruoyi-common-web/pom.xml @@ -46,17 +46,14 @@ io.undertow undertow-core - ${undertow.version} io.undertow undertow-servlet - ${undertow.version} io.undertow undertow-websockets-jsr - ${undertow.version} diff --git a/ruoyi-modules/ruoyi-workflow/pom.xml b/ruoyi-modules/ruoyi-workflow/pom.xml index 9ed40970a..e55839ef7 100644 --- a/ruoyi-modules/ruoyi-workflow/pom.xml +++ b/ruoyi-modules/ruoyi-workflow/pom.xml @@ -57,7 +57,7 @@ org.apache.xmlgraphics batik-all - 1.10 + 1.17 xalan -- Gitee From 7f60ba9888dde4488f3beb16ab44c11e947793c2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Wed, 7 Aug 2024 11:22:14 +0800 Subject: [PATCH 116/540] update redisson 3.33.0 => 3.34.1 update mapstruct-plus 1.3.6 => 1.4.3 update sms4j 3.2.1 => 3.3.1 update lombok 1.18.32 => 1.18.34 --- pom.xml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pom.xml b/pom.xml index 8b96348ae..a5d1fc410 100644 --- a/pom.xml +++ b/pom.xml @@ -29,14 +29,14 @@ 5.8.29 4.10.0 3.2.3 - 3.33.0 + 3.34.1 2.2.7 4.3.1 2.14.4 1.1.1 - 1.3.6 + 1.4.3 0.2.0 - 1.18.32 + 1.18.34 1.76 1.16.6 @@ -47,7 +47,7 @@ 2.25.15 0.29.13 - 3.2.1 + 3.3.1 1.2.83 -- Gitee From f03c00b2c17835949cbb67adfd79c90d988d9117 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Wed, 7 Aug 2024 22:27:05 +0800 Subject: [PATCH 117/540] =?UTF-8?q?reset=20=E5=9B=9E=E6=BB=9A=20sms4j=20?= =?UTF-8?q?=E7=89=88=E6=9C=AC=E5=8D=87=E7=BA=A7(=E6=9C=89=E9=97=AE?= =?UTF-8?q?=E9=A2=98)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index a5d1fc410..d96f19d0c 100644 --- a/pom.xml +++ b/pom.xml @@ -47,7 +47,7 @@ 2.25.15 0.29.13 - 3.3.1 + 3.2.1 1.2.83 -- Gitee From 44d776a76fa31e95303d1c823803c5c07933dff1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 9 Aug 2024 10:38:43 +0800 Subject: [PATCH 118/540] update sms4j 3.2.1 => 3.3.2 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index d96f19d0c..6708cc8b1 100644 --- a/pom.xml +++ b/pom.xml @@ -47,7 +47,7 @@ 2.25.15 0.29.13 - 3.2.1 + 3.3.2 1.2.83 -- Gitee From 23b70ca0becb37471ead0928727f10a5d0d00740 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 9 Aug 2024 11:54:47 +0800 Subject: [PATCH 119/540] update anyline 8.7.2-20240808 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 6708cc8b1..bbb394ea7 100644 --- a/pom.xml +++ b/pom.xml @@ -51,7 +51,7 @@ 1.2.83 - 8.7.2-20240728 + 8.7.2-20240808 7.0.1 -- Gitee From bc2b4876b61decd2f912977d073e24b195a07881 Mon Sep 17 00:00:00 2001 From: AprilWind <2100166581@qq.com> Date: Fri, 9 Aug 2024 14:08:19 +0800 Subject: [PATCH 120/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=E4=BB=A3?= =?UTF-8?q?=E7=A0=81=E7=94=9F=E6=88=90=E9=9B=86=E5=90=88=E7=B1=BB=E5=9E=8B?= =?UTF-8?q?=E5=B7=A5=E5=85=B7=E5=88=A4=E6=96=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/dromara/generator/service/GenTableServiceImpl.java | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java index e1e340ff1..99935f7fa 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java +++ b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java @@ -3,7 +3,6 @@ package org.dromara.generator.service; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.io.IoUtil; import cn.hutool.core.lang.Dict; -import cn.hutool.core.util.ArrayUtil; import cn.hutool.core.util.ObjectUtil; import com.baomidou.dynamic.datasource.annotation.DS; import com.baomidou.dynamic.datasource.annotation.DSTransactional; @@ -196,7 +195,7 @@ public class GenTableServiceImpl implements IGenTableService { .filter(x -> !StringUtils.containsAnyIgnoreCase(x.getName(), TABLE_IGNORE)) .filter(x -> tableNameSet.contains(x.getName())).toList(); - if (ArrayUtil.isEmpty(tableList)) { + if (CollUtil.isEmpty(tableList)) { return new ArrayList<>(); } return tableList.stream().map(x -> { -- Gitee From b8d9af65e2e60fcfb448d277b0ed3daef9688b2d Mon Sep 17 00:00:00 2001 From: AprilWind <2100166581@qq.com> Date: Fri, 9 Aug 2024 17:24:44 +0800 Subject: [PATCH 121/540] =?UTF-8?q?update=20=E5=A2=9E=E5=8A=A0sse=E6=B3=A8?= =?UTF-8?q?=E9=87=8A=E8=AF=B4=E6=98=8E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/sse/controller/SseController.java | 25 ++++++++++++++++++ .../common/sse/core/SseEmitterManager.java | 26 +++++++++++++++++++ .../common/sse/utils/SseMessageUtils.java | 2 +- 3 files changed, 52 insertions(+), 1 deletion(-) diff --git a/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/controller/SseController.java b/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/controller/SseController.java index 91413f191..e5331e419 100644 --- a/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/controller/SseController.java +++ b/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/controller/SseController.java @@ -16,6 +16,11 @@ import org.springframework.web.servlet.mvc.method.annotation.SseEmitter; import java.util.List; +/** + * SSE 控制器 + * + * @author Lion Li + */ @RestController @ConditionalOnProperty(value = "sse.enabled", havingValue = "true") @RequiredArgsConstructor @@ -23,6 +28,9 @@ public class SseController implements DisposableBean { private final SseEmitterManager sseEmitterManager; + /** + * 建立 SSE 连接 + */ @GetMapping(value = "${sse.path}", produces = MediaType.TEXT_EVENT_STREAM_VALUE) public SseEmitter connect() { String tokenValue = StpUtil.getTokenValue(); @@ -30,6 +38,9 @@ public class SseController implements DisposableBean { return sseEmitterManager.connect(userId, tokenValue); } + /** + * 关闭 SSE 连接 + */ @SaIgnore @GetMapping(value = "${sse.path}/close") public R close() { @@ -39,6 +50,12 @@ public class SseController implements DisposableBean { return R.ok(); } + /** + * 向特定用户发送消息 + * + * @param userId 目标用户的 ID + * @param msg 要发送的消息内容 + */ @GetMapping(value = "${sse.path}/send") public R send(Long userId, String msg) { SseMessageDto dto = new SseMessageDto(); @@ -48,12 +65,20 @@ public class SseController implements DisposableBean { return R.ok(); } + /** + * 向所有用户发送消息 + * + * @param msg 要发送的消息内容 + */ @GetMapping(value = "${sse.path}/sendAll") public R send(String msg) { sseEmitterManager.publishAll(msg); return R.ok(); } + /** + * 清理资源。此方法目前不执行任何操作,但避免因未实现而导致错误 + */ @Override public void destroy() throws Exception { // 销毁时不需要做什么 此方法避免无用操作报错 diff --git a/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/core/SseEmitterManager.java b/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/core/SseEmitterManager.java index 039e17f4e..1d37a27de 100644 --- a/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/core/SseEmitterManager.java +++ b/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/core/SseEmitterManager.java @@ -13,8 +13,14 @@ import java.util.Map; import java.util.concurrent.ConcurrentHashMap; import java.util.function.Consumer; +/** + * 管理 Server-Sent Events (SSE) 连接 + * + * @author Lion Li + */ @Slf4j public class SseEmitterManager { + /** * 订阅的频道 */ @@ -22,24 +28,44 @@ public class SseEmitterManager { private final static Map> USER_TOKEN_EMITTERS = new ConcurrentHashMap<>(); + /** + * 建立与指定用户的 SSE 连接 + * + * @param userId 用户的唯一标识符,用于区分不同用户的连接 + * @param token 用户的唯一令牌,用于识别具体的连接 + * @return 返回一个 SseEmitter 实例,客户端可以通过该实例接收 SSE 事件 + */ public SseEmitter connect(Long userId, String token) { + // 从 USER_TOKEN_EMITTERS 中获取或创建当前用户的 SseEmitter 映射表(ConcurrentHashMap) + // 每个用户可以有多个 SSE 连接,通过 token 进行区分 Map emitters = USER_TOKEN_EMITTERS.computeIfAbsent(userId, k -> new ConcurrentHashMap<>()); + + // 创建一个新的 SseEmitter 实例,超时时间设置为 0 表示无限制 SseEmitter emitter = new SseEmitter(0L); emitters.put(token, emitter); + // 当 emitter 完成、超时或发生错误时,从映射表中移除对应的 token emitter.onCompletion(() -> emitters.remove(token)); emitter.onTimeout(() -> emitters.remove(token)); emitter.onError((e) -> emitters.remove(token)); try { + // 向客户端发送一条连接成功的事件 emitter.send(SseEmitter.event().comment("connected")); } catch (IOException e) { + // 如果发送消息失败,则从映射表中移除 emitter emitters.remove(token); } return emitter; } + /** + * 断开指定用户的 SSE 连接 + * + * @param userId 用户的唯一标识符,用于区分不同用户的连接 + * @param token 用户的唯一令牌,用于识别具体的连接 + */ public void disconnect(Long userId, String token) { Map emitters = USER_TOKEN_EMITTERS.get(userId); if (emitters != null) { diff --git a/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/utils/SseMessageUtils.java b/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/utils/SseMessageUtils.java index 4334e98bc..c6abdc8fd 100644 --- a/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/utils/SseMessageUtils.java +++ b/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/utils/SseMessageUtils.java @@ -8,7 +8,7 @@ import org.dromara.common.sse.core.SseEmitterManager; import org.dromara.common.sse.dto.SseMessageDto; /** - * 工具类 + * SSE工具类 * * @author Lion Li */ -- Gitee From ca06a2311da20502ad54f4593f1f18a177c07c76 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Tue, 13 Aug 2024 13:32:34 +0800 Subject: [PATCH 122/540] =?UTF-8?q?update=20hutool=205.8.29=20=3D>=205.8.3?= =?UTF-8?q?1=20=E8=A7=A3=E5=86=B3hutool=E4=B8=8D=E5=85=BC=E5=AE=B9jakarta?= =?UTF-8?q?=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 2 +- .../common/mail/config/MailConfig.java | 2 +- .../common/mail/utils/GlobalMailAccount.java | 46 -- .../common/mail/utils/InternalMailUtil.java | 108 --- .../org/dromara/common/mail/utils/Mail.java | 483 ------------- .../common/mail/utils/MailAccount.java | 659 ------------------ .../common/mail/utils/MailException.java | 40 -- .../dromara/common/mail/utils/MailUtils.java | 12 +- .../mail/utils/UserPassAuthenticator.java | 33 - 9 files changed, 9 insertions(+), 1376 deletions(-) delete mode 100644 ruoyi-common/ruoyi-common-mail/src/main/java/org/dromara/common/mail/utils/GlobalMailAccount.java delete mode 100644 ruoyi-common/ruoyi-common-mail/src/main/java/org/dromara/common/mail/utils/InternalMailUtil.java delete mode 100644 ruoyi-common/ruoyi-common-mail/src/main/java/org/dromara/common/mail/utils/Mail.java delete mode 100644 ruoyi-common/ruoyi-common-mail/src/main/java/org/dromara/common/mail/utils/MailAccount.java delete mode 100644 ruoyi-common/ruoyi-common-mail/src/main/java/org/dromara/common/mail/utils/MailException.java delete mode 100644 ruoyi-common/ruoyi-common-mail/src/main/java/org/dromara/common/mail/utils/UserPassAuthenticator.java diff --git a/pom.xml b/pom.xml index bbb394ea7..7772834d6 100644 --- a/pom.xml +++ b/pom.xml @@ -26,7 +26,7 @@ 1.38.0 3.5.7 3.9.1 - 5.8.29 + 5.8.31 4.10.0 3.2.3 3.34.1 diff --git a/ruoyi-common/ruoyi-common-mail/src/main/java/org/dromara/common/mail/config/MailConfig.java b/ruoyi-common/ruoyi-common-mail/src/main/java/org/dromara/common/mail/config/MailConfig.java index 1b51c272c..0ea3007b9 100644 --- a/ruoyi-common/ruoyi-common-mail/src/main/java/org/dromara/common/mail/config/MailConfig.java +++ b/ruoyi-common/ruoyi-common-mail/src/main/java/org/dromara/common/mail/config/MailConfig.java @@ -1,7 +1,7 @@ package org.dromara.common.mail.config; +import cn.hutool.extra.mail.MailAccount; import org.dromara.common.mail.config.properties.MailProperties; -import org.dromara.common.mail.utils.MailAccount; import org.springframework.boot.autoconfigure.AutoConfiguration; import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; import org.springframework.boot.context.properties.EnableConfigurationProperties; diff --git a/ruoyi-common/ruoyi-common-mail/src/main/java/org/dromara/common/mail/utils/GlobalMailAccount.java b/ruoyi-common/ruoyi-common-mail/src/main/java/org/dromara/common/mail/utils/GlobalMailAccount.java deleted file mode 100644 index fdae86975..000000000 --- a/ruoyi-common/ruoyi-common-mail/src/main/java/org/dromara/common/mail/utils/GlobalMailAccount.java +++ /dev/null @@ -1,46 +0,0 @@ -package org.dromara.common.mail.utils; - -import cn.hutool.core.io.IORuntimeException; - -/** - * 全局邮件帐户,依赖于邮件配置文件{@link MailAccount#MAIL_SETTING_PATHS} - * - * @author looly - */ -public enum GlobalMailAccount { - INSTANCE; - - private final MailAccount mailAccount; - - /** - * 构造 - */ - GlobalMailAccount() { - mailAccount = createDefaultAccount(); - } - - /** - * 获得邮件帐户 - * - * @return 邮件帐户 - */ - public MailAccount getAccount() { - return this.mailAccount; - } - - /** - * 创建默认帐户 - * - * @return MailAccount - */ - private MailAccount createDefaultAccount() { - for (String mailSettingPath : MailAccount.MAIL_SETTING_PATHS) { - try { - return new MailAccount(mailSettingPath); - } catch (IORuntimeException ignore) { - //ignore - } - } - return null; - } -} diff --git a/ruoyi-common/ruoyi-common-mail/src/main/java/org/dromara/common/mail/utils/InternalMailUtil.java b/ruoyi-common/ruoyi-common-mail/src/main/java/org/dromara/common/mail/utils/InternalMailUtil.java deleted file mode 100644 index b755e7370..000000000 --- a/ruoyi-common/ruoyi-common-mail/src/main/java/org/dromara/common/mail/utils/InternalMailUtil.java +++ /dev/null @@ -1,108 +0,0 @@ -package org.dromara.common.mail.utils; - -import cn.hutool.core.util.ArrayUtil; -import jakarta.mail.internet.AddressException; -import jakarta.mail.internet.InternetAddress; -import jakarta.mail.internet.MimeUtility; - -import java.io.UnsupportedEncodingException; -import java.nio.charset.Charset; -import java.util.ArrayList; -import java.util.Collections; -import java.util.List; - -/** - * 邮件内部工具类 - * - * @author looly - * @since 3.2.3 - */ -public class InternalMailUtil { - - /** - * 将多个字符串邮件地址转为{@link InternetAddress}列表
- * 单个字符串地址可以是多个地址合并的字符串 - * - * @param addrStrs 地址数组 - * @param charset 编码(主要用于中文用户名的编码) - * @return 地址数组 - * @since 4.0.3 - */ - public static InternetAddress[] parseAddressFromStrs(String[] addrStrs, Charset charset) { - final List resultList = new ArrayList<>(addrStrs.length); - InternetAddress[] addrs; - for (String addrStr : addrStrs) { - addrs = parseAddress(addrStr, charset); - if (ArrayUtil.isNotEmpty(addrs)) { - Collections.addAll(resultList, addrs); - } - } - return resultList.toArray(new InternetAddress[0]); - } - - /** - * 解析第一个地址 - * - * @param address 地址字符串 - * @param charset 编码,{@code null}表示使用系统属性定义的编码或系统编码 - * @return 地址列表 - */ - public static InternetAddress parseFirstAddress(String address, Charset charset) { - final InternetAddress[] internetAddresses = parseAddress(address, charset); - if (ArrayUtil.isEmpty(internetAddresses)) { - try { - return new InternetAddress(address); - } catch (AddressException e) { - throw new MailException(e); - } - } - return internetAddresses[0]; - } - - /** - * 将一个地址字符串解析为多个地址
- * 地址间使用" "、","、";"分隔 - * - * @param address 地址字符串 - * @param charset 编码,{@code null}表示使用系统属性定义的编码或系统编码 - * @return 地址列表 - */ - public static InternetAddress[] parseAddress(String address, Charset charset) { - InternetAddress[] addresses; - try { - addresses = InternetAddress.parse(address); - } catch (AddressException e) { - throw new MailException(e); - } - //编码用户名 - if (ArrayUtil.isNotEmpty(addresses)) { - final String charsetStr = null == charset ? null : charset.name(); - for (InternetAddress internetAddress : addresses) { - try { - internetAddress.setPersonal(internetAddress.getPersonal(), charsetStr); - } catch (UnsupportedEncodingException e) { - throw new MailException(e); - } - } - } - - return addresses; - } - - /** - * 编码中文字符
- * 编码失败返回原字符串 - * - * @param text 被编码的文本 - * @param charset 编码 - * @return 编码后的结果 - */ - public static String encodeText(String text, Charset charset) { - try { - return MimeUtility.encodeText(text, charset.name(), null); - } catch (UnsupportedEncodingException e) { - // ignore - } - return text; - } -} diff --git a/ruoyi-common/ruoyi-common-mail/src/main/java/org/dromara/common/mail/utils/Mail.java b/ruoyi-common/ruoyi-common-mail/src/main/java/org/dromara/common/mail/utils/Mail.java deleted file mode 100644 index 6ca4b69ec..000000000 --- a/ruoyi-common/ruoyi-common-mail/src/main/java/org/dromara/common/mail/utils/Mail.java +++ /dev/null @@ -1,483 +0,0 @@ -package org.dromara.common.mail.utils; - -import cn.hutool.core.builder.Builder; -import cn.hutool.core.io.FileUtil; -import cn.hutool.core.io.IORuntimeException; -import cn.hutool.core.io.IoUtil; -import cn.hutool.core.util.ArrayUtil; -import cn.hutool.core.util.ObjectUtil; -import cn.hutool.core.util.StrUtil; -import jakarta.activation.DataHandler; -import jakarta.activation.DataSource; -import jakarta.activation.FileDataSource; -import jakarta.activation.FileTypeMap; -import jakarta.mail.*; -import jakarta.mail.internet.MimeBodyPart; -import jakarta.mail.internet.MimeMessage; -import jakarta.mail.internet.MimeMultipart; -import jakarta.mail.internet.MimeUtility; -import jakarta.mail.util.ByteArrayDataSource; - -import java.io.*; -import java.nio.charset.Charset; -import java.util.Date; - -/** - * 邮件发送客户端 - * - * @author looly - * @since 3.2.0 - */ -public class Mail implements Builder { - @Serial - private static final long serialVersionUID = 1L; - - /** - * 邮箱帐户信息以及一些客户端配置信息 - */ - private final MailAccount mailAccount; - /** - * 收件人列表 - */ - private String[] tos; - /** - * 抄送人列表(carbon copy) - */ - private String[] ccs; - /** - * 密送人列表(blind carbon copy) - */ - private String[] bccs; - /** - * 回复地址(reply-to) - */ - private String[] reply; - /** - * 标题 - */ - private String title; - /** - * 内容 - */ - private String content; - /** - * 是否为HTML - */ - private boolean isHtml; - /** - * 正文、附件和图片的混合部分 - */ - private final Multipart multipart = new MimeMultipart(); - /** - * 是否使用全局会话,默认为false - */ - private boolean useGlobalSession = false; - - /** - * debug输出位置,可以自定义debug日志 - */ - private PrintStream debugOutput; - - /** - * 创建邮件客户端 - * - * @param mailAccount 邮件帐号 - * @return Mail - */ - public static Mail create(MailAccount mailAccount) { - return new Mail(mailAccount); - } - - /** - * 创建邮件客户端,使用全局邮件帐户 - * - * @return Mail - */ - public static Mail create() { - return new Mail(); - } - - // --------------------------------------------------------------- Constructor start - - /** - * 构造,使用全局邮件帐户 - */ - public Mail() { - this(GlobalMailAccount.INSTANCE.getAccount()); - } - - /** - * 构造 - * - * @param mailAccount 邮件帐户,如果为null使用默认配置文件的全局邮件配置 - */ - public Mail(MailAccount mailAccount) { - mailAccount = (null != mailAccount) ? mailAccount : GlobalMailAccount.INSTANCE.getAccount(); - this.mailAccount = mailAccount.defaultIfEmpty(); - } - // --------------------------------------------------------------- Constructor end - - // --------------------------------------------------------------- Getters and Setters start - - /** - * 设置收件人 - * - * @param tos 收件人列表 - * @return this - * @see #setTos(String...) - */ - public Mail to(String... tos) { - return setTos(tos); - } - - /** - * 设置多个收件人 - * - * @param tos 收件人列表 - * @return this - */ - public Mail setTos(String... tos) { - this.tos = tos; - return this; - } - - /** - * 设置多个抄送人(carbon copy) - * - * @param ccs 抄送人列表 - * @return this - * @since 4.0.3 - */ - public Mail setCcs(String... ccs) { - this.ccs = ccs; - return this; - } - - /** - * 设置多个密送人(blind carbon copy) - * - * @param bccs 密送人列表 - * @return this - * @since 4.0.3 - */ - public Mail setBccs(String... bccs) { - this.bccs = bccs; - return this; - } - - /** - * 设置多个回复地址(reply-to) - * - * @param reply 回复地址(reply-to)列表 - * @return this - * @since 4.6.0 - */ - public Mail setReply(String... reply) { - this.reply = reply; - return this; - } - - /** - * 设置标题 - * - * @param title 标题 - * @return this - */ - public Mail setTitle(String title) { - this.title = title; - return this; - } - - /** - * 设置正文
- * 正文可以是普通文本也可以是HTML(默认普通文本),可以通过调用{@link #setHtml(boolean)} 设置是否为HTML - * - * @param content 正文 - * @return this - */ - public Mail setContent(String content) { - this.content = content; - return this; - } - - /** - * 设置是否是HTML - * - * @param isHtml 是否为HTML - * @return this - */ - public Mail setHtml(boolean isHtml) { - this.isHtml = isHtml; - return this; - } - - /** - * 设置正文 - * - * @param content 正文内容 - * @param isHtml 是否为HTML - * @return this - */ - public Mail setContent(String content, boolean isHtml) { - setContent(content); - return setHtml(isHtml); - } - - /** - * 设置文件类型附件,文件可以是图片文件,此时自动设置cid(正文中引用图片),默认cid为文件名 - * - * @param files 附件文件列表 - * @return this - */ - public Mail setFiles(File... files) { - if (ArrayUtil.isEmpty(files)) { - return this; - } - - final DataSource[] attachments = new DataSource[files.length]; - for (int i = 0; i < files.length; i++) { - attachments[i] = new FileDataSource(files[i]); - } - return setAttachments(attachments); - } - - /** - * 增加附件或图片,附件使用{@link DataSource} 形式表示,可以使用{@link FileDataSource}包装文件表示文件附件 - * - * @param attachments 附件列表 - * @return this - * @since 4.0.9 - */ - public Mail setAttachments(DataSource... attachments) { - if (ArrayUtil.isNotEmpty(attachments)) { - final Charset charset = this.mailAccount.getCharset(); - MimeBodyPart bodyPart; - String nameEncoded; - try { - for (DataSource attachment : attachments) { - bodyPart = new MimeBodyPart(); - bodyPart.setDataHandler(new DataHandler(attachment)); - nameEncoded = attachment.getName(); - if (this.mailAccount.isEncodefilename()) { - nameEncoded = InternalMailUtil.encodeText(nameEncoded, charset); - } - // 普通附件文件名 - bodyPart.setFileName(nameEncoded); - if (StrUtil.startWith(attachment.getContentType(), "image/")) { - // 图片附件,用于正文中引用图片 - bodyPart.setContentID(nameEncoded); - } - this.multipart.addBodyPart(bodyPart); - } - } catch (MessagingException e) { - throw new MailException(e); - } - } - return this; - } - - /** - * 增加图片,图片的键对应到邮件模板中的占位字符串,图片类型默认为"image/jpeg" - * - * @param cid 图片与占位符,占位符格式为cid:${cid} - * @param imageStream 图片文件 - * @return this - * @since 4.6.3 - */ - public Mail addImage(String cid, InputStream imageStream) { - return addImage(cid, imageStream, null); - } - - /** - * 增加图片,图片的键对应到邮件模板中的占位字符串 - * - * @param cid 图片与占位符,占位符格式为cid:${cid} - * @param imageStream 图片流,不关闭 - * @param contentType 图片类型,null赋值默认的"image/jpeg" - * @return this - * @since 4.6.3 - */ - public Mail addImage(String cid, InputStream imageStream, String contentType) { - ByteArrayDataSource imgSource; - try { - imgSource = new ByteArrayDataSource(imageStream, ObjectUtil.defaultIfNull(contentType, "image/jpeg")); - } catch (IOException e) { - throw new IORuntimeException(e); - } - imgSource.setName(cid); - return setAttachments(imgSource); - } - - /** - * 增加图片,图片的键对应到邮件模板中的占位字符串 - * - * @param cid 图片与占位符,占位符格式为cid:${cid} - * @param imageFile 图片文件 - * @return this - * @since 4.6.3 - */ - public Mail addImage(String cid, File imageFile) { - InputStream in = null; - try { - in = FileUtil.getInputStream(imageFile); - return addImage(cid, in, FileTypeMap.getDefaultFileTypeMap().getContentType(imageFile)); - } finally { - IoUtil.close(in); - } - } - - /** - * 设置字符集编码 - * - * @param charset 字符集编码 - * @return this - * @see MailAccount#setCharset(Charset) - */ - public Mail setCharset(Charset charset) { - this.mailAccount.setCharset(charset); - return this; - } - - /** - * 设置是否使用全局会话,默认为true - * - * @param isUseGlobalSession 是否使用全局会话,默认为true - * @return this - * @since 4.0.2 - */ - public Mail setUseGlobalSession(boolean isUseGlobalSession) { - this.useGlobalSession = isUseGlobalSession; - return this; - } - - /** - * 设置debug输出位置,可以自定义debug日志 - * - * @param debugOutput debug输出位置 - * @return this - * @since 5.5.6 - */ - public Mail setDebugOutput(PrintStream debugOutput) { - this.debugOutput = debugOutput; - return this; - } - // --------------------------------------------------------------- Getters and Setters end - - @Override - public MimeMessage build() { - try { - return buildMsg(); - } catch (MessagingException e) { - throw new MailException(e); - } - } - - /** - * 发送 - * - * @return message-id - * @throws MailException 邮件发送异常 - */ - public String send() throws MailException { - try { - return doSend(); - } catch (MessagingException e) { - if (e instanceof SendFailedException) { - // 当地址无效时,显示更加详细的无效地址信息 - final Address[] invalidAddresses = ((SendFailedException) e).getInvalidAddresses(); - final String msg = StrUtil.format("Invalid Addresses: {}", ArrayUtil.toString(invalidAddresses)); - throw new MailException(msg, e); - } - throw new MailException(e); - } - } - - // --------------------------------------------------------------- Private method start - - /** - * 执行发送 - * - * @return message-id - * @throws MessagingException 发送异常 - */ - private String doSend() throws MessagingException { - final MimeMessage mimeMessage = buildMsg(); - Transport.send(mimeMessage); - return mimeMessage.getMessageID(); - } - - /** - * 构建消息 - * - * @return {@link MimeMessage}消息 - * @throws MessagingException 消息异常 - */ - private MimeMessage buildMsg() throws MessagingException { - final Charset charset = this.mailAccount.getCharset(); - final MimeMessage msg = new MimeMessage(getSession()); - // 发件人 - final String from = this.mailAccount.getFrom(); - if (StrUtil.isEmpty(from)) { - // 用户未提供发送方,则从Session中自动获取 - msg.setFrom(); - } else { - msg.setFrom(InternalMailUtil.parseFirstAddress(from, charset)); - } - // 标题 - msg.setSubject(this.title, (null == charset) ? null : charset.name()); - // 发送时间 - msg.setSentDate(new Date()); - // 内容和附件 - msg.setContent(buildContent(charset)); - // 收件人 - msg.setRecipients(MimeMessage.RecipientType.TO, InternalMailUtil.parseAddressFromStrs(this.tos, charset)); - // 抄送人 - if (ArrayUtil.isNotEmpty(this.ccs)) { - msg.setRecipients(MimeMessage.RecipientType.CC, InternalMailUtil.parseAddressFromStrs(this.ccs, charset)); - } - // 密送人 - if (ArrayUtil.isNotEmpty(this.bccs)) { - msg.setRecipients(MimeMessage.RecipientType.BCC, InternalMailUtil.parseAddressFromStrs(this.bccs, charset)); - } - // 回复地址(reply-to) - if (ArrayUtil.isNotEmpty(this.reply)) { - msg.setReplyTo(InternalMailUtil.parseAddressFromStrs(this.reply, charset)); - } - - return msg; - } - - /** - * 构建邮件信息主体 - * - * @param charset 编码,{@code null}则使用{@link MimeUtility#getDefaultJavaCharset()} - * @return 邮件信息主体 - * @throws MessagingException 消息异常 - */ - private Multipart buildContent(Charset charset) throws MessagingException { - final String charsetStr = null != charset ? charset.name() : MimeUtility.getDefaultJavaCharset(); - // 正文 - final MimeBodyPart body = new MimeBodyPart(); - body.setContent(content, StrUtil.format("text/{}; charset={}", isHtml ? "html" : "plain", charsetStr)); - this.multipart.addBodyPart(body); - - return this.multipart; - } - - /** - * 获取默认邮件会话
- * 如果为全局单例的会话,则全局只允许一个邮件帐号,否则每次发送邮件会新建一个新的会话 - * - * @return 邮件会话 {@link Session} - */ - private Session getSession() { - final Session session = MailUtils.getSession(this.mailAccount, this.useGlobalSession); - - if (null != this.debugOutput) { - session.setDebugOut(debugOutput); - } - - return session; - } - // --------------------------------------------------------------- Private method end -} diff --git a/ruoyi-common/ruoyi-common-mail/src/main/java/org/dromara/common/mail/utils/MailAccount.java b/ruoyi-common/ruoyi-common-mail/src/main/java/org/dromara/common/mail/utils/MailAccount.java deleted file mode 100644 index 2a732a1a9..000000000 --- a/ruoyi-common/ruoyi-common-mail/src/main/java/org/dromara/common/mail/utils/MailAccount.java +++ /dev/null @@ -1,659 +0,0 @@ -package org.dromara.common.mail.utils; - -import cn.hutool.core.util.CharsetUtil; -import cn.hutool.core.util.ObjectUtil; -import cn.hutool.core.util.StrUtil; -import cn.hutool.setting.Setting; - -import java.io.Serial; -import java.io.Serializable; -import java.nio.charset.Charset; -import java.util.HashMap; -import java.util.Map; -import java.util.Properties; - -/** - * 邮件账户对象 - * - * @author Luxiaolei - */ -public class MailAccount implements Serializable { - @Serial - private static final long serialVersionUID = -6937313421815719204L; - - private static final String MAIL_PROTOCOL = "mail.transport.protocol"; - private static final String SMTP_HOST = "mail.smtp.host"; - private static final String SMTP_PORT = "mail.smtp.port"; - private static final String SMTP_AUTH = "mail.smtp.auth"; - private static final String SMTP_TIMEOUT = "mail.smtp.timeout"; - private static final String SMTP_CONNECTION_TIMEOUT = "mail.smtp.connectiontimeout"; - private static final String SMTP_WRITE_TIMEOUT = "mail.smtp.writetimeout"; - - // SSL - private static final String STARTTLS_ENABLE = "mail.smtp.starttls.enable"; - private static final String SSL_ENABLE = "mail.smtp.ssl.enable"; - private static final String SSL_PROTOCOLS = "mail.smtp.ssl.protocols"; - private static final String SOCKET_FACTORY = "mail.smtp.socketFactory.class"; - private static final String SOCKET_FACTORY_FALLBACK = "mail.smtp.socketFactory.fallback"; - private static final String SOCKET_FACTORY_PORT = "smtp.socketFactory.port"; - - // System Properties - private static final String SPLIT_LONG_PARAMS = "mail.mime.splitlongparameters"; - //private static final String ENCODE_FILE_NAME = "mail.mime.encodefilename"; - //private static final String CHARSET = "mail.mime.charset"; - - // 其他 - private static final String MAIL_DEBUG = "mail.debug"; - - public static final String[] MAIL_SETTING_PATHS = new String[]{"config/mail.setting", "config/mailAccount.setting", "mail.setting"}; - - /** - * SMTP服务器域名 - */ - private String host; - /** - * SMTP服务端口 - */ - private Integer port; - /** - * 是否需要用户名密码验证 - */ - private Boolean auth; - /** - * 用户名 - */ - private String user; - /** - * 密码 - */ - private String pass; - /** - * 发送方,遵循RFC-822标准 - */ - private String from; - - /** - * 是否打开调试模式,调试模式会显示与邮件服务器通信过程,默认不开启 - */ - private boolean debug; - /** - * 编码用于编码邮件正文和发送人、收件人等中文 - */ - private Charset charset = CharsetUtil.CHARSET_UTF_8; - /** - * 对于超长参数是否切分为多份,默认为false(国内邮箱附件不支持切分的附件名) - */ - private boolean splitlongparameters = false; - /** - * 对于文件名是否使用{@link #charset}编码,默认为 {@code true} - */ - private boolean encodefilename = true; - - /** - * 使用 STARTTLS安全连接,STARTTLS是对纯文本通信协议的扩展。它将纯文本连接升级为加密连接(TLS或SSL), 而不是使用一个单独的加密通信端口。 - */ - private boolean starttlsEnable = false; - /** - * 使用 SSL安全连接 - */ - private Boolean sslEnable; - - /** - * SSL协议,多个协议用空格分隔 - */ - private String sslProtocols; - - /** - * 指定实现javax.net.SocketFactory接口的类的名称,这个类将被用于创建SMTP的套接字 - */ - private String socketFactoryClass = "javax.net.ssl.SSLSocketFactory"; - /** - * 如果设置为true,未能创建一个套接字使用指定的套接字工厂类将导致使用java.net.Socket创建的套接字类, 默认值为true - */ - private boolean socketFactoryFallback; - /** - * 指定的端口连接到在使用指定的套接字工厂。如果没有设置,将使用默认端口 - */ - private int socketFactoryPort = 465; - - /** - * SMTP超时时长,单位毫秒,缺省值不超时 - */ - private long timeout; - /** - * Socket连接超时值,单位毫秒,缺省值不超时 - */ - private long connectionTimeout; - /** - * Socket写出超时值,单位毫秒,缺省值不超时 - */ - private long writeTimeout; - - /** - * 自定义的其他属性,此自定义属性会覆盖默认属性 - */ - private final Map customProperty = new HashMap<>(); - - // -------------------------------------------------------------- Constructor start - - /** - * 构造,所有参数需自行定义或保持默认值 - */ - public MailAccount() { - } - - /** - * 构造 - * - * @param settingPath 配置文件路径 - */ - public MailAccount(String settingPath) { - this(new Setting(settingPath)); - } - - /** - * 构造 - * - * @param setting 配置文件 - */ - public MailAccount(Setting setting) { - setting.toBean(this); - } - - // -------------------------------------------------------------- Constructor end - - /** - * 获得SMTP服务器域名 - * - * @return SMTP服务器域名 - */ - public String getHost() { - return host; - } - - /** - * 设置SMTP服务器域名 - * - * @param host SMTP服务器域名 - * @return this - */ - public MailAccount setHost(String host) { - this.host = host; - return this; - } - - /** - * 获得SMTP服务端口 - * - * @return SMTP服务端口 - */ - public Integer getPort() { - return port; - } - - /** - * 设置SMTP服务端口 - * - * @param port SMTP服务端口 - * @return this - */ - public MailAccount setPort(Integer port) { - this.port = port; - return this; - } - - /** - * 是否需要用户名密码验证 - * - * @return 是否需要用户名密码验证 - */ - public Boolean isAuth() { - return auth; - } - - /** - * 设置是否需要用户名密码验证 - * - * @param isAuth 是否需要用户名密码验证 - * @return this - */ - public MailAccount setAuth(boolean isAuth) { - this.auth = isAuth; - return this; - } - - /** - * 获取用户名 - * - * @return 用户名 - */ - public String getUser() { - return user; - } - - /** - * 设置用户名 - * - * @param user 用户名 - * @return this - */ - public MailAccount setUser(String user) { - this.user = user; - return this; - } - - /** - * 获取密码 - * - * @return 密码 - */ - public String getPass() { - return pass; - } - - /** - * 设置密码 - * - * @param pass 密码 - * @return this - */ - public MailAccount setPass(String pass) { - this.pass = pass; - return this; - } - - /** - * 获取发送方,遵循RFC-822标准 - * - * @return 发送方,遵循RFC-822标准 - */ - public String getFrom() { - return from; - } - - /** - * 设置发送方,遵循RFC-822标准
- * 发件人可以是以下形式: - * - *

-     * 1. user@xxx.xx
-     * 2.  name <user@xxx.xx>
-     * 
- * - * @param from 发送方,遵循RFC-822标准 - * @return this - */ - public MailAccount setFrom(String from) { - this.from = from; - return this; - } - - /** - * 是否打开调试模式,调试模式会显示与邮件服务器通信过程,默认不开启 - * - * @return 是否打开调试模式,调试模式会显示与邮件服务器通信过程,默认不开启 - * @since 4.0.2 - */ - public boolean isDebug() { - return debug; - } - - /** - * 设置是否打开调试模式,调试模式会显示与邮件服务器通信过程,默认不开启 - * - * @param debug 是否打开调试模式,调试模式会显示与邮件服务器通信过程,默认不开启 - * @return this - * @since 4.0.2 - */ - public MailAccount setDebug(boolean debug) { - this.debug = debug; - return this; - } - - /** - * 获取字符集编码 - * - * @return 编码,可能为{@code null} - */ - public Charset getCharset() { - return charset; - } - - /** - * 设置字符集编码,此选项不会修改全局配置,若修改全局配置,请设置此项为{@code null}并设置: - *
-     * 	System.setProperty("mail.mime.charset", charset);
-     * 
- * - * @param charset 字符集编码,{@code null} 则表示使用全局设置的默认编码,全局编码为mail.mime.charset系统属性 - * @return this - */ - public MailAccount setCharset(Charset charset) { - this.charset = charset; - return this; - } - - /** - * 对于超长参数是否切分为多份,默认为false(国内邮箱附件不支持切分的附件名) - * - * @return 对于超长参数是否切分为多份 - */ - public boolean isSplitlongparameters() { - return splitlongparameters; - } - - /** - * 设置对于超长参数是否切分为多份,默认为false(国内邮箱附件不支持切分的附件名)
- * 注意此项为全局设置,此项会调用 - *
-     * System.setProperty("mail.mime.splitlongparameters", true)
-     * 
- * - * @param splitlongparameters 对于超长参数是否切分为多份 - */ - public void setSplitlongparameters(boolean splitlongparameters) { - this.splitlongparameters = splitlongparameters; - } - - /** - * 对于文件名是否使用{@link #charset}编码,默认为 {@code true} - * - * @return 对于文件名是否使用{@link #charset}编码,默认为 {@code true} - * @since 5.7.16 - */ - public boolean isEncodefilename() { - - return encodefilename; - } - - /** - * 设置对于文件名是否使用{@link #charset}编码,此选项不会修改全局配置
- * 如果此选项设置为{@code false},则是否编码取决于两个系统属性: - *
    - *
  • mail.mime.encodefilename 是否编码附件文件名
  • - *
  • mail.mime.charset 编码文件名的编码
  • - *
- * - * @param encodefilename 对于文件名是否使用{@link #charset}编码 - * @since 5.7.16 - */ - public void setEncodefilename(boolean encodefilename) { - this.encodefilename = encodefilename; - } - - /** - * 是否使用 STARTTLS安全连接,STARTTLS是对纯文本通信协议的扩展。它将纯文本连接升级为加密连接(TLS或SSL), 而不是使用一个单独的加密通信端口。 - * - * @return 是否使用 STARTTLS安全连接 - */ - public boolean isStarttlsEnable() { - return this.starttlsEnable; - } - - /** - * 设置是否使用STARTTLS安全连接,STARTTLS是对纯文本通信协议的扩展。它将纯文本连接升级为加密连接(TLS或SSL), 而不是使用一个单独的加密通信端口。 - * - * @param startttlsEnable 是否使用STARTTLS安全连接 - * @return this - */ - public MailAccount setStarttlsEnable(boolean startttlsEnable) { - this.starttlsEnable = startttlsEnable; - return this; - } - - /** - * 是否使用 SSL安全连接 - * - * @return 是否使用 SSL安全连接 - */ - public Boolean isSslEnable() { - return this.sslEnable; - } - - /** - * 设置是否使用SSL安全连接 - * - * @param sslEnable 是否使用SSL安全连接 - * @return this - */ - public MailAccount setSslEnable(Boolean sslEnable) { - this.sslEnable = sslEnable; - return this; - } - - /** - * 获取SSL协议,多个协议用空格分隔 - * - * @return SSL协议,多个协议用空格分隔 - * @since 5.5.7 - */ - public String getSslProtocols() { - return sslProtocols; - } - - /** - * 设置SSL协议,多个协议用空格分隔 - * - * @param sslProtocols SSL协议,多个协议用空格分隔 - * @since 5.5.7 - */ - public void setSslProtocols(String sslProtocols) { - this.sslProtocols = sslProtocols; - } - - /** - * 获取指定实现javax.net.SocketFactory接口的类的名称,这个类将被用于创建SMTP的套接字 - * - * @return 指定实现javax.net.SocketFactory接口的类的名称, 这个类将被用于创建SMTP的套接字 - */ - public String getSocketFactoryClass() { - return socketFactoryClass; - } - - /** - * 设置指定实现javax.net.SocketFactory接口的类的名称,这个类将被用于创建SMTP的套接字 - * - * @param socketFactoryClass 指定实现javax.net.SocketFactory接口的类的名称,这个类将被用于创建SMTP的套接字 - * @return this - */ - public MailAccount setSocketFactoryClass(String socketFactoryClass) { - this.socketFactoryClass = socketFactoryClass; - return this; - } - - /** - * 如果设置为true,未能创建一个套接字使用指定的套接字工厂类将导致使用java.net.Socket创建的套接字类, 默认值为true - * - * @return 如果设置为true, 未能创建一个套接字使用指定的套接字工厂类将导致使用java.net.Socket创建的套接字类, 默认值为true - */ - public boolean isSocketFactoryFallback() { - return socketFactoryFallback; - } - - /** - * 如果设置为true,未能创建一个套接字使用指定的套接字工厂类将导致使用java.net.Socket创建的套接字类, 默认值为true - * - * @param socketFactoryFallback 如果设置为true,未能创建一个套接字使用指定的套接字工厂类将导致使用java.net.Socket创建的套接字类, 默认值为true - * @return this - */ - public MailAccount setSocketFactoryFallback(boolean socketFactoryFallback) { - this.socketFactoryFallback = socketFactoryFallback; - return this; - } - - /** - * 获取指定的端口连接到在使用指定的套接字工厂。如果没有设置,将使用默认端口 - * - * @return 指定的端口连接到在使用指定的套接字工厂。如果没有设置,将使用默认端口 - */ - public int getSocketFactoryPort() { - return socketFactoryPort; - } - - /** - * 指定的端口连接到在使用指定的套接字工厂。如果没有设置,将使用默认端口 - * - * @param socketFactoryPort 指定的端口连接到在使用指定的套接字工厂。如果没有设置,将使用默认端口 - * @return this - */ - public MailAccount setSocketFactoryPort(int socketFactoryPort) { - this.socketFactoryPort = socketFactoryPort; - return this; - } - - /** - * 设置SMTP超时时长,单位毫秒,缺省值不超时 - * - * @param timeout SMTP超时时长,单位毫秒,缺省值不超时 - * @return this - * @since 4.1.17 - */ - public MailAccount setTimeout(long timeout) { - this.timeout = timeout; - return this; - } - - /** - * 设置Socket连接超时值,单位毫秒,缺省值不超时 - * - * @param connectionTimeout Socket连接超时值,单位毫秒,缺省值不超时 - * @return this - * @since 4.1.17 - */ - public MailAccount setConnectionTimeout(long connectionTimeout) { - this.connectionTimeout = connectionTimeout; - return this; - } - - /** - * 设置Socket写出超时值,单位毫秒,缺省值不超时 - * - * @param writeTimeout Socket写出超时值,单位毫秒,缺省值不超时 - * @return this - * @since 5.8.3 - */ - public MailAccount setWriteTimeout(long writeTimeout) { - this.writeTimeout = writeTimeout; - return this; - } - - /** - * 获取自定义属性列表 - * - * @return 自定义参数列表 - * @since 5.6.4 - */ - public Map getCustomProperty() { - return customProperty; - } - - /** - * 设置自定义属性,如mail.smtp.ssl.socketFactory - * - * @param key 属性名,空白被忽略 - * @param value 属性值, null被忽略 - * @return this - * @since 5.6.4 - */ - public MailAccount setCustomProperty(String key, Object value) { - if (StrUtil.isNotBlank(key) && ObjectUtil.isNotNull(value)) { - this.customProperty.put(key, value); - } - return this; - } - - /** - * 获得SMTP相关信息 - * - * @return {@link Properties} - */ - public Properties getSmtpProps() { - //全局系统参数 - System.setProperty(SPLIT_LONG_PARAMS, String.valueOf(this.splitlongparameters)); - - final Properties p = new Properties(); - p.put(MAIL_PROTOCOL, "smtp"); - p.put(SMTP_HOST, this.host); - p.put(SMTP_PORT, String.valueOf(this.port)); - p.put(SMTP_AUTH, String.valueOf(this.auth)); - if (this.timeout > 0) { - p.put(SMTP_TIMEOUT, String.valueOf(this.timeout)); - } - if (this.connectionTimeout > 0) { - p.put(SMTP_CONNECTION_TIMEOUT, String.valueOf(this.connectionTimeout)); - } - // issue#2355 - if (this.writeTimeout > 0) { - p.put(SMTP_WRITE_TIMEOUT, String.valueOf(this.writeTimeout)); - } - - p.put(MAIL_DEBUG, String.valueOf(this.debug)); - - if (this.starttlsEnable) { - //STARTTLS是对纯文本通信协议的扩展。它将纯文本连接升级为加密连接(TLS或SSL), 而不是使用一个单独的加密通信端口。 - p.put(STARTTLS_ENABLE, "true"); - - if (null == this.sslEnable) { - //为了兼容旧版本,当用户没有此项配置时,按照starttlsEnable开启状态时对待 - this.sslEnable = true; - } - } - - // SSL - if (null != this.sslEnable && this.sslEnable) { - p.put(SSL_ENABLE, "true"); - p.put(SOCKET_FACTORY, socketFactoryClass); - p.put(SOCKET_FACTORY_FALLBACK, String.valueOf(this.socketFactoryFallback)); - p.put(SOCKET_FACTORY_PORT, String.valueOf(this.socketFactoryPort)); - // issue#IZN95@Gitee,在Linux下需自定义SSL协议版本 - if (StrUtil.isNotBlank(this.sslProtocols)) { - p.put(SSL_PROTOCOLS, this.sslProtocols); - } - } - - // 补充自定义属性,允许自定属性覆盖已经设置的值 - p.putAll(this.customProperty); - - return p; - } - - /** - * 如果某些值为null,使用默认值 - * - * @return this - */ - public MailAccount defaultIfEmpty() { - // 去掉发件人的姓名部分 - final String fromAddress = InternalMailUtil.parseFirstAddress(this.from, this.charset).getAddress(); - - if (StrUtil.isBlank(this.host)) { - // 如果SMTP地址为空,默认使用smtp.<发件人邮箱后缀> - this.host = StrUtil.format("smtp.{}", StrUtil.subSuf(fromAddress, fromAddress.indexOf('@') + 1)); - } - if (StrUtil.isBlank(user)) { - // 如果用户名为空,默认为发件人(issue#I4FYVY@Gitee) - //this.user = StrUtil.subPre(fromAddress, fromAddress.indexOf('@')); - this.user = fromAddress; - } - if (null == this.auth) { - // 如果密码非空白,则使用认证模式 - this.auth = (false == StrUtil.isBlank(this.pass)); - } - if (null == this.port) { - // 端口在SSL状态下默认与socketFactoryPort一致,非SSL状态下默认为25 - this.port = (null != this.sslEnable && this.sslEnable) ? this.socketFactoryPort : 25; - } - if (null == this.charset) { - // 默认UTF-8编码 - this.charset = CharsetUtil.CHARSET_UTF_8; - } - - return this; - } - - @Override - public String toString() { - return "MailAccount [host=" + host + ", port=" + port + ", auth=" + auth + ", user=" + user + ", pass=" + (StrUtil.isEmpty(this.pass) ? "" : "******") + ", from=" + from + ", startttlsEnable=" - + starttlsEnable + ", socketFactoryClass=" + socketFactoryClass + ", socketFactoryFallback=" + socketFactoryFallback + ", socketFactoryPort=" + socketFactoryPort + "]"; - } -} diff --git a/ruoyi-common/ruoyi-common-mail/src/main/java/org/dromara/common/mail/utils/MailException.java b/ruoyi-common/ruoyi-common-mail/src/main/java/org/dromara/common/mail/utils/MailException.java deleted file mode 100644 index cc199d455..000000000 --- a/ruoyi-common/ruoyi-common-mail/src/main/java/org/dromara/common/mail/utils/MailException.java +++ /dev/null @@ -1,40 +0,0 @@ -package org.dromara.common.mail.utils; - -import cn.hutool.core.exceptions.ExceptionUtil; -import cn.hutool.core.util.StrUtil; - -import java.io.Serial; - -/** - * 邮件异常 - * - * @author xiaoleilu - */ -public class MailException extends RuntimeException { - @Serial - private static final long serialVersionUID = 8247610319171014183L; - - public MailException(Throwable e) { - super(ExceptionUtil.getMessage(e), e); - } - - public MailException(String message) { - super(message); - } - - public MailException(String messageTemplate, Object... params) { - super(StrUtil.format(messageTemplate, params)); - } - - public MailException(String message, Throwable throwable) { - super(message, throwable); - } - - public MailException(String message, Throwable throwable, boolean enableSuppression, boolean writableStackTrace) { - super(message, throwable, enableSuppression, writableStackTrace); - } - - public MailException(Throwable throwable, String messageTemplate, Object... params) { - super(StrUtil.format(messageTemplate, params), throwable); - } -} diff --git a/ruoyi-common/ruoyi-common-mail/src/main/java/org/dromara/common/mail/utils/MailUtils.java b/ruoyi-common/ruoyi-common-mail/src/main/java/org/dromara/common/mail/utils/MailUtils.java index 040cc572a..a28701fbc 100644 --- a/ruoyi-common/ruoyi-common-mail/src/main/java/org/dromara/common/mail/utils/MailUtils.java +++ b/ruoyi-common/ruoyi-common-mail/src/main/java/org/dromara/common/mail/utils/MailUtils.java @@ -5,6 +5,9 @@ import cn.hutool.core.io.IoUtil; import cn.hutool.core.map.MapUtil; import cn.hutool.core.util.CharUtil; import cn.hutool.core.util.StrUtil; +import cn.hutool.extra.mail.JakartaMail; +import cn.hutool.extra.mail.JakartaUserPassAuthenticator; +import cn.hutool.extra.mail.MailAccount; import jakarta.mail.Authenticator; import jakarta.mail.Session; import lombok.AccessLevel; @@ -17,7 +20,7 @@ import java.io.InputStream; import java.util.Collection; import java.util.List; import java.util.Map; - +import java.util.Map.Entry; /** * 邮件工具类 @@ -385,7 +388,7 @@ public class MailUtils { public static Session getSession(MailAccount mailAccount, boolean isSingleton) { Authenticator authenticator = null; if (mailAccount.isAuth()) { - authenticator = new UserPassAuthenticator(mailAccount.getUser(), mailAccount.getPass()); + authenticator = new JakartaUserPassAuthenticator(mailAccount.getUser(), mailAccount.getPass()); } return isSingleton ? Session.getDefaultInstance(mailAccount.getSmtpProps(), authenticator) // @@ -412,7 +415,7 @@ public class MailUtils { */ private static String send(MailAccount mailAccount, boolean useGlobalSession, Collection tos, Collection ccs, Collection bccs, String subject, String content, Map imageMap, boolean isHtml, File... files) { - final Mail mail = Mail.create(mailAccount).setUseGlobalSession(useGlobalSession); + final JakartaMail mail = JakartaMail.create(mailAccount).setUseGlobalSession(useGlobalSession); // 可选抄送人 if (CollUtil.isNotEmpty(ccs)) { @@ -431,7 +434,7 @@ public class MailUtils { // 图片 if (MapUtil.isNotEmpty(imageMap)) { - for (Map.Entry entry : imageMap.entrySet()) { + for (Entry entry : imageMap.entrySet()) { mail.addImage(entry.getKey(), entry.getValue()); // 关闭流 IoUtil.close(entry.getValue()); @@ -463,5 +466,4 @@ public class MailUtils { return result; } // ------------------------------------------------------------------------------------------------------------------------ Private method end - } diff --git a/ruoyi-common/ruoyi-common-mail/src/main/java/org/dromara/common/mail/utils/UserPassAuthenticator.java b/ruoyi-common/ruoyi-common-mail/src/main/java/org/dromara/common/mail/utils/UserPassAuthenticator.java deleted file mode 100644 index fbbe5e371..000000000 --- a/ruoyi-common/ruoyi-common-mail/src/main/java/org/dromara/common/mail/utils/UserPassAuthenticator.java +++ /dev/null @@ -1,33 +0,0 @@ -package org.dromara.common.mail.utils; - -import jakarta.mail.Authenticator; -import jakarta.mail.PasswordAuthentication; - -/** - * 用户名密码验证器 - * - * @author looly - * @since 3.1.2 - */ -public class UserPassAuthenticator extends Authenticator { - - private final String user; - private final String pass; - - /** - * 构造 - * - * @param user 用户名 - * @param pass 密码 - */ - public UserPassAuthenticator(String user, String pass) { - this.user = user; - this.pass = pass; - } - - @Override - protected PasswordAuthentication getPasswordAuthentication() { - return new PasswordAuthentication(this.user, this.pass); - } - -} -- Gitee From 77f44574c00b536ef21286f3898265829e446a52 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 15 Aug 2024 11:53:15 +0800 Subject: [PATCH 123/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E4=BF=AE?= =?UTF-8?q?=E6=94=B9spring=E6=BA=90=E7=A0=81=E4=B8=8A=E4=B8=8B=E6=96=87?= =?UTF-8?q?=E6=8C=81=E6=9C=89=E8=80=85=20=E6=94=AF=E6=8C=81=E7=BA=BF?= =?UTF-8?q?=E7=A8=8B=E5=88=87=E6=8D=A2=E4=BC=A0=E9=80=92=E4=B8=8A=E4=B8=8B?= =?UTF-8?q?=E6=96=87=E6=95=B0=E6=8D=AE=20=E6=94=AF=E6=8C=81=E4=B8=80?= =?UTF-8?q?=E5=88=87=E5=BC=82=E6=AD=A5=E8=8E=B7=E5=8F=96=E7=94=A8=E6=88=B7?= =?UTF-8?q?=E4=BF=A1=E6=81=AF=E7=AD=89=E6=93=8D=E4=BD=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../web/listener/UserActionListener.java | 1 - .../dromara/web/service/SysLoginService.java | 1 - .../web/service/SysRegisterService.java | 2 - ruoyi-common/ruoyi-common-core/pom.xml | 7 + .../context/request/RequestContextHolder.java | 161 ++++++++++++++++++ .../dromara/common/log/aspect/LogAspect.java | 14 -- .../common/log/event/LogininforEvent.java | 7 - .../impl/SysLogininforServiceImpl.java | 2 +- .../service/impl/SysOperLogServiceImpl.java | 23 ++- 9 files changed, 189 insertions(+), 29 deletions(-) create mode 100644 ruoyi-common/ruoyi-common-core/src/main/java/org/springframework/web/context/request/RequestContextHolder.java diff --git a/ruoyi-admin/src/main/java/org/dromara/web/listener/UserActionListener.java b/ruoyi-admin/src/main/java/org/dromara/web/listener/UserActionListener.java index 07595e092..a958de62d 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/listener/UserActionListener.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/listener/UserActionListener.java @@ -71,7 +71,6 @@ public class UserActionListener implements SaTokenListener { logininforEvent.setUsername(username); logininforEvent.setStatus(Constants.LOGIN_SUCCESS); logininforEvent.setMessage(MessageUtils.message("user.login.success")); - logininforEvent.setRequest(ServletUtils.getRequest()); SpringUtils.context().publishEvent(logininforEvent); // 更新登录信息 loginService.recordLoginInfo((Long) loginModel.getExtra(LoginHelper.USER_KEY), ip); diff --git a/ruoyi-admin/src/main/java/org/dromara/web/service/SysLoginService.java b/ruoyi-admin/src/main/java/org/dromara/web/service/SysLoginService.java index 52803663c..3ee67630b 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/service/SysLoginService.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/service/SysLoginService.java @@ -139,7 +139,6 @@ public class SysLoginService { logininforEvent.setUsername(username); logininforEvent.setStatus(status); logininforEvent.setMessage(message); - logininforEvent.setRequest(ServletUtils.getRequest()); SpringUtils.context().publishEvent(logininforEvent); } diff --git a/ruoyi-admin/src/main/java/org/dromara/web/service/SysRegisterService.java b/ruoyi-admin/src/main/java/org/dromara/web/service/SysRegisterService.java index ddab279bc..c7545fa65 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/service/SysRegisterService.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/service/SysRegisterService.java @@ -11,7 +11,6 @@ import org.dromara.common.core.exception.user.CaptchaException; import org.dromara.common.core.exception.user.CaptchaExpireException; import org.dromara.common.core.exception.user.UserException; import org.dromara.common.core.utils.MessageUtils; -import org.dromara.common.core.utils.ServletUtils; import org.dromara.common.core.utils.SpringUtils; import org.dromara.common.core.utils.StringUtils; import org.dromara.common.log.event.LogininforEvent; @@ -108,7 +107,6 @@ public class SysRegisterService { logininforEvent.setUsername(username); logininforEvent.setStatus(status); logininforEvent.setMessage(message); - logininforEvent.setRequest(ServletUtils.getRequest()); SpringUtils.context().publishEvent(logininforEvent); } diff --git a/ruoyi-common/ruoyi-common-core/pom.xml b/ruoyi-common/ruoyi-common-core/pom.xml index 5925c9b3c..f6f8c2556 100644 --- a/ruoyi-common/ruoyi-common-core/pom.xml +++ b/ruoyi-common/ruoyi-common-core/pom.xml @@ -99,6 +99,13 @@ transmittable-thread-local + + jakarta.faces + jakarta.faces-api + 4.1.0 + true + + diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/springframework/web/context/request/RequestContextHolder.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/springframework/web/context/request/RequestContextHolder.java new file mode 100644 index 000000000..7f9622dbc --- /dev/null +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/springframework/web/context/request/RequestContextHolder.java @@ -0,0 +1,161 @@ +/* + * Copyright 2002-2023 the original author or authors. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.springframework.web.context.request; + +import com.alibaba.ttl.TransmittableThreadLocal; +import jakarta.faces.context.FacesContext; +import org.springframework.lang.Nullable; +import org.springframework.util.ClassUtils; + +/** + * Holder class to expose the web request in the form of a thread-bound + * {@link RequestAttributes} object. The request will be inherited + * by any child threads spawned by the current thread if the + * {@code inheritable} flag is set to {@code true}. + * + *

Use {@link RequestContextListener} or + * {@link org.springframework.web.filter.RequestContextFilter} to expose + * the current web request. Note that + * already exposes the current request by default. + * + * 修改 spring 上下文存储方式 将 ThreadLocal 替换为 TransmittableThreadLocal + * 支持线程上下文切换变量传递 异步获取 spring 上下文 + * + * @author Juergen Hoeller + * @author Rod Johnson + * @since 2.0 + * @see RequestContextListener + * @see org.springframework.web.filter.RequestContextFilter + */ +public abstract class RequestContextHolder { + + private static final boolean jsfPresent = + ClassUtils.isPresent("jakarta.faces.context.FacesContext", RequestContextHolder.class.getClassLoader()); + + // ThreadLocal 替换为 TransmittableThreadLocal + private static final ThreadLocal requestAttributesHolder = + new TransmittableThreadLocal<>(); + + private static final ThreadLocal inheritableRequestAttributesHolder = + new TransmittableThreadLocal<>(); + + + /** + * Reset the RequestAttributes for the current thread. + */ + public static void resetRequestAttributes() { + requestAttributesHolder.remove(); + inheritableRequestAttributesHolder.remove(); + } + + /** + * Bind the given RequestAttributes to the current thread, + * not exposing it as inheritable for child threads. + * @param attributes the RequestAttributes to expose + * @see #setRequestAttributes(RequestAttributes, boolean) + */ + public static void setRequestAttributes(@Nullable RequestAttributes attributes) { + setRequestAttributes(attributes, false); + } + + /** + * Bind the given RequestAttributes to the current thread. + * @param attributes the RequestAttributes to expose, + * or {@code null} to reset the thread-bound context + * @param inheritable whether to expose the RequestAttributes as inheritable + * for child threads (using an {@link InheritableThreadLocal}) + */ + public static void setRequestAttributes(@Nullable RequestAttributes attributes, boolean inheritable) { + if (attributes == null) { + resetRequestAttributes(); + } + else { + if (inheritable) { + inheritableRequestAttributesHolder.set(attributes); + requestAttributesHolder.remove(); + } + else { + requestAttributesHolder.set(attributes); + inheritableRequestAttributesHolder.remove(); + } + } + } + + /** + * Return the RequestAttributes currently bound to the thread. + * @return the RequestAttributes currently bound to the thread, + * or {@code null} if none bound + */ + @Nullable + public static RequestAttributes getRequestAttributes() { + RequestAttributes attributes = requestAttributesHolder.get(); + if (attributes == null) { + attributes = inheritableRequestAttributesHolder.get(); + } + return attributes; + } + + /** + * Return the RequestAttributes currently bound to the thread. + *

Exposes the previously bound RequestAttributes instance, if any. + * Falls back to the current JSF FacesContext, if any. + * @return the RequestAttributes currently bound to the thread + * @throws IllegalStateException if no RequestAttributes object + * is bound to the current thread + * @see #setRequestAttributes + * @see ServletRequestAttributes + * @see FacesRequestAttributes + * @see jakarta.faces.context.FacesContext#getCurrentInstance() + */ + public static RequestAttributes currentRequestAttributes() throws IllegalStateException { + RequestAttributes attributes = getRequestAttributes(); + if (attributes == null) { + if (jsfPresent) { + attributes = FacesRequestAttributesFactory.getFacesRequestAttributes(); + } + if (attributes == null) { + throw new IllegalStateException("No thread-bound request found: " + + "Are you referring to request attributes outside of an actual web request, " + + "or processing a request outside of the originally receiving thread? " + + "If you are actually operating within a web request and still receive this message, " + + "your code is probably running outside of DispatcherServlet: " + + "In this case, use RequestContextListener or RequestContextFilter to expose the current request."); + } + } + return attributes; + } + + + /** + * Inner class to avoid hard-coded JSF dependency. + */ + private static class FacesRequestAttributesFactory { + + @Nullable + public static RequestAttributes getFacesRequestAttributes() { + try { + FacesContext facesContext = FacesContext.getCurrentInstance(); + return (facesContext != null ? new FacesRequestAttributes(facesContext) : null); + } + catch (NoClassDefFoundError err) { + // typically for com/sun/faces/util/Util if only the JSF API jar is present + return null; + } + } + } + +} diff --git a/ruoyi-common/ruoyi-common-log/src/main/java/org/dromara/common/log/aspect/LogAspect.java b/ruoyi-common/ruoyi-common-log/src/main/java/org/dromara/common/log/aspect/LogAspect.java index cdbd00f09..8e257a23c 100644 --- a/ruoyi-common/ruoyi-common-log/src/main/java/org/dromara/common/log/aspect/LogAspect.java +++ b/ruoyi-common/ruoyi-common-log/src/main/java/org/dromara/common/log/aspect/LogAspect.java @@ -13,7 +13,6 @@ import org.aspectj.lang.annotation.AfterReturning; import org.aspectj.lang.annotation.AfterThrowing; import org.aspectj.lang.annotation.Aspect; import org.aspectj.lang.annotation.Before; -import org.dromara.common.core.domain.model.LoginUser; import org.dromara.common.core.utils.ServletUtils; import org.dromara.common.core.utils.SpringUtils; import org.dromara.common.core.utils.StringUtils; @@ -21,7 +20,6 @@ import org.dromara.common.json.utils.JsonUtils; import org.dromara.common.log.annotation.Log; import org.dromara.common.log.enums.BusinessStatus; import org.dromara.common.log.event.OperLogEvent; -import org.dromara.common.satoken.utils.LoginHelper; import org.springframework.boot.autoconfigure.AutoConfiguration; import org.springframework.http.HttpMethod; import org.springframework.validation.BindingResult; @@ -88,16 +86,6 @@ public class LogAspect { // *========数据库日志=========*// OperLogEvent operLog = new OperLogEvent(); - operLog.setTenantId(LoginHelper.getTenantId()); - operLog.setStatus(BusinessStatus.SUCCESS.ordinal()); - // 请求的地址 - String ip = ServletUtils.getClientIP(); - operLog.setOperIp(ip); - operLog.setOperUrl(StringUtils.substring(ServletUtils.getRequest().getRequestURI(), 0, 255)); - LoginUser loginUser = LoginHelper.getLoginUser(); - operLog.setOperName(loginUser.getUsername()); - operLog.setDeptName(loginUser.getDeptName()); - if (e != null) { operLog.setStatus(BusinessStatus.FAIL.ordinal()); operLog.setErrorMsg(StringUtils.substring(e.getMessage(), 0, 2000)); @@ -106,8 +94,6 @@ public class LogAspect { String className = joinPoint.getTarget().getClass().getName(); String methodName = joinPoint.getSignature().getName(); operLog.setMethod(className + "." + methodName + "()"); - // 设置请求方式 - operLog.setRequestMethod(ServletUtils.getRequest().getMethod()); // 处理设置注解上的参数 getControllerMethodDescription(joinPoint, controllerLog, operLog, jsonResult); // 设置消耗时间 diff --git a/ruoyi-common/ruoyi-common-log/src/main/java/org/dromara/common/log/event/LogininforEvent.java b/ruoyi-common/ruoyi-common-log/src/main/java/org/dromara/common/log/event/LogininforEvent.java index 938eaadde..212bf18b5 100644 --- a/ruoyi-common/ruoyi-common-log/src/main/java/org/dromara/common/log/event/LogininforEvent.java +++ b/ruoyi-common/ruoyi-common-log/src/main/java/org/dromara/common/log/event/LogininforEvent.java @@ -2,8 +2,6 @@ package org.dromara.common.log.event; import lombok.Data; -import jakarta.servlet.http.HttpServletRequest; - import java.io.Serial; import java.io.Serializable; @@ -39,11 +37,6 @@ public class LogininforEvent implements Serializable { */ private String message; - /** - * 请求体 - */ - private HttpServletRequest request; - /** * 其他参数 */ diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysLogininforServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysLogininforServiceImpl.java index b95baf44b..dfd490ae9 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysLogininforServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysLogininforServiceImpl.java @@ -55,7 +55,7 @@ public class SysLogininforServiceImpl implements ISysLogininforService { @Async @EventListener public void recordLogininfor(LogininforEvent logininforEvent) { - HttpServletRequest request = logininforEvent.getRequest(); + HttpServletRequest request = ServletUtils.getRequest(); final UserAgent userAgent = UserAgentUtil.parse(request.getHeader("User-Agent")); final String ip = ServletUtils.getClientIP(request); // 客户端信息 diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOperLogServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOperLogServiceImpl.java index b78b9dcc8..45f263839 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOperLogServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOperLogServiceImpl.java @@ -3,18 +3,23 @@ package org.dromara.system.service.impl; import cn.hutool.core.util.ArrayUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import jakarta.servlet.http.HttpServletRequest; +import lombok.RequiredArgsConstructor; +import org.dromara.common.core.domain.model.LoginUser; import org.dromara.common.core.utils.MapstructUtils; -import org.dromara.common.mybatis.core.page.PageQuery; -import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.dromara.common.core.utils.ServletUtils; import org.dromara.common.core.utils.StringUtils; import org.dromara.common.core.utils.ip.AddressUtils; +import org.dromara.common.log.enums.BusinessStatus; import org.dromara.common.log.event.OperLogEvent; +import org.dromara.common.mybatis.core.page.PageQuery; +import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.dromara.common.satoken.utils.LoginHelper; import org.dromara.system.domain.SysOperLog; import org.dromara.system.domain.bo.SysOperLogBo; import org.dromara.system.domain.vo.SysOperLogVo; import org.dromara.system.mapper.SysOperLogMapper; import org.dromara.system.service.ISysOperLogService; -import lombok.RequiredArgsConstructor; import org.springframework.context.event.EventListener; import org.springframework.scheduling.annotation.Async; import org.springframework.stereotype.Service; @@ -44,6 +49,18 @@ public class SysOperLogServiceImpl implements ISysOperLogService { @EventListener public void recordOper(OperLogEvent operLogEvent) { SysOperLogBo operLog = MapstructUtils.convert(operLogEvent, SysOperLogBo.class); + operLog.setTenantId(LoginHelper.getTenantId()); + operLog.setStatus(BusinessStatus.SUCCESS.ordinal()); + // 请求的地址 + String ip = ServletUtils.getClientIP(); + operLog.setOperIp(ip); + HttpServletRequest request = ServletUtils.getRequest(); + operLog.setOperUrl(StringUtils.substring(request.getRequestURI(), 0, 255)); + LoginUser loginUser = LoginHelper.getLoginUser(); + operLog.setOperName(loginUser.getUsername()); + operLog.setDeptName(loginUser.getDeptName()); + // 设置请求方式 + operLog.setRequestMethod(request.getMethod()); // 远程查询操作地点 operLog.setOperLocation(AddressUtils.getRealAddressByIP(operLog.getOperIp())); insertOperlog(operLog); -- Gitee From 0ad52b18b8902d98856db2a3cb293505303202dd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 15 Aug 2024 14:09:20 +0800 Subject: [PATCH 124/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E4=BB=A3?= =?UTF-8?q?=E7=A0=81=E7=94=9F=E6=88=90=E5=99=A8=20=E8=87=AA=E5=8A=A8?= =?UTF-8?q?=E9=80=82=E9=85=8Doss=E7=BF=BB=E8=AF=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/org/dromara/generator/util/VelocityUtils.java | 3 +++ .../ruoyi-generator/src/main/resources/vm/java/vo.java.vm | 7 +++++++ .../ruoyi-generator/src/main/resources/vm/ts/types.ts.vm | 6 ++++++ .../ruoyi-generator/src/main/resources/vm/vue/index.vue.vm | 4 ++-- 4 files changed, 18 insertions(+), 2 deletions(-) diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/util/VelocityUtils.java b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/util/VelocityUtils.java index f5db391b8..6e111e3a8 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/util/VelocityUtils.java +++ b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/util/VelocityUtils.java @@ -215,6 +215,9 @@ public class VelocityUtils { importList.add("com.fasterxml.jackson.annotation.JsonFormat"); } else if (!column.isSuperColumn() && GenConstants.TYPE_BIGDECIMAL.equals(column.getJavaType())) { importList.add("java.math.BigDecimal"); + } else if (!column.isSuperColumn() && "imageUpload".equals(column.getHtmlType())) { + importList.add("org.dromara.common.translation.annotation.Translation"); + importList.add("org.dromara.common.translation.constant.TransConstant"); } } return importList; diff --git a/ruoyi-modules/ruoyi-generator/src/main/resources/vm/java/vo.java.vm b/ruoyi-modules/ruoyi-generator/src/main/resources/vm/java/vo.java.vm index f99a2ed9a..c896afbe8 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/resources/vm/java/vo.java.vm +++ b/ruoyi-modules/ruoyi-generator/src/main/resources/vm/java/vo.java.vm @@ -53,6 +53,13 @@ public class ${ClassName}Vo implements Serializable { #end private $column.javaType $column.javaField; +#if($column.htmlType == "imageUpload") + /** + * ${column.columnComment}Url + */ + @Translation(type = TransConstant.OSS_ID_TO_URL, mapper = "${column.javaField}") + private String ${column.javaField}Url"; +#end #end #end diff --git a/ruoyi-modules/ruoyi-generator/src/main/resources/vm/ts/types.ts.vm b/ruoyi-modules/ruoyi-generator/src/main/resources/vm/ts/types.ts.vm index c3f6ed1f8..35a468e80 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/resources/vm/ts/types.ts.vm +++ b/ruoyi-modules/ruoyi-generator/src/main/resources/vm/ts/types.ts.vm @@ -9,6 +9,12 @@ export interface ${BusinessName}VO { #elseif($column.javaType == 'Boolean') boolean; #else string; #end +#if($column.htmlType == "imageUpload") + /** + * ${column.columnComment}Url + */ + ${column.javaField}Url: string; +#end #end #end #if ($table.tree) diff --git a/ruoyi-modules/ruoyi-generator/src/main/resources/vm/vue/index.vue.vm b/ruoyi-modules/ruoyi-generator/src/main/resources/vm/vue/index.vue.vm index 886f4ab71..a92d19adc 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/resources/vm/vue/index.vue.vm +++ b/ruoyi-modules/ruoyi-generator/src/main/resources/vm/vue/index.vue.vm @@ -101,9 +101,9 @@ #elseif($column.list && $column.htmlType == "imageUpload") - + #elseif($column.list && $column.dictType && "" != $column.dictType) -- Gitee From 5bdffdb36828822b6090a559b5b47b45d559f0d8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 15 Aug 2024 14:10:14 +0800 Subject: [PATCH 125/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E4=BB=A3?= =?UTF-8?q?=E7=A0=81=E7=94=9F=E6=88=90=E5=99=A8=20=E8=87=AA=E5=8A=A8?= =?UTF-8?q?=E9=80=82=E9=85=8Doss=E7=BF=BB=E8=AF=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/resources/vm/vue/index-tree.vue.vm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ruoyi-modules/ruoyi-generator/src/main/resources/vm/vue/index-tree.vue.vm b/ruoyi-modules/ruoyi-generator/src/main/resources/vm/vue/index-tree.vue.vm index d13ef2f27..caf3472e1 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/resources/vm/vue/index-tree.vue.vm +++ b/ruoyi-modules/ruoyi-generator/src/main/resources/vm/vue/index-tree.vue.vm @@ -99,9 +99,9 @@ #elseif($column.list && $column.htmlType == "imageUpload") - + #elseif($column.list && $column.dictType && "" != $column.dictType) -- Gitee From e6847605cc90aa0ff35938509c260b62ab7e8c42 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 15 Aug 2024 17:43:57 +0800 Subject: [PATCH 126/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E5=88=A0?= =?UTF-8?q?=E9=99=A4=E6=97=A0=E7=94=A8=E6=B3=A8=E9=87=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/dromara/common/mybatis/enums/DataScopeType.java | 8 -------- 1 file changed, 8 deletions(-) diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/enums/DataScopeType.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/enums/DataScopeType.java index 455cecb2e..9bb5a0dc7 100644 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/enums/DataScopeType.java +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/enums/DataScopeType.java @@ -32,29 +32,21 @@ public enum DataScopeType { /** * 自定数据权限 - * 使用 SpEL 表达式:`#{#deptName} IN ( #{@sdss.getRoleCustom( #user.roleId )} )` - * 如果不满足条件,则使用默认 SQL 表达式:`1 = 0` */ CUSTOM("2", " #{#deptName} IN ( #{@sdss.getRoleCustom( #user.roleId )} ) ", " 1 = 0 "), /** * 部门数据权限 - * 使用 SpEL 表达式:`#{#deptName} = #{#user.deptId}` - * 如果不满足条件,则使用默认 SQL 表达式:`1 = 0` */ DEPT("3", " #{#deptName} = #{#user.deptId} ", " 1 = 0 "), /** * 部门及以下数据权限 - * 使用 SpEL 表达式:`#{#deptName} IN ( #{@sdss.getDeptAndChild( #user.deptId )}` - * 如果不满足条件,则使用默认 SQL 表达式:`1 = 0` */ DEPT_AND_CHILD("4", " #{#deptName} IN ( #{@sdss.getDeptAndChild( #user.deptId )} )", " 1 = 0 "), /** * 仅本人数据权限 - * 使用 SpEL 表达式:`#{#userName} = #{#user.userId}` - * 如果不满足条件,则使用默认 SQL 表达式:`1 = 0` */ SELF("5", " #{#userName} = #{#user.userId} ", " 1 = 0 "); -- Gitee From eda882433aacd5e778a8f1713cd9dd890d59b2b7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 15 Aug 2024 17:45:06 +0800 Subject: [PATCH 127/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E5=88=A0?= =?UTF-8?q?=E9=99=A4=E6=8A=A5=E8=AD=A6=E6=B3=A8=E9=87=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/org/dromara/common/mybatis/enums/DataScopeType.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/enums/DataScopeType.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/enums/DataScopeType.java index 9bb5a0dc7..981bd421b 100644 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/enums/DataScopeType.java +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/enums/DataScopeType.java @@ -13,9 +13,9 @@ import org.dromara.common.mybatis.helper.DataPermissionHelper; * 内置数据: * - {@code user}: 当前登录用户信息,参考 {@link LoginUser} * 内置服务: - * - {@code sdss}: 系统数据权限服务,参考 {@link ISysDataScopeService} + * - {@code sdss}: 系统数据权限服务,参考 ISysDataScopeService * 如需扩展数据,可以通过 {@link DataPermissionHelper} 进行操作 - * 如需扩展服务,可以通过 {@link ISysDataScopeService} 自行编写 + * 如需扩展服务,可以通过 ISysDataScopeService 自行编写 *

* * @author Lion Li -- Gitee From 0e1fcbfe9c8e148dbe63ffea1bfe9836abc6d7fd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 15 Aug 2024 18:52:01 +0800 Subject: [PATCH 128/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E7=94=A8?= =?UTF-8?q?=E6=88=B7=E8=84=B1=E6=95=8F=E5=A2=9E=E5=8A=A0=E7=BC=96=E8=BE=91?= =?UTF-8?q?=E6=9D=83=E9=99=90=E6=A0=87=E8=AF=86=E7=AC=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/org/dromara/system/domain/vo/SysUserVo.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysUserVo.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysUserVo.java index d1f405919..86249d20e 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysUserVo.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysUserVo.java @@ -61,13 +61,13 @@ public class SysUserVo implements Serializable { /** * 用户邮箱 */ - @Sensitive(strategy = SensitiveStrategy.EMAIL) + @Sensitive(strategy = SensitiveStrategy.EMAIL, perms = "system:user:edit") private String email; /** * 手机号码 */ - @Sensitive(strategy = SensitiveStrategy.PHONE) + @Sensitive(strategy = SensitiveStrategy.PHONE, perms = "system:user:edit") private String phonenumber; /** -- Gitee From 19c83f02aa1c8ff82f38c45cef2248a908b2e5b4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 15 Aug 2024 19:14:51 +0800 Subject: [PATCH 129/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E8=A7=92?= =?UTF-8?q?=E8=89=B2=E7=BC=96=E8=BE=91=E7=8A=B6=E6=80=81=E6=9C=AA=E6=A0=A1?= =?UTF-8?q?=E9=AA=8C=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/dromara/system/service/impl/SysRoleServiceImpl.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysRoleServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysRoleServiceImpl.java index 31f949836..9b8b0ecbe 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysRoleServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysRoleServiceImpl.java @@ -293,6 +293,10 @@ public class SysRoleServiceImpl implements ISysRoleService { @Transactional(rollbackFor = Exception.class) public int updateRole(SysRoleBo bo) { SysRole role = MapstructUtils.convert(bo, SysRole.class); + + if (UserConstants.ROLE_DISABLE.equals(role.getStatus()) && this.countUserRoleByRoleId(role.getRoleId()) > 0) { + throw new ServiceException("角色已分配,不能禁用!"); + } // 修改角色信息 baseMapper.updateById(role); // 删除角色与菜单关联 -- Gitee From bb4587fe05d30932d202474ab4b4151bc815dc23 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 15 Aug 2024 19:29:04 +0800 Subject: [PATCH 130/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E9=83=A8?= =?UTF-8?q?=E9=97=A8=E4=B8=8B=E5=AD=98=E5=9C=A8=E5=B2=97=E4=BD=8D=E4=B8=8D?= =?UTF-8?q?=E5=85=81=E8=AE=B8=E5=88=A0=E9=99=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../system/controller/system/SysDeptController.java | 5 +++++ .../org/dromara/system/service/ISysPostService.java | 8 ++++++++ .../system/service/impl/SysPostServiceImpl.java | 11 +++++++++++ 3 files changed, 24 insertions(+) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysDeptController.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysDeptController.java index 4f5f23f32..968bbe906 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysDeptController.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysDeptController.java @@ -12,6 +12,7 @@ import org.dromara.common.web.core.BaseController; import org.dromara.system.domain.bo.SysDeptBo; import org.dromara.system.domain.vo.SysDeptVo; import org.dromara.system.service.ISysDeptService; +import org.dromara.system.service.ISysPostService; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; @@ -29,6 +30,7 @@ import java.util.List; public class SysDeptController extends BaseController { private final ISysDeptService deptService; + private final ISysPostService postService; /** * 获取部门列表 @@ -117,6 +119,9 @@ public class SysDeptController extends BaseController { if (deptService.checkDeptExistUser(deptId)) { return R.warn("部门存在用户,不允许删除"); } + if (postService.countPostByDeptId(deptId) > 0) { + return R.warn("部门存在岗位,不允许删除"); + } deptService.checkDeptDataScope(deptId); return toAjax(deptService.deleteDeptById(deptId)); } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysPostService.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysPostService.java index c43f0395c..3751b23be 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysPostService.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysPostService.java @@ -80,6 +80,14 @@ public interface ISysPostService { */ long countUserPostById(Long postId); + /** + * 通过部门ID查询岗位使用数量 + * + * @param deptId 部门id + * @return 结果 + */ + long countPostByDeptId(Long deptId); + /** * 删除岗位信息 * diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysPostServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysPostServiceImpl.java index b8a7e607a..2c38129ac 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysPostServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysPostServiceImpl.java @@ -177,6 +177,17 @@ public class SysPostServiceImpl implements ISysPostService { return userPostMapper.selectCount(new LambdaQueryWrapper().eq(SysUserPost::getPostId, postId)); } + /** + * 通过部门ID查询岗位使用数量 + * + * @param deptId 部门id + * @return 结果 + */ + @Override + public long countPostByDeptId(Long deptId) { + return baseMapper.selectCount(new LambdaQueryWrapper().eq(SysPost::getDeptId, deptId)); + } + /** * 删除岗位信息 * -- Gitee From 96d57bd263db21e0e1d34bd1611d66ce51004adf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 15 Aug 2024 19:34:02 +0800 Subject: [PATCH 131/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E7=A7=9F?= =?UTF-8?q?=E6=88=B7=E5=A5=97=E9=A4=90=E9=87=8D=E5=90=8D=E6=A0=A1=E9=AA=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../system/SysTenantPackageController.java | 6 ++++++ .../system/service/ISysTenantPackageService.java | 11 ++++++++--- .../service/impl/SysTenantPackageServiceImpl.java | 12 ++++++++++++ 3 files changed, 26 insertions(+), 3 deletions(-) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysTenantPackageController.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysTenantPackageController.java index 7d99916d0..acaf5f83c 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysTenantPackageController.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysTenantPackageController.java @@ -92,6 +92,9 @@ public class SysTenantPackageController extends BaseController { @RepeatSubmit() @PostMapping() public R add(@Validated(AddGroup.class) @RequestBody SysTenantPackageBo bo) { + if (!tenantPackageService.checkPackageNameUnique(bo)) { + return R.fail("新增套餐'" + bo.getPackageName() + "'失败,套餐名称已存在"); + } return toAjax(tenantPackageService.insertByBo(bo)); } @@ -104,6 +107,9 @@ public class SysTenantPackageController extends BaseController { @RepeatSubmit() @PutMapping() public R edit(@Validated(EditGroup.class) @RequestBody SysTenantPackageBo bo) { + if (!tenantPackageService.checkPackageNameUnique(bo)) { + return R.fail("修改套餐'" + bo.getPackageName() + "'失败,套餐名称已存在"); + } return toAjax(tenantPackageService.updateByBo(bo)); } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysTenantPackageService.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysTenantPackageService.java index cdb887ca6..d060b68cd 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysTenantPackageService.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysTenantPackageService.java @@ -1,9 +1,9 @@ package org.dromara.system.service; -import org.dromara.system.domain.vo.SysTenantPackageVo; -import org.dromara.system.domain.bo.SysTenantPackageBo; -import org.dromara.common.mybatis.core.page.TableDataInfo; import org.dromara.common.mybatis.core.page.PageQuery; +import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.dromara.system.domain.bo.SysTenantPackageBo; +import org.dromara.system.domain.vo.SysTenantPackageVo; import java.util.Collection; import java.util.List; @@ -45,6 +45,11 @@ public interface ISysTenantPackageService { */ Boolean updateByBo(SysTenantPackageBo bo); + /** + * 校验套餐名称是否唯一 + */ + boolean checkPackageNameUnique(SysTenantPackageBo bo); + /** * 修改套餐状态 */ diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantPackageServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantPackageServiceImpl.java index 5fd04af8e..d2a72f611 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantPackageServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantPackageServiceImpl.java @@ -1,6 +1,7 @@ package org.dromara.system.service.impl; import cn.hutool.core.collection.CollUtil; +import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; @@ -116,6 +117,17 @@ public class SysTenantPackageServiceImpl implements ISysTenantPackageService { return baseMapper.updateById(update) > 0; } + /** + * 校验套餐名称是否唯一 + */ + @Override + public boolean checkPackageNameUnique(SysTenantPackageBo bo) { + boolean exist = baseMapper.exists(new LambdaQueryWrapper() + .eq(SysTenantPackage::getPackageName, bo.getPackageName()) + .ne(ObjectUtil.isNotNull(bo.getPackageId()), SysTenantPackage::getPackageId, bo.getPackageId())); + return !exist; + } + /** * 修改套餐状态 * -- Gitee From 4de45ce1709ff2a5c033621edd8e0e397558cd1c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 15 Aug 2024 19:52:03 +0800 Subject: [PATCH 132/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E5=85=BC?= =?UTF-8?q?=E5=AE=B9=E9=83=A8=E5=88=86=E7=94=A8=E6=88=B7=E4=B8=8D=E6=83=B3?= =?UTF-8?q?=E7=BB=99=E7=94=A8=E6=88=B7=E5=88=86=E9=85=8D=E8=A7=92=E8=89=B2?= =?UTF-8?q?=E4=B8=8E=E9=83=A8=E9=97=A8=E7=9A=84=E5=9C=BA=E6=99=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/dromara/web/service/SysLoginService.java | 13 +++++++++---- .../service/impl/SysDataScopeServiceImpl.java | 11 +++++++++-- 2 files changed, 18 insertions(+), 6 deletions(-) diff --git a/ruoyi-admin/src/main/java/org/dromara/web/service/SysLoginService.java b/ruoyi-admin/src/main/java/org/dromara/web/service/SysLoginService.java index 3ee67630b..9345c92fd 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/service/SysLoginService.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/service/SysLoginService.java @@ -19,7 +19,10 @@ import org.dromara.common.core.enums.LoginType; import org.dromara.common.core.enums.TenantStatus; import org.dromara.common.core.exception.ServiceException; import org.dromara.common.core.exception.user.UserException; -import org.dromara.common.core.utils.*; +import org.dromara.common.core.utils.DateUtils; +import org.dromara.common.core.utils.MessageUtils; +import org.dromara.common.core.utils.SpringUtils; +import org.dromara.common.core.utils.StringUtils; import org.dromara.common.log.event.LogininforEvent; import org.dromara.common.mybatis.helper.DataPermissionHelper; import org.dromara.common.redis.utils.RedisUtils; @@ -155,9 +158,11 @@ public class SysLoginService { loginUser.setUserType(user.getUserType()); loginUser.setMenuPermission(permissionService.getMenuPermission(user.getUserId())); loginUser.setRolePermission(permissionService.getRolePermission(user.getUserId())); - Opt deptOpt = Opt.of(user.getDeptId()).map(deptService::selectDeptById); - loginUser.setDeptName(deptOpt.map(SysDeptVo::getDeptName).orElse(StringUtils.EMPTY)); - loginUser.setDeptCategory(deptOpt.map(SysDeptVo::getDeptCategory).orElse(StringUtils.EMPTY)); + if (ObjectUtil.isNotNull(user.getDeptId())) { + Opt deptOpt = Opt.of(user.getDeptId()).map(deptService::selectDeptById); + loginUser.setDeptName(deptOpt.map(SysDeptVo::getDeptName).orElse(StringUtils.EMPTY)); + loginUser.setDeptCategory(deptOpt.map(SysDeptVo::getDeptCategory).orElse(StringUtils.EMPTY)); + } List roles = roleService.selectRolesByUserId(user.getUserId()); loginUser.setRoles(BeanUtil.copyToList(roles, RoleDTO.class)); return loginUser; diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDataScopeServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDataScopeServiceImpl.java index a31c42635..018f9a07a 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDataScopeServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDataScopeServiceImpl.java @@ -2,6 +2,7 @@ package org.dromara.system.service.impl; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.convert.Convert; +import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import lombok.RequiredArgsConstructor; import org.dromara.common.core.utils.StreamUtils; @@ -38,6 +39,9 @@ public class SysDataScopeServiceImpl implements ISysDataScopeService { */ @Override public String getRoleCustom(Long roleId) { + if (ObjectUtil.isNull(roleId)) { + return "-1"; + } List list = roleDeptMapper.selectList( new LambdaQueryWrapper() .select(SysRoleDept::getDeptId) @@ -45,7 +49,7 @@ public class SysDataScopeServiceImpl implements ISysDataScopeService { if (CollUtil.isNotEmpty(list)) { return StreamUtils.join(list, rd -> Convert.toStr(rd.getDeptId())); } - return null; + return "-1"; } /** @@ -56,6 +60,9 @@ public class SysDataScopeServiceImpl implements ISysDataScopeService { */ @Override public String getDeptAndChild(Long deptId) { + if (ObjectUtil.isNull(deptId)) { + return "-1"; + } List deptList = deptMapper.selectList(new LambdaQueryWrapper() .select(SysDept::getDeptId) .apply(DataBaseHelper.findInSet(deptId, "ancestors"))); @@ -64,7 +71,7 @@ public class SysDataScopeServiceImpl implements ISysDataScopeService { if (CollUtil.isNotEmpty(ids)) { return StreamUtils.join(ids, Convert::toStr); } - return null; + return "-1"; } } -- Gitee From facbb7f28fb613b84ce1529c0bf63f1b77e576e5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 15 Aug 2024 20:28:52 +0800 Subject: [PATCH 133/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E4=B8=AA?= =?UTF-8?q?=E4=BA=BA=E4=B8=AD=E5=BF=83=E7=BC=96=E8=BE=91=20=E5=BF=BD?= =?UTF-8?q?=E7=95=A5=E6=95=B0=E6=8D=AE=E6=9D=83=E9=99=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../system/controller/system/SysProfileController.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysProfileController.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysProfileController.java index 559e1d59b..893b381e3 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysProfileController.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysProfileController.java @@ -11,6 +11,7 @@ import org.dromara.common.encrypt.annotation.ApiEncrypt; import org.dromara.common.idempotent.annotation.RepeatSubmit; import org.dromara.common.log.annotation.Log; import org.dromara.common.log.enums.BusinessType; +import org.dromara.common.mybatis.helper.DataPermissionHelper; import org.dromara.common.satoken.utils.LoginHelper; import org.dromara.common.web.core.BaseController; import org.dromara.system.domain.bo.SysUserBo; @@ -72,7 +73,8 @@ public class SysProfileController extends BaseController { if (StringUtils.isNotEmpty(user.getEmail()) && !userService.checkEmailUnique(user)) { return R.fail("修改用户'" + username + "'失败,邮箱账号已存在"); } - if (userService.updateUserProfile(user) > 0) { + int rows = DataPermissionHelper.ignore(() -> userService.updateUserProfile(user)); + if (rows > 0) { return R.ok(); } return R.fail("修改个人信息异常,请联系管理员"); -- Gitee From bc05d5c8212a877ef8068bc42ce11e313b70a004 Mon Sep 17 00:00:00 2001 From: hfdy2019 <5463852+hfdy2019@user.noreply.gitee.com> Date: Fri, 16 Aug 2024 07:22:19 +0800 Subject: [PATCH 134/540] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E8=8B=A5?= =?UTF-8?q?=E5=B9=B2=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: hfdy2019 <5463852+hfdy2019@user.noreply.gitee.com> --- .../AbstractPlusSpringCacheManager.java | 209 ------------------ ruoyi-common/ruoyi-common-tenant/pom.xml | 5 + .../manager/TenantCaffeineCacheDecorator.java | 34 --- .../manager/TenantSpringCacheManager.java | 5 +- .../service/impl/SysDictTypeServiceImpl.java | 9 +- .../service/impl/SysPostServiceImpl.java | 12 +- .../impl/SysTenantPackageServiceImpl.java | 7 +- 7 files changed, 18 insertions(+), 263 deletions(-) delete mode 100644 ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/manager/AbstractPlusSpringCacheManager.java delete mode 100644 ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/manager/TenantCaffeineCacheDecorator.java diff --git a/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/manager/AbstractPlusSpringCacheManager.java b/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/manager/AbstractPlusSpringCacheManager.java deleted file mode 100644 index b40731e41..000000000 --- a/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/manager/AbstractPlusSpringCacheManager.java +++ /dev/null @@ -1,209 +0,0 @@ -/** - * Copyright (c) 2013-2021 Nikita Koksharov - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.dromara.common.redis.manager; - -import org.dromara.common.redis.utils.RedisUtils; -import org.redisson.api.RMap; -import org.redisson.api.RMapCache; -import org.redisson.spring.cache.CacheConfig; -import org.redisson.spring.cache.RedissonCache; -import org.springframework.boot.convert.DurationStyle; -import org.springframework.cache.Cache; -import org.springframework.cache.CacheManager; -import org.springframework.cache.transaction.TransactionAwareCacheDecorator; -import org.springframework.util.StringUtils; - -import java.util.Collection; -import java.util.Collections; -import java.util.Map; -import java.util.concurrent.ConcurrentHashMap; -import java.util.concurrent.ConcurrentMap; - -/** - * A {@link CacheManager} implementation - * backed by Redisson instance. - *

- * 修改 RedissonSpringCacheManager 源码 - * 重写 cacheName 处理方法 支持多参数 - * - * @author Nikita Koksharov - * - */ -@SuppressWarnings("unchecked") -public abstract class AbstractPlusSpringCacheManager implements CacheManager { - - private boolean dynamic = true; - - private boolean allowNullValues = true; - - private boolean transactionAware = true; - - Map configMap = new ConcurrentHashMap<>(); - ConcurrentMap instanceMap = new ConcurrentHashMap<>(); - - /** - * Creates CacheManager supplied by Redisson instance - */ - public AbstractPlusSpringCacheManager() { - } - - - /** - * Defines possibility of storing {@code null} values. - *

- * Default is true - * - * @param allowNullValues stores if true - */ - public void setAllowNullValues(boolean allowNullValues) { - this.allowNullValues = allowNullValues; - } - - /** - * Defines if cache aware of Spring-managed transactions. - * If {@code true} put/evict operations are executed only for successful transaction in after-commit phase. - *

- * Default is false - * - * @param transactionAware cache is transaction aware if true - */ - public void setTransactionAware(boolean transactionAware) { - this.transactionAware = transactionAware; - } - - /** - * Defines 'fixed' cache names. - * A new cache instance will not be created in dynamic for non-defined names. - *

- * `null` parameter setups dynamic mode - * - * @param names of caches - */ - public void setCacheNames(Collection names) { - if (names != null) { - for (String name : names) { - getCache(name); - } - dynamic = false; - } else { - dynamic = true; - } - } - - /** - * Set cache config mapped by cache name - * - * @param config object - */ - public void setConfig(Map config) { - this.configMap = (Map) config; - } - - protected CacheConfig createDefaultConfig() { - return new CacheConfig(); - } - - @Override - public Cache getCache(String name) { - name = getCacheNameWrapper(name); - - // 重写 cacheName 支持多参数 - String[] array = StringUtils.delimitedListToStringArray(name, "#"); - name = array[0]; - - Cache cache = instanceMap.get(name); - if (cache != null) { - return cache; - } - if (!dynamic) { - return cache; - } - - CacheConfig config = configMap.get(name); - if (config == null) { - config = createDefaultConfig(); - configMap.put(name, config); - } - - if (array.length > 1) { - config.setTTL(DurationStyle.detectAndParse(array[1]).toMillis()); - } - if (array.length > 2) { - config.setMaxIdleTime(DurationStyle.detectAndParse(array[2]).toMillis()); - } - if (array.length > 3) { - config.setMaxSize(Integer.parseInt(array[3])); - } - - if (config.getMaxIdleTime() == 0 && config.getTTL() == 0 && config.getMaxSize() == 0) { - return createMap(name, config); - } - - return createMapCache(name, config); - } - - private Cache createMap(String name, CacheConfig config) { - RMap map = RedisUtils.getClient().getMap(name); - - Cache cache = getCaffeineCacheDecorator(new RedissonCache(map, allowNullValues)); - if (transactionAware) { - cache = new TransactionAwareCacheDecorator(cache); - } - Cache oldCache = instanceMap.putIfAbsent(name, cache); - if (oldCache != null) { - cache = oldCache; - } - return cache; - } - - private Cache createMapCache(String name, CacheConfig config) { - RMapCache map = RedisUtils.getClient().getMapCache(name); - - Cache cache = getCaffeineCacheDecorator(new RedissonCache(map, config, allowNullValues)); - if (transactionAware) { - cache = new TransactionAwareCacheDecorator(cache); - } - Cache oldCache = instanceMap.putIfAbsent(name, cache); - if (oldCache != null) { - cache = oldCache; - } else { - map.setMaxSize(config.getMaxSize()); - } - return cache; - } - - @Override - public Collection getCacheNames() { - return Collections.unmodifiableSet(configMap.keySet()); - } - - - /** - * 获取缓存名称包装 - * - * @param cacheName 缓存名称 - * @return {@link String } - */ - public abstract String getCacheNameWrapper(String cacheName); - - /** - * 获取Caffeine缓存装饰器 - * - * @param cache 缓存 - * @return {@link Cache } - */ - public abstract Cache getCaffeineCacheDecorator(Cache cache); -} diff --git a/ruoyi-common/ruoyi-common-tenant/pom.xml b/ruoyi-common/ruoyi-common-tenant/pom.xml index 8e1a6ab1e..4bbb8c2d0 100644 --- a/ruoyi-common/ruoyi-common-tenant/pom.xml +++ b/ruoyi-common/ruoyi-common-tenant/pom.xml @@ -27,6 +27,11 @@ ruoyi-common-redis + + org.dromara + ruoyi-common-satoken + + diff --git a/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/manager/TenantCaffeineCacheDecorator.java b/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/manager/TenantCaffeineCacheDecorator.java deleted file mode 100644 index 9898c876d..000000000 --- a/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/manager/TenantCaffeineCacheDecorator.java +++ /dev/null @@ -1,34 +0,0 @@ -package org.dromara.common.tenant.manager; - -import cn.hutool.core.text.StrPool; -import org.dromara.common.core.constant.GlobalConstants; -import org.dromara.common.core.utils.StringUtils; -import org.dromara.common.redis.manager.CaffeineCacheDecorator; -import org.dromara.common.tenant.helper.TenantHelper; -import org.springframework.cache.Cache; - -/** - * 重写 CaffeineCacheDecorator Name处理方法 支持多租户 - * - * @author Supreme - * @since 2024/07/25 - */ -public class TenantCaffeineCacheDecorator extends CaffeineCacheDecorator { - public TenantCaffeineCacheDecorator(Cache cache) { - super(cache); - } - - @Override - public String getName() { - String cacheName = super.getName(); - if (StringUtils.contains(cacheName, GlobalConstants.GLOBAL_REDIS_KEY)) { - return cacheName; - } - String tenantId = TenantHelper.getTenantId(); - if (StringUtils.startsWith(cacheName, tenantId)) { - // 如果存在则直接返回 - return cacheName; - } - return tenantId + StrPool.COLON + cacheName; - } -} diff --git a/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/manager/TenantSpringCacheManager.java b/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/manager/TenantSpringCacheManager.java index 346e36f1c..d9da0f6cb 100644 --- a/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/manager/TenantSpringCacheManager.java +++ b/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/manager/TenantSpringCacheManager.java @@ -1,6 +1,5 @@ package org.dromara.common.tenant.manager; -import com.baomidou.mybatisplus.core.plugins.InterceptorIgnoreHelper; import lombok.extern.slf4j.Slf4j; import org.dromara.common.core.constant.GlobalConstants; import org.dromara.common.core.utils.StringUtils; @@ -21,9 +20,7 @@ public class TenantSpringCacheManager extends PlusSpringCacheManager { @Override public Cache getCache(String name) { - if (InterceptorIgnoreHelper.willIgnoreTenantLine("")) { - return super.getCache(name); - } + // todo 忽略租户情况 if (StringUtils.contains(name, GlobalConstants.GLOBAL_REDIS_KEY)) { return super.getCache(name); } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDictTypeServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDictTypeServiceImpl.java index 014fc818c..5da39476f 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDictTypeServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDictTypeServiceImpl.java @@ -36,6 +36,8 @@ import java.util.List; import java.util.Map; import java.util.stream.Collectors; +import static org.dromara.system.domain.table.SysDictDataTableDef.SYS_DICT_DATA; +import static org.dromara.system.domain.table.SysDictTypeTableDef.SYS_DICT_TYPE; import static org.dromara.system.domain.table.SysDictTypeTableDef.SYS_DICT_TYPE; /** @@ -135,7 +137,7 @@ public class SysDictTypeServiceImpl implements ISysDictTypeService, DictService public void deleteDictTypeByIds(Long[] dictIds) { for (Long dictId : dictIds) { SysDictType dictType = baseMapper.selectOneById(dictId); - if (dictDataMapper.selectCountByQuery(QueryWrapper.create().from(SYS_DICT_TYPE).where(SYS_DICT_TYPE.DICT_TYPE.eq(dictType.getDictType()))) > 0) { + if (dictDataMapper.selectCountByQuery(QueryWrapper.create().from(SYS_DICT_DATA).where(SYS_DICT_DATA.DICT_TYPE.eq(dictType.getDictType()))) > 0) { throw new ServiceException(String.format("%1$s已分配,不能删除", dictType.getDictName())); } CacheUtils.evict(CacheNames.SYS_DICT, dictType.getDictType()); @@ -201,10 +203,9 @@ public class SysDictTypeServiceImpl implements ISysDictTypeService, DictService */ @Override public boolean checkDictTypeUnique(SysDictTypeBo dictType) { - boolean exist = baseMapper.selectCountByQuery( + return baseMapper.selectCountByQuery( QueryWrapper.create().from(SYS_DICT_TYPE).where(SYS_DICT_TYPE.DICT_TYPE.eq(dictType.getDictType())) - .and(SYS_DICT_TYPE.DICT_ID.ne(dictType.getDictId()))) > 0; - return !exist; + .and(SYS_DICT_TYPE.DICT_ID.ne(dictType.getDictId()))) == 0; } /** diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysPostServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysPostServiceImpl.java index 37e55ddfa..c88383355 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysPostServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysPostServiceImpl.java @@ -145,10 +145,9 @@ public class SysPostServiceImpl implements ISysPostService { */ @Override public boolean checkPostNameUnique(SysPostBo post) { - boolean exist = baseMapper.selectCountByQuery( + return baseMapper.selectCountByQuery( QueryWrapper.create().from(SYS_POST).where(SYS_POST.POST_NAME.eq(post.getPostName())) - .and(SYS_POST.POST_ID.ne(post.getPostId()))) > 0; - return !exist; + .and(SYS_POST.POST_ID.ne(post.getPostId()))) == 0; } /** @@ -159,10 +158,9 @@ public class SysPostServiceImpl implements ISysPostService { */ @Override public boolean checkPostCodeUnique(SysPostBo post) { - boolean exist = baseMapper.selectCountByQuery( + return baseMapper.selectCountByQuery( QueryWrapper.create().from(SYS_POST).where(SYS_POST.POST_CODE.eq(post.getPostCode())) - .and(SYS_POST.POST_ID.ne(post.getPostId()))) > 0; - return !exist; + .and(SYS_POST.POST_ID.ne(post.getPostId()))) == 0; } /** @@ -184,7 +182,7 @@ public class SysPostServiceImpl implements ISysPostService { */ @Override public long countPostByDeptId(Long deptId) { - return baseMapper.selectCount(new LambdaQueryWrapper().eq(SysPost::getDeptId, deptId)); + return userPostMapper.selectCountByQuery(QueryWrapper.create().from(SYS_POST).where(SYS_POST.DEPT_ID.eq(deptId))); } /** diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantPackageServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantPackageServiceImpl.java index e306629ec..2dcc4e0da 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantPackageServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantPackageServiceImpl.java @@ -124,14 +124,11 @@ public class SysTenantPackageServiceImpl implements ISysTenantPackageService { */ @Override public boolean checkPackageNameUnique(SysTenantPackageBo bo) { - boolean exist = baseMapper.selectCountByQuery(QueryWrapper.create() + return baseMapper.selectCountByQuery(QueryWrapper.create() .from(SYS_TENANT_PACKAGE) .where(SYS_TENANT_PACKAGE.PACKAGE_NAME.eq(bo.getPackageName())) .and(SYS_TENANT_PACKAGE.PACKAGE_ID.ne(bo.getPackageId(), ObjectUtil.isNotNull(bo.getPackageId()))) - ) > 0 - ; - - return !exist; + ) == 0; } /** -- Gitee From 9318f182b0a226d1a55d5989e37f037d1b87c910 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Sat, 17 Aug 2024 10:10:51 +0800 Subject: [PATCH 135/540] =?UTF-8?q?reset=20=E5=9B=9E=E6=BB=9A=20=E4=BF=AE?= =?UTF-8?q?=E6=94=B9spring=E6=BA=90=E7=A0=81=E4=B8=8A=E4=B8=8B=E6=96=87?= =?UTF-8?q?=E6=8C=81=E6=9C=89=E8=80=85(=E5=AD=98=E5=9C=A8=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E6=9C=AA=E6=B8=85=E7=90=86=E5=86=85=E5=AD=98=E6=B3=84?= =?UTF-8?q?=E6=BC=8F=E9=97=AE=E9=A2=98)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../web/listener/UserActionListener.java | 1 + .../dromara/web/service/SysLoginService.java | 6 +- .../web/service/SysRegisterService.java | 2 + ruoyi-common/ruoyi-common-core/pom.xml | 7 - .../context/request/RequestContextHolder.java | 161 ------------------ .../dromara/common/log/aspect/LogAspect.java | 14 ++ .../common/log/event/LogininforEvent.java | 7 + .../impl/SysLogininforServiceImpl.java | 2 +- .../service/impl/SysOperLogServiceImpl.java | 23 +-- 9 files changed, 30 insertions(+), 193 deletions(-) delete mode 100644 ruoyi-common/ruoyi-common-core/src/main/java/org/springframework/web/context/request/RequestContextHolder.java diff --git a/ruoyi-admin/src/main/java/org/dromara/web/listener/UserActionListener.java b/ruoyi-admin/src/main/java/org/dromara/web/listener/UserActionListener.java index a958de62d..07595e092 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/listener/UserActionListener.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/listener/UserActionListener.java @@ -71,6 +71,7 @@ public class UserActionListener implements SaTokenListener { logininforEvent.setUsername(username); logininforEvent.setStatus(Constants.LOGIN_SUCCESS); logininforEvent.setMessage(MessageUtils.message("user.login.success")); + logininforEvent.setRequest(ServletUtils.getRequest()); SpringUtils.context().publishEvent(logininforEvent); // 更新登录信息 loginService.recordLoginInfo((Long) loginModel.getExtra(LoginHelper.USER_KEY), ip); diff --git a/ruoyi-admin/src/main/java/org/dromara/web/service/SysLoginService.java b/ruoyi-admin/src/main/java/org/dromara/web/service/SysLoginService.java index 9345c92fd..c7ad9179c 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/service/SysLoginService.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/service/SysLoginService.java @@ -19,10 +19,7 @@ import org.dromara.common.core.enums.LoginType; import org.dromara.common.core.enums.TenantStatus; import org.dromara.common.core.exception.ServiceException; import org.dromara.common.core.exception.user.UserException; -import org.dromara.common.core.utils.DateUtils; -import org.dromara.common.core.utils.MessageUtils; -import org.dromara.common.core.utils.SpringUtils; -import org.dromara.common.core.utils.StringUtils; +import org.dromara.common.core.utils.*; import org.dromara.common.log.event.LogininforEvent; import org.dromara.common.mybatis.helper.DataPermissionHelper; import org.dromara.common.redis.utils.RedisUtils; @@ -142,6 +139,7 @@ public class SysLoginService { logininforEvent.setUsername(username); logininforEvent.setStatus(status); logininforEvent.setMessage(message); + logininforEvent.setRequest(ServletUtils.getRequest()); SpringUtils.context().publishEvent(logininforEvent); } diff --git a/ruoyi-admin/src/main/java/org/dromara/web/service/SysRegisterService.java b/ruoyi-admin/src/main/java/org/dromara/web/service/SysRegisterService.java index c7545fa65..ddab279bc 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/service/SysRegisterService.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/service/SysRegisterService.java @@ -11,6 +11,7 @@ import org.dromara.common.core.exception.user.CaptchaException; import org.dromara.common.core.exception.user.CaptchaExpireException; import org.dromara.common.core.exception.user.UserException; import org.dromara.common.core.utils.MessageUtils; +import org.dromara.common.core.utils.ServletUtils; import org.dromara.common.core.utils.SpringUtils; import org.dromara.common.core.utils.StringUtils; import org.dromara.common.log.event.LogininforEvent; @@ -107,6 +108,7 @@ public class SysRegisterService { logininforEvent.setUsername(username); logininforEvent.setStatus(status); logininforEvent.setMessage(message); + logininforEvent.setRequest(ServletUtils.getRequest()); SpringUtils.context().publishEvent(logininforEvent); } diff --git a/ruoyi-common/ruoyi-common-core/pom.xml b/ruoyi-common/ruoyi-common-core/pom.xml index f6f8c2556..5925c9b3c 100644 --- a/ruoyi-common/ruoyi-common-core/pom.xml +++ b/ruoyi-common/ruoyi-common-core/pom.xml @@ -99,13 +99,6 @@ transmittable-thread-local - - jakarta.faces - jakarta.faces-api - 4.1.0 - true - - diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/springframework/web/context/request/RequestContextHolder.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/springframework/web/context/request/RequestContextHolder.java deleted file mode 100644 index 7f9622dbc..000000000 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/springframework/web/context/request/RequestContextHolder.java +++ /dev/null @@ -1,161 +0,0 @@ -/* - * Copyright 2002-2023 the original author or authors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * https://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.springframework.web.context.request; - -import com.alibaba.ttl.TransmittableThreadLocal; -import jakarta.faces.context.FacesContext; -import org.springframework.lang.Nullable; -import org.springframework.util.ClassUtils; - -/** - * Holder class to expose the web request in the form of a thread-bound - * {@link RequestAttributes} object. The request will be inherited - * by any child threads spawned by the current thread if the - * {@code inheritable} flag is set to {@code true}. - * - *

Use {@link RequestContextListener} or - * {@link org.springframework.web.filter.RequestContextFilter} to expose - * the current web request. Note that - * already exposes the current request by default. - * - * 修改 spring 上下文存储方式 将 ThreadLocal 替换为 TransmittableThreadLocal - * 支持线程上下文切换变量传递 异步获取 spring 上下文 - * - * @author Juergen Hoeller - * @author Rod Johnson - * @since 2.0 - * @see RequestContextListener - * @see org.springframework.web.filter.RequestContextFilter - */ -public abstract class RequestContextHolder { - - private static final boolean jsfPresent = - ClassUtils.isPresent("jakarta.faces.context.FacesContext", RequestContextHolder.class.getClassLoader()); - - // ThreadLocal 替换为 TransmittableThreadLocal - private static final ThreadLocal requestAttributesHolder = - new TransmittableThreadLocal<>(); - - private static final ThreadLocal inheritableRequestAttributesHolder = - new TransmittableThreadLocal<>(); - - - /** - * Reset the RequestAttributes for the current thread. - */ - public static void resetRequestAttributes() { - requestAttributesHolder.remove(); - inheritableRequestAttributesHolder.remove(); - } - - /** - * Bind the given RequestAttributes to the current thread, - * not exposing it as inheritable for child threads. - * @param attributes the RequestAttributes to expose - * @see #setRequestAttributes(RequestAttributes, boolean) - */ - public static void setRequestAttributes(@Nullable RequestAttributes attributes) { - setRequestAttributes(attributes, false); - } - - /** - * Bind the given RequestAttributes to the current thread. - * @param attributes the RequestAttributes to expose, - * or {@code null} to reset the thread-bound context - * @param inheritable whether to expose the RequestAttributes as inheritable - * for child threads (using an {@link InheritableThreadLocal}) - */ - public static void setRequestAttributes(@Nullable RequestAttributes attributes, boolean inheritable) { - if (attributes == null) { - resetRequestAttributes(); - } - else { - if (inheritable) { - inheritableRequestAttributesHolder.set(attributes); - requestAttributesHolder.remove(); - } - else { - requestAttributesHolder.set(attributes); - inheritableRequestAttributesHolder.remove(); - } - } - } - - /** - * Return the RequestAttributes currently bound to the thread. - * @return the RequestAttributes currently bound to the thread, - * or {@code null} if none bound - */ - @Nullable - public static RequestAttributes getRequestAttributes() { - RequestAttributes attributes = requestAttributesHolder.get(); - if (attributes == null) { - attributes = inheritableRequestAttributesHolder.get(); - } - return attributes; - } - - /** - * Return the RequestAttributes currently bound to the thread. - *

Exposes the previously bound RequestAttributes instance, if any. - * Falls back to the current JSF FacesContext, if any. - * @return the RequestAttributes currently bound to the thread - * @throws IllegalStateException if no RequestAttributes object - * is bound to the current thread - * @see #setRequestAttributes - * @see ServletRequestAttributes - * @see FacesRequestAttributes - * @see jakarta.faces.context.FacesContext#getCurrentInstance() - */ - public static RequestAttributes currentRequestAttributes() throws IllegalStateException { - RequestAttributes attributes = getRequestAttributes(); - if (attributes == null) { - if (jsfPresent) { - attributes = FacesRequestAttributesFactory.getFacesRequestAttributes(); - } - if (attributes == null) { - throw new IllegalStateException("No thread-bound request found: " + - "Are you referring to request attributes outside of an actual web request, " + - "or processing a request outside of the originally receiving thread? " + - "If you are actually operating within a web request and still receive this message, " + - "your code is probably running outside of DispatcherServlet: " + - "In this case, use RequestContextListener or RequestContextFilter to expose the current request."); - } - } - return attributes; - } - - - /** - * Inner class to avoid hard-coded JSF dependency. - */ - private static class FacesRequestAttributesFactory { - - @Nullable - public static RequestAttributes getFacesRequestAttributes() { - try { - FacesContext facesContext = FacesContext.getCurrentInstance(); - return (facesContext != null ? new FacesRequestAttributes(facesContext) : null); - } - catch (NoClassDefFoundError err) { - // typically for com/sun/faces/util/Util if only the JSF API jar is present - return null; - } - } - } - -} diff --git a/ruoyi-common/ruoyi-common-log/src/main/java/org/dromara/common/log/aspect/LogAspect.java b/ruoyi-common/ruoyi-common-log/src/main/java/org/dromara/common/log/aspect/LogAspect.java index 8e257a23c..cdbd00f09 100644 --- a/ruoyi-common/ruoyi-common-log/src/main/java/org/dromara/common/log/aspect/LogAspect.java +++ b/ruoyi-common/ruoyi-common-log/src/main/java/org/dromara/common/log/aspect/LogAspect.java @@ -13,6 +13,7 @@ import org.aspectj.lang.annotation.AfterReturning; import org.aspectj.lang.annotation.AfterThrowing; import org.aspectj.lang.annotation.Aspect; import org.aspectj.lang.annotation.Before; +import org.dromara.common.core.domain.model.LoginUser; import org.dromara.common.core.utils.ServletUtils; import org.dromara.common.core.utils.SpringUtils; import org.dromara.common.core.utils.StringUtils; @@ -20,6 +21,7 @@ import org.dromara.common.json.utils.JsonUtils; import org.dromara.common.log.annotation.Log; import org.dromara.common.log.enums.BusinessStatus; import org.dromara.common.log.event.OperLogEvent; +import org.dromara.common.satoken.utils.LoginHelper; import org.springframework.boot.autoconfigure.AutoConfiguration; import org.springframework.http.HttpMethod; import org.springframework.validation.BindingResult; @@ -86,6 +88,16 @@ public class LogAspect { // *========数据库日志=========*// OperLogEvent operLog = new OperLogEvent(); + operLog.setTenantId(LoginHelper.getTenantId()); + operLog.setStatus(BusinessStatus.SUCCESS.ordinal()); + // 请求的地址 + String ip = ServletUtils.getClientIP(); + operLog.setOperIp(ip); + operLog.setOperUrl(StringUtils.substring(ServletUtils.getRequest().getRequestURI(), 0, 255)); + LoginUser loginUser = LoginHelper.getLoginUser(); + operLog.setOperName(loginUser.getUsername()); + operLog.setDeptName(loginUser.getDeptName()); + if (e != null) { operLog.setStatus(BusinessStatus.FAIL.ordinal()); operLog.setErrorMsg(StringUtils.substring(e.getMessage(), 0, 2000)); @@ -94,6 +106,8 @@ public class LogAspect { String className = joinPoint.getTarget().getClass().getName(); String methodName = joinPoint.getSignature().getName(); operLog.setMethod(className + "." + methodName + "()"); + // 设置请求方式 + operLog.setRequestMethod(ServletUtils.getRequest().getMethod()); // 处理设置注解上的参数 getControllerMethodDescription(joinPoint, controllerLog, operLog, jsonResult); // 设置消耗时间 diff --git a/ruoyi-common/ruoyi-common-log/src/main/java/org/dromara/common/log/event/LogininforEvent.java b/ruoyi-common/ruoyi-common-log/src/main/java/org/dromara/common/log/event/LogininforEvent.java index 212bf18b5..938eaadde 100644 --- a/ruoyi-common/ruoyi-common-log/src/main/java/org/dromara/common/log/event/LogininforEvent.java +++ b/ruoyi-common/ruoyi-common-log/src/main/java/org/dromara/common/log/event/LogininforEvent.java @@ -2,6 +2,8 @@ package org.dromara.common.log.event; import lombok.Data; +import jakarta.servlet.http.HttpServletRequest; + import java.io.Serial; import java.io.Serializable; @@ -37,6 +39,11 @@ public class LogininforEvent implements Serializable { */ private String message; + /** + * 请求体 + */ + private HttpServletRequest request; + /** * 其他参数 */ diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysLogininforServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysLogininforServiceImpl.java index dfd490ae9..b95baf44b 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysLogininforServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysLogininforServiceImpl.java @@ -55,7 +55,7 @@ public class SysLogininforServiceImpl implements ISysLogininforService { @Async @EventListener public void recordLogininfor(LogininforEvent logininforEvent) { - HttpServletRequest request = ServletUtils.getRequest(); + HttpServletRequest request = logininforEvent.getRequest(); final UserAgent userAgent = UserAgentUtil.parse(request.getHeader("User-Agent")); final String ip = ServletUtils.getClientIP(request); // 客户端信息 diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOperLogServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOperLogServiceImpl.java index 45f263839..b78b9dcc8 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOperLogServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOperLogServiceImpl.java @@ -3,23 +3,18 @@ package org.dromara.system.service.impl; import cn.hutool.core.util.ArrayUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import jakarta.servlet.http.HttpServletRequest; -import lombok.RequiredArgsConstructor; -import org.dromara.common.core.domain.model.LoginUser; import org.dromara.common.core.utils.MapstructUtils; -import org.dromara.common.core.utils.ServletUtils; +import org.dromara.common.mybatis.core.page.PageQuery; +import org.dromara.common.mybatis.core.page.TableDataInfo; import org.dromara.common.core.utils.StringUtils; import org.dromara.common.core.utils.ip.AddressUtils; -import org.dromara.common.log.enums.BusinessStatus; import org.dromara.common.log.event.OperLogEvent; -import org.dromara.common.mybatis.core.page.PageQuery; -import org.dromara.common.mybatis.core.page.TableDataInfo; -import org.dromara.common.satoken.utils.LoginHelper; import org.dromara.system.domain.SysOperLog; import org.dromara.system.domain.bo.SysOperLogBo; import org.dromara.system.domain.vo.SysOperLogVo; import org.dromara.system.mapper.SysOperLogMapper; import org.dromara.system.service.ISysOperLogService; +import lombok.RequiredArgsConstructor; import org.springframework.context.event.EventListener; import org.springframework.scheduling.annotation.Async; import org.springframework.stereotype.Service; @@ -49,18 +44,6 @@ public class SysOperLogServiceImpl implements ISysOperLogService { @EventListener public void recordOper(OperLogEvent operLogEvent) { SysOperLogBo operLog = MapstructUtils.convert(operLogEvent, SysOperLogBo.class); - operLog.setTenantId(LoginHelper.getTenantId()); - operLog.setStatus(BusinessStatus.SUCCESS.ordinal()); - // 请求的地址 - String ip = ServletUtils.getClientIP(); - operLog.setOperIp(ip); - HttpServletRequest request = ServletUtils.getRequest(); - operLog.setOperUrl(StringUtils.substring(request.getRequestURI(), 0, 255)); - LoginUser loginUser = LoginHelper.getLoginUser(); - operLog.setOperName(loginUser.getUsername()); - operLog.setDeptName(loginUser.getDeptName()); - // 设置请求方式 - operLog.setRequestMethod(request.getMethod()); // 远程查询操作地点 operLog.setOperLocation(AddressUtils.getRealAddressByIP(operLog.getOperIp())); insertOperlog(operLog); -- Gitee From b33b645ef01512024d0aa84b7e3a74b48e6c04bf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Sat, 17 Aug 2024 10:29:33 +0800 Subject: [PATCH 136/540] =?UTF-8?q?remove=20=E7=A7=BB=E9=99=A4=20alibaba?= =?UTF-8?q?=20ttl=20=E4=B8=8E=E7=BA=BF=E7=A8=8B=E6=B1=A0=E6=90=AD=E9=85=8D?= =?UTF-8?q?=E6=9C=89=E9=97=AE=E9=A2=98(=E5=8F=AF=E4=BC=A0=E9=80=92?= =?UTF-8?q?=E4=BD=86=E6=97=A0=E6=B3=95=E6=B8=85=E9=99=A4=E4=B8=8E=E6=9B=B4?= =?UTF-8?q?=E6=96=B0)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 1 - ruoyi-common/ruoyi-common-core/pom.xml | 5 ----- .../java/org/dromara/common/tenant/helper/TenantHelper.java | 3 +-- 3 files changed, 1 insertion(+), 8 deletions(-) diff --git a/pom.xml b/pom.xml index 7772834d6..42b5e08de 100644 --- a/pom.xml +++ b/pom.xml @@ -32,7 +32,6 @@ 3.34.1 2.2.7 4.3.1 - 2.14.4 1.1.1 1.4.3 0.2.0 diff --git a/ruoyi-common/ruoyi-common-core/pom.xml b/ruoyi-common/ruoyi-common-core/pom.xml index 5925c9b3c..ad37e90db 100644 --- a/ruoyi-common/ruoyi-common-core/pom.xml +++ b/ruoyi-common/ruoyi-common-core/pom.xml @@ -94,11 +94,6 @@ ip2region - - com.alibaba - transmittable-thread-local - - diff --git a/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/helper/TenantHelper.java b/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/helper/TenantHelper.java index 9d087e113..6d12b6f49 100644 --- a/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/helper/TenantHelper.java +++ b/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/helper/TenantHelper.java @@ -2,7 +2,6 @@ package org.dromara.common.tenant.helper; import cn.dev33.satoken.stp.StpUtil; import cn.hutool.core.convert.Convert; -import com.alibaba.ttl.TransmittableThreadLocal; import com.baomidou.mybatisplus.core.plugins.IgnoreStrategy; import com.baomidou.mybatisplus.core.plugins.InterceptorIgnoreHelper; import lombok.AccessLevel; @@ -27,7 +26,7 @@ public class TenantHelper { private static final String DYNAMIC_TENANT_KEY = GlobalConstants.GLOBAL_REDIS_KEY + "dynamicTenant"; - private static final ThreadLocal TEMP_DYNAMIC_TENANT = new TransmittableThreadLocal<>(); + private static final ThreadLocal TEMP_DYNAMIC_TENANT = new ThreadLocal<>(); /** * 租户功能是否启用 -- Gitee From fb97649151348ca7f44c3f9e563d1a09d4b799d8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Sat, 17 Aug 2024 10:30:03 +0800 Subject: [PATCH 137/540] =?UTF-8?q?remove=20=E7=A7=BB=E9=99=A4=20alibaba?= =?UTF-8?q?=20ttl=20=E4=B8=8E=E7=BA=BF=E7=A8=8B=E6=B1=A0=E6=90=AD=E9=85=8D?= =?UTF-8?q?=E6=9C=89=E9=97=AE=E9=A2=98(=E5=8F=AF=E4=BC=A0=E9=80=92?= =?UTF-8?q?=E4=BD=86=E6=97=A0=E6=B3=95=E6=B8=85=E9=99=A4=E4=B8=8E=E6=9B=B4?= =?UTF-8?q?=E6=96=B0)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 6 ------ 1 file changed, 6 deletions(-) diff --git a/pom.xml b/pom.xml index 42b5e08de..321ea8e00 100644 --- a/pom.xml +++ b/pom.xml @@ -292,12 +292,6 @@ ${snailjob.version} - - com.alibaba - transmittable-thread-local - ${alibaba-ttl.version} - - org.bouncycastle -- Gitee From 76529559fe121a429692d7a28d16b7b25d56fb8e Mon Sep 17 00:00:00 2001 From: hfdy2019 <5463852+hfdy2019@user.noreply.gitee.com> Date: Sun, 18 Aug 2024 22:43:32 +0800 Subject: [PATCH 138/540] =?UTF-8?q?remove=20=E7=A7=BB=E9=99=A4=20alibaba?= =?UTF-8?q?=20ttl=20=E4=B8=8E=E7=BA=BF=E7=A8=8B=E6=B1=A0=E6=90=AD=E9=85=8D?= =?UTF-8?q?=E6=9C=89=E9=97=AE=E9=A2=98(=E5=8F=AF=E4=BC=A0=E9=80=92?= =?UTF-8?q?=E4=BD=86=E6=97=A0=E6=B3=95=E6=B8=85=E9=99=A4=E4=B8=8E=E6=9B=B4?= =?UTF-8?q?=E6=96=B0)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: hfdy2019 <5463852+hfdy2019@user.noreply.gitee.com> --- .../org/dromara/common/mybatis/annotation/DataPermission.java | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/annotation/DataPermission.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/annotation/DataPermission.java index 5643bf59c..fe7c2a9e6 100644 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/annotation/DataPermission.java +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/annotation/DataPermission.java @@ -1,7 +1,6 @@ package org.dromara.common.mybatis.annotation; import cn.hutool.core.util.StrUtil; -import com.alibaba.ttl.TransmittableThreadLocal; import com.mybatisflex.core.query.QueryWrapper; import lombok.AllArgsConstructor; import lombok.Getter; @@ -18,7 +17,7 @@ import org.dromara.common.mybatis.handler.PlusDataPermissionHandler; @Getter public class DataPermission { - private static final ThreadLocal IGNORE_FLAGS = new TransmittableThreadLocal<>(); + private static final ThreadLocal IGNORE_FLAGS = new ThreadLocal<>(); private static final PlusDataPermissionHandler DATA_PERMISSION_HANDLER = SpringUtils.getBean(PlusDataPermissionHandler.class); -- Gitee From 2452a296a24839f9de4ebe08e01948b94e39f1c4 Mon Sep 17 00:00:00 2001 From: hfdy2019 <5463852+hfdy2019@user.noreply.gitee.com> Date: Sun, 18 Aug 2024 22:44:03 +0800 Subject: [PATCH 139/540] =?UTF-8?q?update=20=E5=8D=87=E7=BA=A7mybatis-flex?= =?UTF-8?q?=E7=89=88=E6=9C=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: hfdy2019 <5463852+hfdy2019@user.noreply.gitee.com> --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 57fa5b7ae..bb740ddc4 100644 --- a/pom.xml +++ b/pom.xml @@ -24,7 +24,7 @@ 4.0.2 2.3 1.38.0 - 1.9.5 + 1.9.6 3.0.3 5.8.31 4.10.0 -- Gitee From 3f2499feacbde73ecd14bd3bfa416c2e4ec11b9a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Mon, 19 Aug 2024 09:14:50 +0800 Subject: [PATCH 140/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E7=A7=9F?= =?UTF-8?q?=E6=88=B7=E7=9B=B8=E5=85=B3controller=20=E5=A2=9E=E5=8A=A0?= =?UTF-8?q?=E7=A7=9F=E6=88=B7=E5=BC=80=E5=85=B3=E9=85=8D=E7=BD=AE=E6=8E=A7?= =?UTF-8?q?=E5=88=B6=E6=98=AF=E5=90=A6=E6=B3=A8=E5=86=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dromara/system/controller/system/SysTenantController.java | 2 ++ .../system/controller/system/SysTenantPackageController.java | 2 ++ 2 files changed, 4 insertions(+) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysTenantController.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysTenantController.java index 60be68a95..bad240c72 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysTenantController.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysTenantController.java @@ -24,6 +24,7 @@ import org.dromara.common.web.core.BaseController; import org.dromara.system.domain.bo.SysTenantBo; import org.dromara.system.domain.vo.SysTenantVo; import org.dromara.system.service.ISysTenantService; +import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; @@ -38,6 +39,7 @@ import java.util.List; @RequiredArgsConstructor @RestController @RequestMapping("/system/tenant") +@ConditionalOnProperty(value = "tenant.enable", havingValue = "true") public class SysTenantController extends BaseController { private final ISysTenantService tenantService; diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysTenantPackageController.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysTenantPackageController.java index acaf5f83c..4bfe597cf 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysTenantPackageController.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysTenantPackageController.java @@ -20,6 +20,7 @@ import jakarta.servlet.http.HttpServletResponse; import jakarta.validation.constraints.NotEmpty; import jakarta.validation.constraints.NotNull; import lombok.RequiredArgsConstructor; +import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; @@ -34,6 +35,7 @@ import java.util.List; @RequiredArgsConstructor @RestController @RequestMapping("/system/tenant/package") +@ConditionalOnProperty(value = "tenant.enable", havingValue = "true") public class SysTenantPackageController extends BaseController { private final ISysTenantPackageService tenantPackageService; -- Gitee From 23aafe1cfe0cb53ad488f90ede0b3805cbabe70c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Wed, 21 Aug 2024 13:54:01 +0800 Subject: [PATCH 141/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E5=BF=BD?= =?UTF-8?q?=E7=95=A5=E7=A7=9F=E6=88=B7=E4=B8=8E=E5=BF=BD=E7=95=A5=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E6=9D=83=E9=99=90=E6=94=AF=E6=8C=81=E5=B5=8C=E5=A5=97?= =?UTF-8?q?=E4=BD=BF=E7=94=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mybatis/helper/DataPermissionHelper.java | 41 ++++++++++++++++++- .../common/tenant/helper/TenantHelper.java | 41 ++++++++++++++++++- 2 files changed, 78 insertions(+), 4 deletions(-) diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/helper/DataPermissionHelper.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/helper/DataPermissionHelper.java index 2afe9ee47..ccb0fca34 100644 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/helper/DataPermissionHelper.java +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/helper/DataPermissionHelper.java @@ -2,14 +2,17 @@ package org.dromara.common.mybatis.helper; import cn.dev33.satoken.context.SaHolder; import cn.dev33.satoken.context.model.SaStorage; +import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.plugins.IgnoreStrategy; import com.baomidou.mybatisplus.core.plugins.InterceptorIgnoreHelper; import lombok.AccessLevel; import lombok.NoArgsConstructor; +import org.dromara.common.core.utils.reflect.ReflectUtils; import java.util.HashMap; import java.util.Map; +import java.util.Stack; import java.util.function.Supplier; /** @@ -24,6 +27,8 @@ public class DataPermissionHelper { private static final String DATA_PERMISSION_KEY = "data:permission"; + private static final ThreadLocal> REENTRANT_IGNORE = ThreadLocal.withInitial(Stack::new); + /** * 从上下文中获取指定键的变量值,并将其转换为指定的类型 * @@ -66,18 +71,50 @@ public class DataPermissionHelper { throw new NullPointerException("data permission context type exception"); } + private static IgnoreStrategy getIgnoreStrategy() { + Object ignoreStrategyLocal = ReflectUtils.getStaticFieldValue(ReflectUtils.getField(InterceptorIgnoreHelper.class, "IGNORE_STRATEGY_LOCAL")); + if (ignoreStrategyLocal instanceof ThreadLocal IGNORE_STRATEGY_LOCAL) { + if (IGNORE_STRATEGY_LOCAL.get() instanceof IgnoreStrategy ignoreStrategy) { + return ignoreStrategy; + } + } + return null; + } + /** * 开启忽略数据权限(开启后需手动调用 {@link #disableIgnore()} 关闭) */ public static void enableIgnore() { - InterceptorIgnoreHelper.handle(IgnoreStrategy.builder().dataPermission(true).build()); + IgnoreStrategy ignoreStrategy = getIgnoreStrategy(); + if (ObjectUtil.isNull(ignoreStrategy)) { + InterceptorIgnoreHelper.handle(IgnoreStrategy.builder().dataPermission(true).build()); + } else { + ignoreStrategy.setDataPermission(true); + } + Stack reentrantStack = REENTRANT_IGNORE.get(); + reentrantStack.push(reentrantStack.size() + 1); } /** * 关闭忽略数据权限 */ public static void disableIgnore() { - InterceptorIgnoreHelper.clearIgnoreStrategy(); + IgnoreStrategy ignoreStrategy = getIgnoreStrategy(); + if (ObjectUtil.isNotNull(ignoreStrategy)) { + boolean noOtherIgnoreStrategy = !Boolean.TRUE.equals(ignoreStrategy.getDynamicTableName()) + && !Boolean.TRUE.equals(ignoreStrategy.getBlockAttack()) + && !Boolean.TRUE.equals(ignoreStrategy.getIllegalSql()) + && !Boolean.TRUE.equals(ignoreStrategy.getTenantLine()) + && CollectionUtil.isEmpty(ignoreStrategy.getOthers()); + Stack reentrantStack = REENTRANT_IGNORE.get(); + boolean empty = reentrantStack.isEmpty() || reentrantStack.pop() == 1; + if (noOtherIgnoreStrategy && empty) { + InterceptorIgnoreHelper.clearIgnoreStrategy(); + } else if (empty) { + ignoreStrategy.setDataPermission(false); + } + + } } /** diff --git a/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/helper/TenantHelper.java b/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/helper/TenantHelper.java index 6d12b6f49..b18561267 100644 --- a/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/helper/TenantHelper.java +++ b/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/helper/TenantHelper.java @@ -1,7 +1,9 @@ package org.dromara.common.tenant.helper; import cn.dev33.satoken.stp.StpUtil; +import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.convert.Convert; +import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.plugins.IgnoreStrategy; import com.baomidou.mybatisplus.core.plugins.InterceptorIgnoreHelper; import lombok.AccessLevel; @@ -10,9 +12,11 @@ import lombok.extern.slf4j.Slf4j; import org.dromara.common.core.constant.GlobalConstants; import org.dromara.common.core.utils.SpringUtils; import org.dromara.common.core.utils.StringUtils; +import org.dromara.common.core.utils.reflect.ReflectUtils; import org.dromara.common.redis.utils.RedisUtils; import org.dromara.common.satoken.utils.LoginHelper; +import java.util.Stack; import java.util.function.Supplier; /** @@ -28,6 +32,8 @@ public class TenantHelper { private static final ThreadLocal TEMP_DYNAMIC_TENANT = new ThreadLocal<>(); + private static final ThreadLocal> REENTRANT_IGNORE = ThreadLocal.withInitial(Stack::new); + /** * 租户功能是否启用 */ @@ -35,18 +41,49 @@ public class TenantHelper { return Convert.toBool(SpringUtils.getProperty("tenant.enable"), false); } + private static IgnoreStrategy getIgnoreStrategy() { + Object ignoreStrategyLocal = ReflectUtils.getStaticFieldValue(ReflectUtils.getField(InterceptorIgnoreHelper.class, "IGNORE_STRATEGY_LOCAL")); + if (ignoreStrategyLocal instanceof ThreadLocal IGNORE_STRATEGY_LOCAL) { + if (IGNORE_STRATEGY_LOCAL.get() instanceof IgnoreStrategy ignoreStrategy) { + return ignoreStrategy; + } + } + return null; + } + /** * 开启忽略租户(开启后需手动调用 {@link #disableIgnore()} 关闭) */ public static void enableIgnore() { - InterceptorIgnoreHelper.handle(IgnoreStrategy.builder().tenantLine(true).build()); + IgnoreStrategy ignoreStrategy = getIgnoreStrategy(); + if (ObjectUtil.isNull(ignoreStrategy)) { + InterceptorIgnoreHelper.handle(IgnoreStrategy.builder().tenantLine(true).build()); + } else { + ignoreStrategy.setTenantLine(true); + } + Stack reentrantStack = REENTRANT_IGNORE.get(); + reentrantStack.push(reentrantStack.size() + 1); } /** * 关闭忽略租户 */ public static void disableIgnore() { - InterceptorIgnoreHelper.clearIgnoreStrategy(); + IgnoreStrategy ignoreStrategy = getIgnoreStrategy(); + if (ObjectUtil.isNotNull(ignoreStrategy)) { + boolean noOtherIgnoreStrategy = !Boolean.TRUE.equals(ignoreStrategy.getDynamicTableName()) + && !Boolean.TRUE.equals(ignoreStrategy.getBlockAttack()) + && !Boolean.TRUE.equals(ignoreStrategy.getIllegalSql()) + && !Boolean.TRUE.equals(ignoreStrategy.getDataPermission()) + && CollectionUtil.isEmpty(ignoreStrategy.getOthers()); + Stack reentrantStack = REENTRANT_IGNORE.get(); + boolean empty = reentrantStack.isEmpty() || reentrantStack.pop() == 1; + if (noOtherIgnoreStrategy && empty) { + InterceptorIgnoreHelper.clearIgnoreStrategy(); + } else if (empty) { + ignoreStrategy.setTenantLine(false); + } + } } /** -- Gitee From 4743eb1d3b2d9ee46845f36e50cd8102308c834f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Wed, 21 Aug 2024 13:54:40 +0800 Subject: [PATCH 142/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E5=BF=BD?= =?UTF-8?q?=E7=95=A5=E7=A7=9F=E6=88=B7=E4=B8=8E=E5=BF=BD=E7=95=A5=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E6=9D=83=E9=99=90=E6=94=AF=E6=8C=81=E5=B5=8C=E5=A5=97?= =?UTF-8?q?=E4=BD=BF=E7=94=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/dromara/common/mybatis/helper/DataPermissionHelper.java | 2 -- 1 file changed, 2 deletions(-) diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/helper/DataPermissionHelper.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/helper/DataPermissionHelper.java index ccb0fca34..932f17388 100644 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/helper/DataPermissionHelper.java +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/helper/DataPermissionHelper.java @@ -119,7 +119,6 @@ public class DataPermissionHelper { /** * 在忽略数据权限中执行 - *

禁止在忽略数据权限中执行忽略数据权限

* * @param handle 处理执行方法 */ @@ -134,7 +133,6 @@ public class DataPermissionHelper { /** * 在忽略数据权限中执行 - *

禁止在忽略数据权限中执行忽略数据权限

* * @param handle 处理执行方法 */ -- Gitee From 0af532f4f1bfd359773eaad75eee4ef487302a0a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 22 Aug 2024 11:19:13 +0800 Subject: [PATCH 143/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E5=8E=BB?= =?UTF-8?q?=E9=99=A4=E6=97=A5=E5=BF=97=E9=83=A8=E7=BD=B2=E7=8E=AF=E5=A2=83?= =?UTF-8?q?=E5=88=A4=E6=96=AD=20=E9=80=9A=E8=BF=87=E6=97=A5=E5=BF=97?= =?UTF-8?q?=E7=BA=A7=E5=88=AB=E6=8E=A7=E5=88=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../PlusWebInvokeTimeInterceptor.java | 55 ++++++++----------- 1 file changed, 24 insertions(+), 31 deletions(-) diff --git a/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/interceptor/PlusWebInvokeTimeInterceptor.java b/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/interceptor/PlusWebInvokeTimeInterceptor.java index 12c808647..614a559d7 100644 --- a/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/interceptor/PlusWebInvokeTimeInterceptor.java +++ b/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/interceptor/PlusWebInvokeTimeInterceptor.java @@ -6,7 +6,6 @@ import jakarta.servlet.http.HttpServletRequest; import jakarta.servlet.http.HttpServletResponse; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.time.StopWatch; -import org.dromara.common.core.utils.SpringUtils; import org.dromara.common.core.utils.StringUtils; import org.dromara.common.json.utils.JsonUtils; import org.dromara.common.web.filter.RepeatedlyRequestWrapper; @@ -19,7 +18,6 @@ import java.util.Map; /** * web的调用时间统计拦截器 - * dev环境有效 * * @author Lion Li * @since 3.3.0 @@ -27,37 +25,34 @@ import java.util.Map; @Slf4j public class PlusWebInvokeTimeInterceptor implements HandlerInterceptor { - private final String prodProfile = "prod"; - private final static ThreadLocal KEY_CACHE = new ThreadLocal<>(); @Override public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception { - if (!prodProfile.equals(SpringUtils.getActiveProfile())) { - String url = request.getMethod() + " " + request.getRequestURI(); + String url = request.getMethod() + " " + request.getRequestURI(); - // 打印请求参数 - if (isJsonRequest(request)) { - String jsonParam = ""; - if (request instanceof RepeatedlyRequestWrapper) { - BufferedReader reader = request.getReader(); - jsonParam = IoUtil.read(reader); - } - log.info("[PLUS]开始请求 => URL[{}],参数类型[json],参数:[{}]", url, jsonParam); + // 打印请求参数 + if (isJsonRequest(request)) { + String jsonParam = ""; + if (request instanceof RepeatedlyRequestWrapper) { + BufferedReader reader = request.getReader(); + jsonParam = IoUtil.read(reader); + } + log.info("[PLUS]开始请求 => URL[{}],参数类型[json],参数:[{}]", url, jsonParam); + } else { + Map parameterMap = request.getParameterMap(); + if (MapUtil.isNotEmpty(parameterMap)) { + String parameters = JsonUtils.toJsonString(parameterMap); + log.info("[PLUS]开始请求 => URL[{}],参数类型[param],参数:[{}]", url, parameters); } else { - Map parameterMap = request.getParameterMap(); - if (MapUtil.isNotEmpty(parameterMap)) { - String parameters = JsonUtils.toJsonString(parameterMap); - log.info("[PLUS]开始请求 => URL[{}],参数类型[param],参数:[{}]", url, parameters); - } else { - log.info("[PLUS]开始请求 => URL[{}],无参数", url); - } + log.info("[PLUS]开始请求 => URL[{}],无参数", url); } - - StopWatch stopWatch = new StopWatch(); - KEY_CACHE.set(stopWatch); - stopWatch.start(); } + + StopWatch stopWatch = new StopWatch(); + KEY_CACHE.set(stopWatch); + stopWatch.start(); + return true; } @@ -68,12 +63,10 @@ public class PlusWebInvokeTimeInterceptor implements HandlerInterceptor { @Override public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception { - if (!prodProfile.equals(SpringUtils.getActiveProfile())) { - StopWatch stopWatch = KEY_CACHE.get(); - stopWatch.stop(); - log.info("[PLUS]结束请求 => URL[{}],耗时:[{}]毫秒", request.getMethod() + " " + request.getRequestURI(), stopWatch.getTime()); - KEY_CACHE.remove(); - } + StopWatch stopWatch = KEY_CACHE.get(); + stopWatch.stop(); + log.info("[PLUS]结束请求 => URL[{}],耗时:[{}]毫秒", request.getMethod() + " " + request.getRequestURI(), stopWatch.getTime()); + KEY_CACHE.remove(); } /** -- Gitee From a964ccbd1092b159903089b682cfa0694021ef66 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 22 Aug 2024 11:19:43 +0800 Subject: [PATCH 144/540] update snailjob 1.1.1 => 1.1.2 update mapstruct-plus 1.4.3 => 1.4.4 --- pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index 321ea8e00..700eff319 100644 --- a/pom.xml +++ b/pom.xml @@ -32,8 +32,8 @@ 3.34.1 2.2.7 4.3.1 - 1.1.1 - 1.4.3 + 1.1.2 + 1.4.4 0.2.0 1.18.34 1.76 -- Gitee From 457e59e61c9d7dbf4ef299c34aadd2c00fc0f1c9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 22 Aug 2024 17:53:55 +0800 Subject: [PATCH 145/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20=E5=A4=9A?= =?UTF-8?q?=E7=BA=BF=E7=A8=8B=E5=AF=B9=E5=90=8C=E4=B8=80=E4=B8=AAsession?= =?UTF-8?q?=E5=8F=91=E9=80=81ws=E6=B6=88=E6=81=AF=E6=8A=A5=E9=94=99?= =?UTF-8?q?=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/org/dromara/common/websocket/utils/WebSocketUtils.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ruoyi-common/ruoyi-common-websocket/src/main/java/org/dromara/common/websocket/utils/WebSocketUtils.java b/ruoyi-common/ruoyi-common-websocket/src/main/java/org/dromara/common/websocket/utils/WebSocketUtils.java index afe76e06d..8c4170aa1 100644 --- a/ruoyi-common/ruoyi-common-websocket/src/main/java/org/dromara/common/websocket/utils/WebSocketUtils.java +++ b/ruoyi-common/ruoyi-common-websocket/src/main/java/org/dromara/common/websocket/utils/WebSocketUtils.java @@ -113,7 +113,7 @@ public class WebSocketUtils { * @param session WebSocket会话 * @param message 要发送的WebSocket消息对象 */ - private static void sendMessage(WebSocketSession session, WebSocketMessage message) { + private synchronized static void sendMessage(WebSocketSession session, WebSocketMessage message) { if (session == null || !session.isOpen()) { log.warn("[send] session会话已经关闭"); } else { -- Gitee From 308c22f9229dafb55e0afb441584abbac69324e7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 23 Aug 2024 10:30:29 +0800 Subject: [PATCH 146/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20=E4=B8=89?= =?UTF-8?q?=E6=96=B9=E7=99=BB=E5=BD=95=E6=9E=84=E5=BB=BA=E5=8E=BB=E9=99=A4?= =?UTF-8?q?=E6=97=A0=E7=94=A8=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/org/dromara/common/social/utils/SocialUtils.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ruoyi-common/ruoyi-common-social/src/main/java/org/dromara/common/social/utils/SocialUtils.java b/ruoyi-common/ruoyi-common-social/src/main/java/org/dromara/common/social/utils/SocialUtils.java index 04f621489..9191fca77 100644 --- a/ruoyi-common/ruoyi-common-social/src/main/java/org/dromara/common/social/utils/SocialUtils.java +++ b/ruoyi-common/ruoyi-common-social/src/main/java/org/dromara/common/social/utils/SocialUtils.java @@ -58,9 +58,9 @@ public class SocialUtils { case "linkedin" -> new AuthLinkedinRequest(builder.build(), STATE_CACHE); case "microsoft" -> new AuthMicrosoftRequest(builder.build(), STATE_CACHE); case "renren" -> new AuthRenrenRequest(builder.build(), STATE_CACHE); - case "stack_overflow" -> new AuthStackOverflowRequest(builder.stackOverflowKey("").build(), STATE_CACHE); + case "stack_overflow" -> new AuthStackOverflowRequest(builder.build(), STATE_CACHE); case "huawei" -> new AuthHuaweiRequest(builder.build(), STATE_CACHE); - case "wechat_enterprise" -> new AuthWeChatEnterpriseQrcodeRequest(builder.agentId("").build(), STATE_CACHE); + case "wechat_enterprise" -> new AuthWeChatEnterpriseQrcodeRequest(builder.build(), STATE_CACHE); case "gitlab" -> new AuthGitlabRequest(builder.build(), STATE_CACHE); case "wechat_mp" -> new AuthWeChatMpRequest(builder.build(), STATE_CACHE); case "aliyun" -> new AuthAliyunRequest(builder.build(), STATE_CACHE); -- Gitee From eb038e91dde4ee7444a0ea4ec8c8bcd183b15c1e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 23 Aug 2024 10:52:53 +0800 Subject: [PATCH 147/540] update springboot 3.2.8 => 3.2.9 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 700eff319..c9d055be3 100644 --- a/pom.xml +++ b/pom.xml @@ -14,7 +14,7 @@ 5.2.1 - 3.2.8 + 3.2.9 UTF-8 UTF-8 17 -- Gitee From 79aee1d3127c8be0184bc6493b08fb2ba2f1a8ae Mon Sep 17 00:00:00 2001 From: gssong <1742057357@qq.com> Date: Sat, 24 Aug 2024 11:16:39 +0800 Subject: [PATCH 148/540] =?UTF-8?q?add=20=E6=B7=BB=E5=8A=A0=E6=8C=89?= =?UTF-8?q?=E7=85=A7=E9=83=A8=E9=97=A8id=EF=BC=8C=E8=A7=92=E8=89=B2id?= =?UTF-8?q?=E6=9F=A5=E8=AF=A2=E7=94=A8=E6=88=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/core/service/UserService.java | 16 ++++++++++++++ .../service/impl/SysUserServiceImpl.java | 22 +++++++++++++++++++ 2 files changed, 38 insertions(+) diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/service/UserService.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/service/UserService.java index 0f2878da4..43aef28cb 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/service/UserService.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/service/UserService.java @@ -66,4 +66,20 @@ public interface UserService { * @return 用户ids */ List selectUserIdsByRoleIds(List roleIds); + + /** + * 通过角色ID查询用户 + * + * @param roleIds 角色ids + * @return 用户 + */ + List selectUsersByRoleIds(List roleIds); + + /** + * 通过部门ID查询用户 + * + * @param deptIds 部门ids + * @return 用户 + */ + List selectUsersByDeptIds(List deptIds); } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java index 6fbeab56d..254060688 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java @@ -647,4 +647,26 @@ public class SysUserServiceImpl implements ISysUserService, UserService { return StreamUtils.toList(userRoles, SysUserRole::getUserId); } + @Override + public List selectUsersByRoleIds(List roleIds) { + if (CollUtil.isEmpty(roleIds)) { + return List.of(); + } + List userRoles = userRoleMapper.selectList( + new LambdaQueryWrapper().in(SysUserRole::getRoleId, roleIds)); + List userIds = StreamUtils.toList(userRoles, SysUserRole::getUserId); + return selectListByIds(userIds); + } + + @Override + public List selectUsersByDeptIds(List deptIds) { + if (CollUtil.isEmpty(deptIds)) { + return List.of(); + } + List list = baseMapper.selectVoList(new LambdaQueryWrapper() + .select(SysUser::getUserId, SysUser::getUserName, SysUser::getNickName, SysUser::getEmail, SysUser::getPhonenumber) + .eq(SysUser::getStatus, UserConstants.USER_NORMAL) + .in(CollUtil.isNotEmpty(deptIds), SysUser::getDeptId, deptIds)); + return BeanUtil.copyToList(list, UserDTO.class); + } } -- Gitee From 463048e0173fd7532933841ae11ab945f2ca868c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Mon, 26 Aug 2024 11:39:13 +0800 Subject: [PATCH 149/540] =?UTF-8?q?=F0=9F=98=B4=E5=8F=91=E5=B8=83=205.2.2?= =?UTF-8?q?=20=E6=AD=A3=E5=BC=8F=E7=89=88=20=E5=AE=89=E5=85=A8=E6=80=A7?= =?UTF-8?q?=E6=8F=90=E5=8D=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .run/ruoyi-monitor-admin.run.xml | 2 +- .run/ruoyi-server.run.xml | 6 +++--- .run/ruoyi-snailjob-server.run.xml | 2 +- README.md | 2 +- pom.xml | 2 +- ruoyi-common/ruoyi-common-bom/pom.xml | 2 +- script/docker/docker-compose.yml | 8 ++++---- 7 files changed, 12 insertions(+), 12 deletions(-) diff --git a/.run/ruoyi-monitor-admin.run.xml b/.run/ruoyi-monitor-admin.run.xml index 5b32519c5..478b4f30d 100644 --- a/.run/ruoyi-monitor-admin.run.xml +++ b/.run/ruoyi-monitor-admin.run.xml @@ -2,7 +2,7 @@ - diff --git a/.run/ruoyi-server.run.xml b/.run/ruoyi-server.run.xml index 9fefae69a..541800ddc 100644 --- a/.run/ruoyi-server.run.xml +++ b/.run/ruoyi-server.run.xml @@ -1,12 +1,12 @@ - + - - + \ No newline at end of file diff --git a/.run/ruoyi-snailjob-server.run.xml b/.run/ruoyi-snailjob-server.run.xml index 914809dbf..5221eef4f 100644 --- a/.run/ruoyi-snailjob-server.run.xml +++ b/.run/ruoyi-snailjob-server.run.xml @@ -2,7 +2,7 @@ - diff --git a/README.md b/README.md index 71895dc3f..eeb3f7b4b 100644 --- a/README.md +++ b/README.md @@ -9,7 +9,7 @@ [![License](https://img.shields.io/badge/License-MIT-blue.svg)](https://gitee.com/dromara/RuoYi-Vue-Plus/blob/master/LICENSE) [![使用IntelliJ IDEA开发维护](https://img.shields.io/badge/IntelliJ%20IDEA-提供支持-blue.svg)](https://www.jetbrains.com/?from=RuoYi-Vue-Plus)
-[![RuoYi-Vue-Plus](https://img.shields.io/badge/RuoYi_Vue_Plus-5.2.1-success.svg)](https://gitee.com/dromara/RuoYi-Vue-Plus) +[![RuoYi-Vue-Plus](https://img.shields.io/badge/RuoYi_Vue_Plus-5.2.2-success.svg)](https://gitee.com/dromara/RuoYi-Vue-Plus) [![Spring Boot](https://img.shields.io/badge/Spring%20Boot-3.2-blue.svg)]() [![JDK-17](https://img.shields.io/badge/JDK-17-green.svg)]() [![JDK-21](https://img.shields.io/badge/JDK-21-green.svg)]() diff --git a/pom.xml b/pom.xml index c9d055be3..750673b87 100644 --- a/pom.xml +++ b/pom.xml @@ -13,7 +13,7 @@ RuoYi-Vue-Plus多租户管理系统 - 5.2.1 + 5.2.2 3.2.9 UTF-8 UTF-8 diff --git a/ruoyi-common/ruoyi-common-bom/pom.xml b/ruoyi-common/ruoyi-common-bom/pom.xml index 19ca420e3..455408d8c 100644 --- a/ruoyi-common/ruoyi-common-bom/pom.xml +++ b/ruoyi-common/ruoyi-common-bom/pom.xml @@ -14,7 +14,7 @@ - 5.2.1 + 5.2.2 diff --git a/script/docker/docker-compose.yml b/script/docker/docker-compose.yml index b4f96aa44..91d97aeed 100644 --- a/script/docker/docker-compose.yml +++ b/script/docker/docker-compose.yml @@ -100,7 +100,7 @@ services: network_mode: "host" ruoyi-server1: - image: ruoyi/ruoyi-server:5.2.1 + image: ruoyi/ruoyi-server:5.2.2 container_name: ruoyi-server1 environment: # 时区上海 @@ -115,7 +115,7 @@ services: network_mode: "host" ruoyi-server2: - image: ruoyi/ruoyi-server:5.2.1 + image: ruoyi/ruoyi-server:5.2.2 container_name: ruoyi-server2 environment: # 时区上海 @@ -130,7 +130,7 @@ services: network_mode: "host" ruoyi-monitor-admin: - image: ruoyi/ruoyi-monitor-admin:5.2.1 + image: ruoyi/ruoyi-monitor-admin:5.2.2 container_name: ruoyi-monitor-admin environment: # 时区上海 @@ -142,7 +142,7 @@ services: network_mode: "host" ruoyi-snailjob-server: - image: ruoyi/ruoyi-snailjob-server:5.2.1 + image: ruoyi/ruoyi-snailjob-server:5.2.2 container_name: ruoyi-snailjob-server environment: # 时区上海 -- Gitee From c87016c1af06ca328914dd026fa24e2a43d90179 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Mon, 26 Aug 2024 15:38:48 +0800 Subject: [PATCH 150/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20excel?= =?UTF-8?q?=E5=AF=BC=E5=85=A5=20=E9=80=82=E9=85=8D=E5=BC=82=E5=B8=B8?= =?UTF-8?q?=E7=BB=93=E6=9E=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dromara/system/listener/SysUserImportListener.java | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/listener/SysUserImportListener.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/listener/SysUserImportListener.java index c20a4eca5..1ea8f2dad 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/listener/SysUserImportListener.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/listener/SysUserImportListener.java @@ -5,8 +5,11 @@ import cn.hutool.core.util.ObjectUtil; import cn.hutool.crypto.digest.BCrypt; import com.alibaba.excel.context.AnalysisContext; import com.alibaba.excel.event.AnalysisEventListener; +import jakarta.validation.ConstraintViolation; +import jakarta.validation.ConstraintViolationException; import org.dromara.common.core.exception.ServiceException; import org.dromara.common.core.utils.SpringUtils; +import org.dromara.common.core.utils.StreamUtils; import org.dromara.common.core.utils.ValidatorUtils; import org.dromara.common.excel.core.ExcelListener; import org.dromara.common.excel.core.ExcelResult; @@ -80,7 +83,11 @@ public class SysUserImportListener extends AnalysisEventListener Date: Mon, 26 Aug 2024 17:56:19 +0800 Subject: [PATCH 151/540] =?UTF-8?q?add=20=E5=A2=9E=E5=8A=A0=20=E5=90=8C?= =?UTF-8?q?=E6=AD=A5=E7=A7=9F=E6=88=B7=E5=AD=97=E5=85=B8=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../system/SysTenantController.java | 14 +++ .../system/service/ISysTenantService.java | 5 + .../service/impl/SysTenantServiceImpl.java | 92 ++++++++++++++++++- 3 files changed, 107 insertions(+), 4 deletions(-) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysTenantController.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysTenantController.java index bad240c72..10c6777e7 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysTenantController.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysTenantController.java @@ -176,4 +176,18 @@ public class SysTenantController extends BaseController { return toAjax(TenantHelper.ignore(() -> tenantService.syncTenantPackage(tenantId, packageId))); } + /** + * 同步租户字典 + */ + @SaCheckRole(TenantConstants.SUPER_ADMIN_ROLE_KEY) + @Log(title = "同步租户字典", businessType = BusinessType.INSERT) + @GetMapping("/syncTenantDict") + public R syncTenantDict() { + if (!TenantHelper.isEnable()) { + return R.fail("当前未开启租户模式"); + } + tenantService.syncTenantDict(); + return R.ok("同步租户字典成功"); + } + } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysTenantService.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysTenantService.java index d12ed95f1..f69782902 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysTenantService.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysTenantService.java @@ -79,4 +79,9 @@ public interface ISysTenantService { * 同步租户套餐 */ Boolean syncTenantPackage(String tenantId, Long packageId); + + /** + * 同步租户字典 + */ + void syncTenantDict(); } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java index d30750db5..65380f221 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java @@ -1,6 +1,7 @@ package org.dromara.system.service.impl; import cn.dev33.satoken.secure.BCrypt; +import cn.hutool.core.collection.CollUtil; import cn.hutool.core.convert.Convert; import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.RandomUtil; @@ -14,9 +15,13 @@ import org.dromara.common.core.constant.TenantConstants; import org.dromara.common.core.exception.ServiceException; import org.dromara.common.core.utils.MapstructUtils; import org.dromara.common.core.utils.SpringUtils; +import org.dromara.common.core.utils.StreamUtils; import org.dromara.common.core.utils.StringUtils; import org.dromara.common.mybatis.core.page.PageQuery; import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.dromara.common.redis.utils.CacheUtils; +import org.dromara.common.tenant.core.TenantEntity; +import org.dromara.common.tenant.helper.TenantHelper; import org.dromara.system.domain.*; import org.dromara.system.domain.bo.SysTenantBo; import org.dromara.system.domain.vo.SysTenantVo; @@ -27,10 +32,7 @@ import org.springframework.cache.annotation.Cacheable; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; -import java.util.ArrayList; -import java.util.Collection; -import java.util.Date; -import java.util.List; +import java.util.*; /** * 租户Service业务层处理 @@ -369,4 +371,86 @@ public class SysTenantServiceImpl implements ISysTenantService { } return true; } + + /** + * 同步租户字典 + */ + @Transactional(rollbackFor = Exception.class) + @Override + public void syncTenantDict() { + // 查询超管 所有字典数据 + List dictTypeList = new ArrayList<>(); + List dictDataList = new ArrayList<>(); + TenantHelper.ignore(() -> { + dictTypeList.addAll(dictTypeMapper.selectList()); + dictDataList.addAll(dictDataMapper.selectList()); + }); + Map> typeMap = StreamUtils.groupByKey(dictTypeList, TenantEntity::getTenantId); + Map>> typeDataMap = StreamUtils.groupBy2Key( + dictDataList, TenantEntity::getTenantId, SysDictData::getDictType); + // 管理租户字典数据 + List defaultTypeMap = typeMap.get(TenantConstants.DEFAULT_TENANT_ID); + Map> defaultTypeDataMap = typeDataMap.get(TenantConstants.DEFAULT_TENANT_ID); + + // 获取所有租户编号 + List tenantIds = baseMapper.selectObjs( + new LambdaQueryWrapper().select(SysTenant::getTenantId) + .eq(SysTenant::getStatus, TenantConstants.NORMAL), x -> {return Convert.toStr(x);}); + List saveTypeList = new ArrayList<>(); + List saveDataList = new ArrayList<>(); + Set set = new HashSet<>(); + for (String tenantId : tenantIds) { + if (TenantConstants.DEFAULT_TENANT_ID.equals(tenantId)) { + continue; + } + for (SysDictType dictType : defaultTypeMap) { + List typeList = StreamUtils.toList(typeMap.get(tenantId), SysDictType::getDictType); + List dataList = defaultTypeDataMap.get(dictType.getDictType()); + if (typeList.contains(dictType.getDictType())) { + List dataListTenant = typeDataMap.get(tenantId).get(dictType.getDictType()); + Map map = StreamUtils.toIdentityMap(dataListTenant, SysDictData::getDictValue); + for (SysDictData dictData : dataList) { + if (!map.containsKey(dictData.getDictValue())) { + // 设置字典编码为 null + dictData.setDictCode(null); + dictData.setTenantId(tenantId); + dictData.setCreateTime(null); + dictData.setUpdateTime(null); + set.add(tenantId); + saveDataList.add(dictData); + } + } + } else { + dictType.setDictId(null); + dictType.setTenantId(tenantId); + dictType.setCreateTime(null); + dictType.setUpdateTime(null); + set.add(tenantId); + saveTypeList.add(dictType); + if (CollUtil.isNotEmpty(dataList)) { + // 筛选出 dictType 对应的 data + for (SysDictData dictData : dataList) { + // 设置字典编码为 null + dictData.setDictCode(null); + dictData.setTenantId(tenantId); + dictData.setCreateTime(null); + dictData.setUpdateTime(null); + set.add(tenantId); + } + saveDataList.addAll(dataList); + } + } + } + } + if (CollUtil.isNotEmpty(saveTypeList)) { + dictTypeMapper.insertBatch(saveTypeList); + } + if (CollUtil.isNotEmpty(saveDataList)) { + dictDataMapper.insertBatch(saveDataList); + } + for (String tenantId : set) { + TenantHelper.dynamic(tenantId, () -> CacheUtils.clear(CacheNames.SYS_DICT)); + } + } + } -- Gitee From 801cc584e53a91ec8ef5f509e28dd5883603e4b9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 29 Aug 2024 10:41:45 +0800 Subject: [PATCH 152/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E4=BB=A3?= =?UTF-8?q?=E7=A0=81=E7=94=9F=E6=88=90=E8=A1=A8=E5=90=8D=E5=88=A4=E6=96=AD?= =?UTF-8?q?=20=E4=BD=BF=E7=94=A8=E5=BC=80=E5=A4=B4=E5=88=A4=E6=96=AD?= =?UTF-8?q?=E9=81=BF=E5=85=8D=E8=AF=AF=E5=88=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../generator/service/GenTableServiceImpl.java | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java index 99935f7fa..3a9cd6138 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java +++ b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java @@ -137,7 +137,7 @@ public class GenTableServiceImpl implements IGenTableService { } // 过滤并转换表格数据 List tables = tablesMap.values().stream() - .filter(x -> !StringUtils.containsAnyIgnoreCase(x.getName(), TABLE_IGNORE)) + .filter(x -> !startWithAnyIgnoreCase(x.getName(), TABLE_IGNORE)) .filter(x -> { if (CollUtil.isEmpty(tableNames)) { return true; @@ -174,6 +174,16 @@ public class GenTableServiceImpl implements IGenTableService { return TableDataInfo.build(page); } + public static boolean startWithAnyIgnoreCase(CharSequence cs, CharSequence... searchCharSequences) { + // 判断是否是以指定字符串开头 + for (CharSequence searchCharSequence : searchCharSequences) { + if (StringUtils.startsWithIgnoreCase(cs, searchCharSequence)) { + return true; + } + } + return false; + } + /** * 查询据库列表 * -- Gitee From 581b6e03d529ade5ca4444b2c1bdfe2d29e2e0d6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 29 Aug 2024 10:49:41 +0800 Subject: [PATCH 153/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20oss?= =?UTF-8?q?=E4=B8=8A=E4=BC=A0=E7=9B=B4=E6=8E=A5=E4=BB=8E=E8=AF=B7=E6=B1=82?= =?UTF-8?q?=E5=A4=B4=E8=8E=B7=E5=8F=96=E6=96=87=E4=BB=B6=E7=B1=BB=E5=9E=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/org/dromara/common/oss/core/OssClient.java | 8 ++++---- .../dromara/system/service/impl/SysOssServiceImpl.java | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java b/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java index 5e300da22..bde26ae1c 100644 --- a/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java +++ b/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java @@ -340,8 +340,8 @@ public class OssClient { * @return UploadResult 包含上传后的文件信息 * @throws OssException 如果上传失败,抛出自定义异常 */ - public UploadResult uploadSuffix(byte[] data, String suffix) { - return upload(new ByteArrayInputStream(data), getPath(properties.getPrefix(), suffix), Long.valueOf(data.length), FileUtils.getMimeType(suffix)); + public UploadResult uploadSuffix(byte[] data, String suffix, String contentType) { + return upload(new ByteArrayInputStream(data), getPath(properties.getPrefix(), suffix), Long.valueOf(data.length), contentType); } /** @@ -353,8 +353,8 @@ public class OssClient { * @return UploadResult 包含上传后的文件信息 * @throws OssException 如果上传失败,抛出自定义异常 */ - public UploadResult uploadSuffix(InputStream inputStream, String suffix, Long length) { - return upload(inputStream, getPath(properties.getPrefix(), suffix), length, FileUtils.getMimeType(suffix)); + public UploadResult uploadSuffix(InputStream inputStream, String suffix, Long length, String contentType) { + return upload(inputStream, getPath(properties.getPrefix(), suffix), length, contentType); } /** diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssServiceImpl.java index 186653182..ba7c179c0 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssServiceImpl.java @@ -195,7 +195,7 @@ public class SysOssServiceImpl implements ISysOssService, OssService { OssClient storage = OssFactory.instance(); UploadResult uploadResult; try { - uploadResult = storage.uploadSuffix(file.getBytes(), suffix); + uploadResult = storage.uploadSuffix(file.getBytes(), suffix, file.getContentType()); } catch (IOException e) { throw new ServiceException(e.getMessage()); } -- Gitee From cac0a4cd169857c7eaad80b5fff1c989d0981bd0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 29 Aug 2024 14:12:07 +0800 Subject: [PATCH 154/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20RegexUtil?= =?UTF-8?q?s#extractFromString=20=E6=96=B9=E6=B3=95=E6=9C=AA=E5=8C=B9?= =?UTF-8?q?=E9=85=8D=E8=BF=94=E5=9B=9Enull=E4=B8=8D=E8=BF=94=E5=9B=9E?= =?UTF-8?q?=E9=BB=98=E8=AE=A4=E5=80=BC=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/org/dromara/common/core/utils/regex/RegexUtils.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/regex/RegexUtils.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/regex/RegexUtils.java index b8b12d43c..6dde12998 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/regex/RegexUtils.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/regex/RegexUtils.java @@ -21,7 +21,8 @@ public final class RegexUtils extends ReUtil { */ public static String extractFromString(String input, String regex, String defaultInput) { try { - return ReUtil.get(regex, input, 1); + String str = ReUtil.get(regex, input, 1); + return str == null ? defaultInput : str; } catch (Exception e) { return defaultInput; } -- Gitee From a3c9edde78cccda0ab36096e365fc5ebc0ae7eee Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 29 Aug 2024 20:53:32 +0800 Subject: [PATCH 155/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20=E5=8D=87?= =?UTF-8?q?=E7=BA=A7=E4=BE=9D=E8=B5=96=E5=AF=BC=E8=87=B4=E7=9A=84=E4=BE=9D?= =?UTF-8?q?=E8=B5=96=E5=86=B2=E7=AA=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 6 ------ ruoyi-common/ruoyi-common-excel/pom.xml | 5 ----- 2 files changed, 11 deletions(-) diff --git a/pom.xml b/pom.xml index 750673b87..c233b9ec6 100644 --- a/pom.xml +++ b/pom.xml @@ -328,12 +328,6 @@ ${undertow.version} - - commons-compress - org.apache.commons - 1.26.2 - - com.alibaba fastjson diff --git a/ruoyi-common/ruoyi-common-excel/pom.xml b/ruoyi-common/ruoyi-common-excel/pom.xml index 14b9410bb..dd4a5eebe 100644 --- a/ruoyi-common/ruoyi-common-excel/pom.xml +++ b/ruoyi-common/ruoyi-common-excel/pom.xml @@ -25,11 +25,6 @@ com.alibaba easyexcel - - commons-compress - org.apache.commons - 1.26.2 - -- Gitee From 918ed0d6d0b6d11ce199cf50d9e8689473291ea0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Sat, 31 Aug 2024 23:30:50 +0800 Subject: [PATCH 156/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E5=88=A0?= =?UTF-8?q?=E9=99=A4=E5=A4=9A=E4=BD=99=E7=9A=84=E5=BC=95=E5=8F=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ruoyi-generator/src/main/resources/vm/java/vo.java.vm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ruoyi-modules/ruoyi-generator/src/main/resources/vm/java/vo.java.vm b/ruoyi-modules/ruoyi-generator/src/main/resources/vm/java/vo.java.vm index c896afbe8..5591f9778 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/resources/vm/java/vo.java.vm +++ b/ruoyi-modules/ruoyi-generator/src/main/resources/vm/java/vo.java.vm @@ -58,7 +58,7 @@ public class ${ClassName}Vo implements Serializable { * ${column.columnComment}Url */ @Translation(type = TransConstant.OSS_ID_TO_URL, mapper = "${column.javaField}") - private String ${column.javaField}Url"; + private String ${column.javaField}Url; #end #end #end -- Gitee From 37f89f560fb4f734dd3ba0d2d1805f777486eefb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Mon, 2 Sep 2024 13:06:20 +0800 Subject: [PATCH 157/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E6=9B=B4?= =?UTF-8?q?=E6=96=B0sql=E5=85=B3=E9=94=AE=E5=AD=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/org/dromara/common/core/utils/sql/SqlUtil.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/sql/SqlUtil.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/sql/SqlUtil.java index 3e109b21a..fcf9fb4b6 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/sql/SqlUtil.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/sql/SqlUtil.java @@ -15,7 +15,7 @@ public class SqlUtil { /** * 定义常用的 sql关键字 */ - public static final String SQL_REGEX = "select |insert |delete |update |drop |count |exec |chr |mid |master |truncate |char |and |declare "; + public static String SQL_REGEX = "and |extractvalue|updatexml|sleep|exec |insert |select |delete |update |drop |count |chr |mid |master |truncate |char |declare |or |union |like |+|/*|user()"; /** * 仅支持字母、数字、下划线、空格、逗号、小数点(支持多个字段排序) -- Gitee From 83dd98faf3cb54f1b84df80384da3a46c2080bec Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Mon, 2 Sep 2024 14:12:02 +0800 Subject: [PATCH 158/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20=E5=BC=80?= =?UTF-8?q?=E5=90=AF=E5=AD=90=E9=83=A8=E9=97=A8=20=E7=88=B6=E9=83=A8?= =?UTF-8?q?=E9=97=A8=E6=9C=AA=E5=85=B3=E8=81=94=E5=BC=80=E5=90=AF=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/dromara/system/service/impl/SysDeptServiceImpl.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java index 160238df3..49b18b7ab 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java @@ -275,6 +275,8 @@ public class SysDeptServiceImpl implements ISysDeptService, DeptService { dept.setAncestors(newAncestors); updateDeptChildren(dept.getDeptId(), newAncestors, oldAncestors); } + } else { + dept.setAncestors(oldDept.getAncestors()); } int result = baseMapper.updateById(dept); if (UserConstants.DEPT_NORMAL.equals(dept.getStatus()) && StringUtils.isNotEmpty(dept.getAncestors()) -- Gitee From df070b7d78d077959bad2ac29017f3a3122910af Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Mon, 2 Sep 2024 14:16:40 +0800 Subject: [PATCH 159/540] =?UTF-8?q?update=20=E8=B0=83=E6=95=B4=20xml=20?= =?UTF-8?q?=E6=A0=BC=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ruoyi-modules/ruoyi-generator/pom.xml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/ruoyi-modules/ruoyi-generator/pom.xml b/ruoyi-modules/ruoyi-generator/pom.xml index b7fd94f59..49060292f 100644 --- a/ruoyi-modules/ruoyi-generator/pom.xml +++ b/ruoyi-modules/ruoyi-generator/pom.xml @@ -64,19 +64,19 @@ - + - + - + -- Gitee From d3360e81b96185dbefe98b1c2f471894cf4166c0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Tue, 3 Sep 2024 13:52:50 +0800 Subject: [PATCH 160/540] update sa-token 1.38.0 => 1.39.0 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index c233b9ec6..e32b113dc 100644 --- a/pom.xml +++ b/pom.xml @@ -23,7 +23,7 @@ 0.15.0 4.0.2 2.3 - 1.38.0 + 1.39.0 3.5.7 3.9.1 5.8.31 -- Gitee From 4044988afa0761ca1e557849c017844fbbf9e21c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Wed, 4 Sep 2024 16:16:53 +0800 Subject: [PATCH 161/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E4=BB=A3?= =?UTF-8?q?=E7=A0=81=E7=94=9F=E6=88=90=E8=8F=9C=E5=8D=95id=E5=8C=B9?= =?UTF-8?q?=E9=85=8D=E5=86=99=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/org/dromara/generator/domain/GenTable.java | 2 +- .../java/org/dromara/generator/service/GenTableServiceImpl.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/domain/GenTable.java b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/domain/GenTable.java index f792cebc2..f2d725709 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/domain/GenTable.java +++ b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/domain/GenTable.java @@ -162,7 +162,7 @@ public class GenTable extends BaseEntity { * 上级菜单ID字段 */ @TableField(exist = false) - private String parentMenuId; + private Long parentMenuId; /** * 上级菜单名称字段 diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java index 3a9cd6138..bb8b444fc 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java +++ b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java @@ -558,7 +558,7 @@ public class GenTableServiceImpl implements IGenTableService { String treeCode = paramsObj.getStr(GenConstants.TREE_CODE); String treeParentCode = paramsObj.getStr(GenConstants.TREE_PARENT_CODE); String treeName = paramsObj.getStr(GenConstants.TREE_NAME); - String parentMenuId = paramsObj.getStr(GenConstants.PARENT_MENU_ID); + Long parentMenuId = paramsObj.getLong(GenConstants.PARENT_MENU_ID); String parentMenuName = paramsObj.getStr(GenConstants.PARENT_MENU_NAME); genTable.setTreeCode(treeCode); -- Gitee From df9cc881f10af931bb62443ba8022d6ce61d4478 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 5 Sep 2024 18:50:00 +0800 Subject: [PATCH 162/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E8=BF=9E?= =?UTF-8?q?=E6=8E=A5SSE=20token=E8=BF=87=E6=9C=9F=E5=AF=BC=E8=87=B4?= =?UTF-8?q?=E7=9A=84=20Servlet=E5=BC=82=E5=B8=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../web/handler/GlobalExceptionHandler.java | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/handler/GlobalExceptionHandler.java b/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/handler/GlobalExceptionHandler.java index 061d3aa45..bd801baed 100644 --- a/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/handler/GlobalExceptionHandler.java +++ b/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/handler/GlobalExceptionHandler.java @@ -2,6 +2,7 @@ package org.dromara.common.web.handler; import cn.hutool.core.util.ObjectUtil; import cn.hutool.http.HttpStatus; +import jakarta.servlet.ServletException; import jakarta.servlet.http.HttpServletRequest; import jakarta.validation.ConstraintViolation; import jakarta.validation.ConstraintViolationException; @@ -10,6 +11,7 @@ import org.dromara.common.core.domain.R; import org.dromara.common.core.exception.ServiceException; import org.dromara.common.core.exception.base.BaseException; import org.dromara.common.core.utils.StreamUtils; +import org.dromara.common.core.utils.StringUtils; import org.springframework.context.support.DefaultMessageSourceResolvable; import org.springframework.validation.BindException; import org.springframework.web.HttpRequestMethodNotSupportedException; @@ -53,6 +55,22 @@ public class GlobalExceptionHandler { return ObjectUtil.isNotNull(code) ? R.fail(code, e.getMessage()) : R.fail(e.getMessage()); } + /** + * servlet异常 + */ + @ExceptionHandler(ServletException.class) + public R handleServletException(ServletException e, HttpServletRequest request) { + if (StringUtils.contains(e.getMessage(), "NotLoginException")) { + String requestURI = request.getRequestURI(); + log.error("请求地址'{}',认证失败'{}',无法访问系统资源", requestURI, e.getMessage()); + return R.fail(HttpStatus.HTTP_UNAUTHORIZED, "认证失败,无法访问系统资源"); + } else { + String requestURI = request.getRequestURI(); + log.error("请求地址'{}',发生未知异常.", requestURI, e); + return R.fail(e.getMessage()); + } + } + /** * 业务异常 */ -- Gitee From f20130d3db798e817f9a22e385fdd5b40e8f6904 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 5 Sep 2024 18:50:28 +0800 Subject: [PATCH 163/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20commons-io?= =?UTF-8?q?=20=E4=BE=9D=E8=B5=96=E5=86=B2=E7=AA=81=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/pom.xml b/pom.xml index e32b113dc..5aa3b81b7 100644 --- a/pom.xml +++ b/pom.xml @@ -328,6 +328,12 @@ ${undertow.version} + + commons-io + commons-io + 2.15.0 + + com.alibaba fastjson -- Gitee From 6886e9fd5b195484cb67d91166e4b64639773e99 Mon Sep 17 00:00:00 2001 From: AprilWind <2100166581@qq.com> Date: Fri, 6 Sep 2024 14:14:15 +0800 Subject: [PATCH 164/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=E6=9F=A5?= =?UTF-8?q?=E8=AF=A2=E7=94=A8=E6=88=B7=E6=97=B6=E5=A4=9A=E4=BD=99=E9=87=8D?= =?UTF-8?q?=E5=A4=8D=E5=88=A4=E6=96=AD=E4=BB=A5=E5=8F=8A=E5=8E=BB=E9=87=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/SysUserServiceImpl.java | 40 +++++++++++++++++-- 1 file changed, 37 insertions(+), 3 deletions(-) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java index 254060688..d304e38f9 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java @@ -42,6 +42,7 @@ import org.springframework.transaction.annotation.Transactional; import java.util.ArrayList; import java.util.List; import java.util.Map; +import java.util.stream.Collectors; /** * 用户 业务层处理 @@ -628,6 +629,12 @@ public class SysUserServiceImpl implements ISysUserService, UserService { return ObjectUtil.isNull(sysUser) ? null : sysUser.getEmail(); } + /** + * 通过用户ID查询用户列表 + * + * @param userIds 用户ids + * @return 用户列表 + */ @Override public List selectListByIds(List userIds) { if (CollUtil.isEmpty(userIds)) { @@ -636,28 +643,55 @@ public class SysUserServiceImpl implements ISysUserService, UserService { List list = baseMapper.selectVoList(new LambdaQueryWrapper() .select(SysUser::getUserId, SysUser::getUserName, SysUser::getNickName, SysUser::getEmail, SysUser::getPhonenumber) .eq(SysUser::getStatus, UserConstants.USER_NORMAL) - .in(CollUtil.isNotEmpty(userIds), SysUser::getUserId, userIds)); + .in(SysUser::getUserId, userIds)); return BeanUtil.copyToList(list, UserDTO.class); } + /** + * 通过角色ID查询用户ID + * + * @param roleIds 角色ids + * @return 用户ids + */ @Override public List selectUserIdsByRoleIds(List roleIds) { + if (CollUtil.isEmpty(roleIds)) { + return List.of(); + } List userRoles = userRoleMapper.selectList( new LambdaQueryWrapper().in(SysUserRole::getRoleId, roleIds)); return StreamUtils.toList(userRoles, SysUserRole::getUserId); } + /** + * 通过角色ID查询用户 + * + * @param roleIds 角色ids + * @return 用户 + */ @Override public List selectUsersByRoleIds(List roleIds) { if (CollUtil.isEmpty(roleIds)) { return List.of(); } + + // 通过角色ID获取用户角色信息 List userRoles = userRoleMapper.selectList( new LambdaQueryWrapper().in(SysUserRole::getRoleId, roleIds)); - List userIds = StreamUtils.toList(userRoles, SysUserRole::getUserId); + + // 获取用户ID列表 + List userIds = userRoles.stream() + .map(SysUserRole::getUserId).distinct().collect(Collectors.toList()); + return selectListByIds(userIds); } + /** + * 通过部门ID查询用户 + * + * @param deptIds 部门ids + * @return 用户 + */ @Override public List selectUsersByDeptIds(List deptIds) { if (CollUtil.isEmpty(deptIds)) { @@ -666,7 +700,7 @@ public class SysUserServiceImpl implements ISysUserService, UserService { List list = baseMapper.selectVoList(new LambdaQueryWrapper() .select(SysUser::getUserId, SysUser::getUserName, SysUser::getNickName, SysUser::getEmail, SysUser::getPhonenumber) .eq(SysUser::getStatus, UserConstants.USER_NORMAL) - .in(CollUtil.isNotEmpty(deptIds), SysUser::getDeptId, deptIds)); + .in(SysUser::getDeptId, deptIds)); return BeanUtil.copyToList(list, UserDTO.class); } } -- Gitee From 32ad28c3dc31eb052730ec07fc579286a8446c86 Mon Sep 17 00:00:00 2001 From: AprilWind <2100166581@qq.com> Date: Fri, 6 Sep 2024 14:24:06 +0800 Subject: [PATCH 165/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=E9=80=9A?= =?UTF-8?q?=E8=BF=87=E8=A7=92=E8=89=B2ID=E6=9F=A5=E8=AF=A2=E7=94=A8?= =?UTF-8?q?=E6=88=B7=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dromara/system/service/impl/SysUserServiceImpl.java | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java index d304e38f9..8c6d1d5f5 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java @@ -42,7 +42,7 @@ import org.springframework.transaction.annotation.Transactional; import java.util.ArrayList; import java.util.List; import java.util.Map; -import java.util.stream.Collectors; +import java.util.Set; /** * 用户 业务层处理 @@ -680,10 +680,9 @@ public class SysUserServiceImpl implements ISysUserService, UserService { new LambdaQueryWrapper().in(SysUserRole::getRoleId, roleIds)); // 获取用户ID列表 - List userIds = userRoles.stream() - .map(SysUserRole::getUserId).distinct().collect(Collectors.toList()); + Set userIds = StreamUtils.toSet(userRoles, SysUserRole::getUserId); - return selectListByIds(userIds); + return selectListByIds(new ArrayList<>(userIds)); } /** -- Gitee From 760c8d720090c33616ce1c8400531f75c6d9b34f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Mon, 9 Sep 2024 11:30:40 +0800 Subject: [PATCH 166/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E6=8F=90?= =?UTF-8?q?=E4=BE=9B=E7=94=9F=E4=BA=A7=E7=8E=AF=E5=A2=83=E9=BB=98=E8=AE=A4?= =?UTF-8?q?=E7=BB=84=E9=85=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- script/sql/oracle/snail_job_oracle.sql | 1 + script/sql/postgres/snail_job_postgre.sql | 1 + script/sql/snail_job.sql | 1 + script/sql/sqlserver/snail_job_sqlserver.sql | 2 ++ 4 files changed, 5 insertions(+) diff --git a/script/sql/oracle/snail_job_oracle.sql b/script/sql/oracle/snail_job_oracle.sql index d2e17c1f0..da65dbbf6 100644 --- a/script/sql/oracle/snail_job_oracle.sql +++ b/script/sql/oracle/snail_job_oracle.sql @@ -74,6 +74,7 @@ COMMENT ON COLUMN sj_group_config.update_dt IS '修改时间'; COMMENT ON TABLE sj_group_config IS '组配置'; INSERT INTO sj_group_config (namespace_id, group_name, description, token, group_status, version, group_partition, id_generator_mode, init_scene, bucket_index, create_dt, update_dt) VALUES ('dev', 'ruoyi_group', '', 'SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT', 1, 1, 0, 1, 1, 4, sysdate, sysdate); +INSERT INTO sj_group_config (namespace_id, group_name, description, token, group_status, version, group_partition, id_generator_mode, init_scene, bucket_index, create_dt, update_dt) VALUES ('prod', 'ruoyi_group', '', 'SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT', 1, 1, 0, 1, 1, 4, sysdate, sysdate); -- sj_notify_config CREATE TABLE sj_notify_config diff --git a/script/sql/postgres/snail_job_postgre.sql b/script/sql/postgres/snail_job_postgre.sql index c8abc6816..546db3cc8 100644 --- a/script/sql/postgres/snail_job_postgre.sql +++ b/script/sql/postgres/snail_job_postgre.sql @@ -68,6 +68,7 @@ COMMENT ON COLUMN sj_group_config.update_dt IS '修改时间'; COMMENT ON TABLE sj_group_config IS '组配置'; INSERT INTO sj_group_config VALUES (1, 'dev', 'ruoyi_group', '', 'SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT', 1, 1, 0, 1, 1, 4, now(), now()); +INSERT INTO sj_group_config VALUES (2, 'prod', 'ruoyi_group', '', 'SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT', 1, 1, 0, 1, 1, 4, now(), now()); -- sj_notify_config CREATE TABLE sj_notify_config diff --git a/script/sql/snail_job.sql b/script/sql/snail_job.sql index c3aa7601b..396798ee0 100644 --- a/script/sql/snail_job.sql +++ b/script/sql/snail_job.sql @@ -40,6 +40,7 @@ CREATE TABLE `sj_group_config` DEFAULT CHARSET = utf8mb4 COMMENT ='组配置'; INSERT INTO `sj_group_config` VALUES (1, 'dev', 'ruoyi_group', '', 'SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT', 1, 1, 0, 1, 1, 4, now(), now()); +INSERT INTO `sj_group_config` VALUES (2, 'prod', 'ruoyi_group', '', 'SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT', 1, 1, 0, 1, 1, 4, now(), now()); CREATE TABLE `sj_notify_config` ( diff --git a/script/sql/sqlserver/snail_job_sqlserver.sql b/script/sql/sqlserver/snail_job_sqlserver.sql index 249842b98..bcf87f668 100644 --- a/script/sql/sqlserver/snail_job_sqlserver.sql +++ b/script/sql/sqlserver/snail_job_sqlserver.sql @@ -203,6 +203,8 @@ GO INSERT INTO sj_group_config(namespace_id, group_name, description, token, group_status, version, group_partition, id_generator_mode, init_scene, bucket_index, create_dt, update_dt) VALUES (N'dev', N'ruoyi_group', N'', N'SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT', N'1', N'1', N'0', N'1', N'1', N'4', getdate(), getdate()) GO +INSERT INTO sj_group_config(namespace_id, group_name, description, token, group_status, version, group_partition, id_generator_mode, init_scene, bucket_index, create_dt, update_dt) VALUES (N'prod', N'ruoyi_group', N'', N'SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT', N'1', N'1', N'0', N'1', N'1', N'4', getdate(), getdate()) +GO -- sj_notify_config CREATE TABLE sj_notify_config -- Gitee From 6ea2a2fc515d565556d8bf3ab8ad3e1cf07d1f5e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Mon, 9 Sep 2024 11:37:02 +0800 Subject: [PATCH 167/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E7=BB=9F?= =?UTF-8?q?=E4=B8=80sql=E6=96=87=E4=BB=B6=E5=91=BD=E5=90=8D=E6=96=B9?= =?UTF-8?q?=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- script/sql/oracle/{snail_job_oracle.sql => oracle_ry_job.sql} | 0 script/sql/oracle/{flowable.sql => oracle_ry_workflow.sql} | 0 .../sql/postgres/{snail_job_postgre.sql => postgres_ry_job.sql} | 0 script/sql/postgres/{flowable.sql => postgres_ry_workflow.sql} | 0 script/sql/{snail_job.sql => ry_job.sql} | 0 script/sql/{flowable.sql => ry_workflow.sql} | 0 .../sqlserver/{snail_job_sqlserver.sql => sqlserver_ry_job.sql} | 0 script/sql/sqlserver/{flowable.sql => sqlserver_ry_workflow.sql} | 0 8 files changed, 0 insertions(+), 0 deletions(-) rename script/sql/oracle/{snail_job_oracle.sql => oracle_ry_job.sql} (100%) rename script/sql/oracle/{flowable.sql => oracle_ry_workflow.sql} (100%) rename script/sql/postgres/{snail_job_postgre.sql => postgres_ry_job.sql} (100%) rename script/sql/postgres/{flowable.sql => postgres_ry_workflow.sql} (100%) rename script/sql/{snail_job.sql => ry_job.sql} (100%) rename script/sql/{flowable.sql => ry_workflow.sql} (100%) rename script/sql/sqlserver/{snail_job_sqlserver.sql => sqlserver_ry_job.sql} (100%) rename script/sql/sqlserver/{flowable.sql => sqlserver_ry_workflow.sql} (100%) diff --git a/script/sql/oracle/snail_job_oracle.sql b/script/sql/oracle/oracle_ry_job.sql similarity index 100% rename from script/sql/oracle/snail_job_oracle.sql rename to script/sql/oracle/oracle_ry_job.sql diff --git a/script/sql/oracle/flowable.sql b/script/sql/oracle/oracle_ry_workflow.sql similarity index 100% rename from script/sql/oracle/flowable.sql rename to script/sql/oracle/oracle_ry_workflow.sql diff --git a/script/sql/postgres/snail_job_postgre.sql b/script/sql/postgres/postgres_ry_job.sql similarity index 100% rename from script/sql/postgres/snail_job_postgre.sql rename to script/sql/postgres/postgres_ry_job.sql diff --git a/script/sql/postgres/flowable.sql b/script/sql/postgres/postgres_ry_workflow.sql similarity index 100% rename from script/sql/postgres/flowable.sql rename to script/sql/postgres/postgres_ry_workflow.sql diff --git a/script/sql/snail_job.sql b/script/sql/ry_job.sql similarity index 100% rename from script/sql/snail_job.sql rename to script/sql/ry_job.sql diff --git a/script/sql/flowable.sql b/script/sql/ry_workflow.sql similarity index 100% rename from script/sql/flowable.sql rename to script/sql/ry_workflow.sql diff --git a/script/sql/sqlserver/snail_job_sqlserver.sql b/script/sql/sqlserver/sqlserver_ry_job.sql similarity index 100% rename from script/sql/sqlserver/snail_job_sqlserver.sql rename to script/sql/sqlserver/sqlserver_ry_job.sql diff --git a/script/sql/sqlserver/flowable.sql b/script/sql/sqlserver/sqlserver_ry_workflow.sql similarity index 100% rename from script/sql/sqlserver/flowable.sql rename to script/sql/sqlserver/sqlserver_ry_workflow.sql -- Gitee From f9b7d955aa56454039cb87fa58bbea37d38b917e Mon Sep 17 00:00:00 2001 From: AprilWind <2100166581@qq.com> Date: Tue, 10 Sep 2024 10:15:01 +0800 Subject: [PATCH 168/540] =?UTF-8?q?add=20=E6=96=B0=E5=A2=9ETreeUtil?= =?UTF-8?q?=E8=8E=B7=E5=8F=96=E8=8A=82=E7=82=B9=E5=88=97=E8=A1=A8=E4=B8=AD?= =?UTF-8?q?=E6=89=80=E6=9C=89=E8=8A=82=E7=82=B9=E7=9A=84=E5=8F=B6=E5=AD=90?= =?UTF-8?q?=E8=8A=82=E7=82=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/core/utils/TreeBuildUtils.java | 48 ++++++++++++++++++- 1 file changed, 46 insertions(+), 2 deletions(-) diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/TreeBuildUtils.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/TreeBuildUtils.java index d0163e643..8e501dfea 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/TreeBuildUtils.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/TreeBuildUtils.java @@ -5,11 +5,13 @@ import cn.hutool.core.lang.tree.Tree; import cn.hutool.core.lang.tree.TreeNodeConfig; import cn.hutool.core.lang.tree.TreeUtil; import cn.hutool.core.lang.tree.parser.NodeParser; -import org.dromara.common.core.utils.reflect.ReflectUtils; import lombok.AccessLevel; import lombok.NoArgsConstructor; +import org.dromara.common.core.utils.reflect.ReflectUtils; import java.util.List; +import java.util.stream.Collectors; +import java.util.stream.Stream; /** * 扩展 hutool TreeUtil 封装系统树构建 @@ -24,12 +26,54 @@ public class TreeBuildUtils extends TreeUtil { */ public static final TreeNodeConfig DEFAULT_CONFIG = TreeNodeConfig.DEFAULT_CONFIG.setNameKey("label"); + /** + * 构建树形结构 + * + * @param 输入节点的类型 + * @param 节点ID的类型 + * @param list 节点列表,其中包含了要构建树形结构的所有节点 + * @param nodeParser 解析器,用于将输入节点转换为树节点 + * @return 构建好的树形结构列表 + */ public static List> build(List list, NodeParser nodeParser) { if (CollUtil.isEmpty(list)) { - return null; + return CollUtil.newArrayList(); } K k = ReflectUtils.invokeGetter(list.get(0), "parentId"); return TreeUtil.build(list, k, DEFAULT_CONFIG, nodeParser); } + /** + * 获取节点列表中所有节点的叶子节点 + * + * @param 节点ID的类型 + * @param nodes 节点列表 + * @return 包含所有叶子节点的列表 + */ + public static List> getLeafNodes(List> nodes) { + if (CollUtil.isEmpty(nodes)) { + return CollUtil.newArrayList(); + } + return nodes.stream() + .flatMap(TreeBuildUtils::extractLeafNodes) + .collect(Collectors.toList()); + } + + /** + * 获取指定节点下的所有叶子节点 + * + * @param 节点ID的类型 + * @param node 要查找叶子节点的根节点 + * @return 包含所有叶子节点的列表 + */ + private static Stream> extractLeafNodes(Tree node) { + if (!node.hasChild()) { + return Stream.of(node); + } else { + // 递归调用,获取所有子节点的叶子节点 + return node.getChildren().stream() + .flatMap(TreeBuildUtils::extractLeafNodes); + } + } + } -- Gitee From 8b44f5cdbc947529bc3552cceeae64b354687c08 Mon Sep 17 00:00:00 2001 From: sushuai Date: Tue, 10 Sep 2024 12:05:08 +0800 Subject: [PATCH 169/540] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=EF=BC=9A=E5=B7=A5?= =?UTF-8?q?=E4=BD=9C=E6=B5=81=E4=B8=AD=EF=BC=88=E6=88=91=E7=9A=84=E5=BE=85?= =?UTF-8?q?=E5=8A=9E=E3=80=81=E6=88=91=E7=9A=84=E5=B7=B2=E5=8A=9E=E3=80=81?= =?UTF-8?q?=E6=88=91=E7=9A=84=E6=8A=84=E9=80=81=E9=BB=98=E8=AE=A4=EF=BC=89?= =?UTF-8?q?=E7=9A=84=E5=88=86=E9=A1=B5=E6=9F=A5=E8=AF=A2=E8=AF=AD=E5=8F=A5?= =?UTF-8?q?=E4=B8=8D=E5=85=BC=E5=AE=B9sqlserver=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dromara/workflow/service/impl/ActTaskServiceImpl.java | 3 +++ .../src/main/resources/mapper/workflow/ActTaskMapper.xml | 7 +++---- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActTaskServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActTaskServiceImpl.java index 5235d1265..d9a674a78 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActTaskServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActTaskServiceImpl.java @@ -277,6 +277,7 @@ public class ActTaskServiceImpl implements IActTaskService { if (StringUtils.isNotBlank(taskBo.getProcessDefinitionKey())) { queryWrapper.eq("t.processDefinitionKey", taskBo.getProcessDefinitionKey()); } + queryWrapper.orderByDesc("t.CREATE_TIME_"); Page page = actTaskMapper.getTaskWaitByPage(pageQuery.build(), queryWrapper); List taskList = page.getRecords(); @@ -366,6 +367,7 @@ public class ActTaskServiceImpl implements IActTaskService { queryWrapper.like(StringUtils.isNotBlank(taskBo.getProcessDefinitionName()), "t.processDefinitionName", taskBo.getProcessDefinitionName()); queryWrapper.eq(StringUtils.isNotBlank(taskBo.getProcessDefinitionKey()), "t.processDefinitionKey", taskBo.getProcessDefinitionKey()); queryWrapper.eq("t.assignee_", userId); + queryWrapper.orderByDesc("t.START_TIME_"); Page page = actTaskMapper.getTaskFinishByPage(pageQuery.build(), queryWrapper); List taskList = page.getRecords(); @@ -402,6 +404,7 @@ public class ActTaskServiceImpl implements IActTaskService { queryWrapper.eq("t.processDefinitionKey", taskBo.getProcessDefinitionKey()); } queryWrapper.eq("t.assignee_", userId); + queryWrapper.orderByDesc("t.START_TIME_"); Page page = actTaskMapper.getTaskCopyByPage(pageQuery.build(), queryWrapper); List taskList = page.getRecords(); diff --git a/ruoyi-modules/ruoyi-workflow/src/main/resources/mapper/workflow/ActTaskMapper.xml b/ruoyi-modules/ruoyi-workflow/src/main/resources/mapper/workflow/ActTaskMapper.xml index d1508abca..36419009a 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/resources/mapper/workflow/ActTaskMapper.xml +++ b/ruoyi-modules/ruoyi-workflow/src/main/resources/mapper/workflow/ActTaskMapper.xml @@ -41,8 +41,7 @@ FROM ACT_RU_TASK RES INNER JOIN ACT_HI_PROCINST AHP ON RES.PROC_INST_ID_ = AHP.PROC_INST_ID_ INNER JOIN ACT_RE_PROCDEF ARP ON ARP.ID_ = RES.PROC_DEF_ID_ - WHERE RES.PARENT_TASK_ID_ IS NULL - ORDER BY RES.CREATE_TIME_ DESC) t ${ew.getCustomSqlSegment} + WHERE RES.PARENT_TASK_ID_ IS NULL) t ${ew.getCustomSqlSegment} -- Gitee From b522bc015d1d194d67197879f556041e361cbba9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Wed, 11 Sep 2024 10:23:16 +0800 Subject: [PATCH 170/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E6=93=8D?= =?UTF-8?q?=E4=BD=9C=E6=97=A5=E5=BF=97=E6=9F=A5=E8=AF=A2=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/SysOperLogServiceImpl.java | 43 +++++++------------ 1 file changed, 16 insertions(+), 27 deletions(-) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOperLogServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOperLogServiceImpl.java index b78b9dcc8..750e455ac 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOperLogServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOperLogServiceImpl.java @@ -3,18 +3,18 @@ package org.dromara.system.service.impl; import cn.hutool.core.util.ArrayUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import lombok.RequiredArgsConstructor; import org.dromara.common.core.utils.MapstructUtils; -import org.dromara.common.mybatis.core.page.PageQuery; -import org.dromara.common.mybatis.core.page.TableDataInfo; import org.dromara.common.core.utils.StringUtils; import org.dromara.common.core.utils.ip.AddressUtils; import org.dromara.common.log.event.OperLogEvent; +import org.dromara.common.mybatis.core.page.PageQuery; +import org.dromara.common.mybatis.core.page.TableDataInfo; import org.dromara.system.domain.SysOperLog; import org.dromara.system.domain.bo.SysOperLogBo; import org.dromara.system.domain.vo.SysOperLogVo; import org.dromara.system.mapper.SysOperLogMapper; import org.dromara.system.service.ISysOperLogService; -import lombok.RequiredArgsConstructor; import org.springframework.context.event.EventListener; import org.springframework.scheduling.annotation.Async; import org.springframework.stereotype.Service; @@ -51,8 +51,18 @@ public class SysOperLogServiceImpl implements ISysOperLogService { @Override public TableDataInfo selectPageOperLogList(SysOperLogBo operLog, PageQuery pageQuery) { + LambdaQueryWrapper lqw = buildQueryWrapper(operLog); + if (StringUtils.isBlank(pageQuery.getOrderByColumn())) { + pageQuery.setOrderByColumn("oper_id"); + pageQuery.setIsAsc("desc"); + } + Page page = baseMapper.selectVoPage(pageQuery.build(), lqw); + return TableDataInfo.build(page); + } + + private LambdaQueryWrapper buildQueryWrapper(SysOperLogBo operLog) { Map params = operLog.getParams(); - LambdaQueryWrapper lqw = new LambdaQueryWrapper() + return new LambdaQueryWrapper() .like(StringUtils.isNotBlank(operLog.getOperIp()), SysOperLog::getOperIp, operLog.getOperIp()) .like(StringUtils.isNotBlank(operLog.getTitle()), SysOperLog::getTitle, operLog.getTitle()) .eq(operLog.getBusinessType() != null && operLog.getBusinessType() > 0, @@ -67,12 +77,6 @@ public class SysOperLogServiceImpl implements ISysOperLogService { .like(StringUtils.isNotBlank(operLog.getOperName()), SysOperLog::getOperName, operLog.getOperName()) .between(params.get("beginTime") != null && params.get("endTime") != null, SysOperLog::getOperTime, params.get("beginTime"), params.get("endTime")); - if (StringUtils.isBlank(pageQuery.getOrderByColumn())) { - pageQuery.setOrderByColumn("oper_id"); - pageQuery.setIsAsc("desc"); - } - Page page = baseMapper.selectVoPage(pageQuery.build(), lqw); - return TableDataInfo.build(page); } /** @@ -95,23 +99,8 @@ public class SysOperLogServiceImpl implements ISysOperLogService { */ @Override public List selectOperLogList(SysOperLogBo operLog) { - Map params = operLog.getParams(); - return baseMapper.selectVoList(new LambdaQueryWrapper() - .like(StringUtils.isNotBlank(operLog.getOperIp()), SysOperLog::getOperIp, operLog.getOperIp()) - .like(StringUtils.isNotBlank(operLog.getTitle()), SysOperLog::getTitle, operLog.getTitle()) - .eq(operLog.getBusinessType() != null && operLog.getBusinessType() > 0, - SysOperLog::getBusinessType, operLog.getBusinessType()) - .func(f -> { - if (ArrayUtil.isNotEmpty(operLog.getBusinessTypes())) { - f.in(SysOperLog::getBusinessType, Arrays.asList(operLog.getBusinessTypes())); - } - }) - .eq(operLog.getStatus() != null && operLog.getStatus() > 0, - SysOperLog::getStatus, operLog.getStatus()) - .like(StringUtils.isNotBlank(operLog.getOperName()), SysOperLog::getOperName, operLog.getOperName()) - .between(params.get("beginTime") != null && params.get("endTime") != null, - SysOperLog::getOperTime, params.get("beginTime"), params.get("endTime")) - .orderByDesc(SysOperLog::getOperId)); + LambdaQueryWrapper lqw = buildQueryWrapper(operLog); + return baseMapper.selectVoList(lqw.orderByDesc(SysOperLog::getOperId)); } /** -- Gitee From 5e3231d59b46adfb6e44cd4b4fb17ece12c931a9 Mon Sep 17 00:00:00 2001 From: AprilWind <2100166581@qq.com> Date: Wed, 11 Sep 2024 04:02:16 +0000 Subject: [PATCH 171/540] =?UTF-8?q?!582=20=E4=BC=98=E5=8C=96admin=E9=85=8D?= =?UTF-8?q?=E7=BD=AE=E6=96=87=E4=BB=B6=E8=AF=BB=E5=8F=96=20*=20update=20?= =?UTF-8?q?=E4=BC=98=E5=8C=96admin=E7=9B=91=E6=8E=A7=E9=85=8D=E7=BD=AE?= =?UTF-8?q?=E8=AF=BB=E5=8F=96=E5=90=8D=E7=A7=B0=20*=20update=20=E4=BC=98?= =?UTF-8?q?=E5=8C=96admin=E7=9B=91=E6=8E=A7=E9=85=8D=E7=BD=AE=E8=AF=BB?= =?UTF-8?q?=E5=8F=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 6 ++++++ ruoyi-admin/src/main/resources/application-dev.yml | 4 ++-- ruoyi-admin/src/main/resources/application-prod.yml | 4 ++-- .../src/main/resources/application.yml | 8 ++++---- .../src/main/resources/application-dev.yml | 4 ++-- .../src/main/resources/application-prod.yml | 4 ++-- 6 files changed, 18 insertions(+), 12 deletions(-) diff --git a/pom.xml b/pom.xml index 5aa3b81b7..e624eeb98 100644 --- a/pom.xml +++ b/pom.xml @@ -69,6 +69,8 @@ local info + ruoyi + 123456 @@ -77,6 +79,8 @@ dev info + ruoyi + 123456
@@ -88,6 +92,8 @@ prod warn + ruoyi + 123456 diff --git a/ruoyi-admin/src/main/resources/application-dev.yml b/ruoyi-admin/src/main/resources/application-dev.yml index 5e20daee7..f12202050 100644 --- a/ruoyi-admin/src/main/resources/application-dev.yml +++ b/ruoyi-admin/src/main/resources/application-dev.yml @@ -8,8 +8,8 @@ spring.boot.admin.client: metadata: username: ${spring.boot.admin.client.username} userpassword: ${spring.boot.admin.client.password} - username: ruoyi - password: 123456 + username: @monitor.username@ + password: @monitor.password@ --- # snail-job 配置 snail-job: diff --git a/ruoyi-admin/src/main/resources/application-prod.yml b/ruoyi-admin/src/main/resources/application-prod.yml index 2823bba11..192eb7ed6 100644 --- a/ruoyi-admin/src/main/resources/application-prod.yml +++ b/ruoyi-admin/src/main/resources/application-prod.yml @@ -11,8 +11,8 @@ spring.boot.admin.client: metadata: username: ${spring.boot.admin.client.username} userpassword: ${spring.boot.admin.client.password} - username: ruoyi - password: 123456 + username: @monitor.username@ + password: @monitor.password@ --- # snail-job 配置 snail-job: diff --git a/ruoyi-extend/ruoyi-monitor-admin/src/main/resources/application.yml b/ruoyi-extend/ruoyi-monitor-admin/src/main/resources/application.yml index beee58775..622c93d3c 100644 --- a/ruoyi-extend/ruoyi-monitor-admin/src/main/resources/application.yml +++ b/ruoyi-extend/ruoyi-monitor-admin/src/main/resources/application.yml @@ -13,8 +13,8 @@ logging: spring: security: user: - name: ruoyi - password: 123456 + name: @monitor.username@ + password: @monitor.password@ boot: admin: ui: @@ -44,5 +44,5 @@ spring.boot.admin.client: metadata: username: ${spring.boot.admin.client.username} userpassword: ${spring.boot.admin.client.password} - username: ruoyi - password: 123456 + username: @monitor.username@ + password: @monitor.password@ diff --git a/ruoyi-extend/ruoyi-snailjob-server/src/main/resources/application-dev.yml b/ruoyi-extend/ruoyi-snailjob-server/src/main/resources/application-dev.yml index cbe40be1e..3ed797cf6 100644 --- a/ruoyi-extend/ruoyi-snailjob-server/src/main/resources/application-dev.yml +++ b/ruoyi-extend/ruoyi-snailjob-server/src/main/resources/application-dev.yml @@ -46,5 +46,5 @@ spring.boot.admin.client: metadata: username: ${spring.boot.admin.client.username} userpassword: ${spring.boot.admin.client.password} - username: ruoyi - password: 123456 + username: @monitor.username@ + password: @monitor.password@ diff --git a/ruoyi-extend/ruoyi-snailjob-server/src/main/resources/application-prod.yml b/ruoyi-extend/ruoyi-snailjob-server/src/main/resources/application-prod.yml index 3ba983c2b..1d830dbe7 100644 --- a/ruoyi-extend/ruoyi-snailjob-server/src/main/resources/application-prod.yml +++ b/ruoyi-extend/ruoyi-snailjob-server/src/main/resources/application-prod.yml @@ -46,5 +46,5 @@ spring.boot.admin.client: metadata: username: ${spring.boot.admin.client.username} userpassword: ${spring.boot.admin.client.password} - username: ruoyi - password: 123456 + username: @monitor.username@ + password: @monitor.password@ -- Gitee From 020f090f4a419cfb1b57e0c4f538637b8d795cb2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Wed, 11 Sep 2024 15:59:54 +0800 Subject: [PATCH 172/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E5=88=A0?= =?UTF-8?q?=E9=99=A4okhttp=E6=97=A0=E7=94=A8=E7=89=88=E6=9C=AC=E9=99=90?= =?UTF-8?q?=E5=88=B6(spring=E5=B7=B2=E7=BB=8F=E9=99=90=E5=88=B6=E8=BF=87?= =?UTF-8?q?=E4=BA=86)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 7 ------- 1 file changed, 7 deletions(-) diff --git a/pom.xml b/pom.xml index e624eeb98..2cd2a813c 100644 --- a/pom.xml +++ b/pom.xml @@ -27,7 +27,6 @@ 3.5.7 3.9.1 5.8.31 - 4.10.0 3.2.3 3.34.1 2.2.7 @@ -231,12 +230,6 @@ ${p6spy.version} - - com.squareup.okhttp3 - okhttp - ${okhttp.version} - - software.amazon.awssdk -- Gitee From a7fd7ba72cd0c232b7c3e18ac79ea90273677e35 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Wed, 11 Sep 2024 16:00:39 +0800 Subject: [PATCH 173/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20=E4=B8=B4?= =?UTF-8?q?=E6=97=B6=E5=A4=84=E7=90=86=20scala=E5=BA=93=E7=89=88=E6=9C=AC?= =?UTF-8?q?=E6=BC=8F=E6=B4=9E=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ruoyi-extend/ruoyi-snailjob-server/pom.xml | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/ruoyi-extend/ruoyi-snailjob-server/pom.xml b/ruoyi-extend/ruoyi-snailjob-server/pom.xml index 7348b29e7..0b3afd325 100644 --- a/ruoyi-extend/ruoyi-snailjob-server/pom.xml +++ b/ruoyi-extend/ruoyi-snailjob-server/pom.xml @@ -16,6 +16,18 @@ com.aizuda snail-job-server-starter ${snailjob.version} + + + org.scala-lang + scala-library + + + + + + org.scala-lang + scala-library + 2.13.9 -- Gitee From e5e8e3ce7c23e161e9281be5588f04d613cb5191 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 12 Sep 2024 16:58:47 +0800 Subject: [PATCH 174/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E7=A7=9F?= =?UTF-8?q?=E6=88=B7=E7=8A=B6=E6=80=81=E6=9B=B4=E6=94=B9=E6=8E=A5=E5=8F=A3?= =?UTF-8?q?=E4=B8=A5=E8=B0=A8=E6=80=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dromara/system/service/impl/SysTenantServiceImpl.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java index 65380f221..63b82dd07 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java @@ -268,7 +268,10 @@ public class SysTenantServiceImpl implements ISysTenantService { @CacheEvict(cacheNames = CacheNames.SYS_TENANT, key = "#bo.tenantId") @Override public int updateTenantStatus(SysTenantBo bo) { - SysTenant tenant = MapstructUtils.convert(bo, SysTenant.class); + SysTenant tenant = new SysTenant(); + tenant.setId(bo.getId()); + tenant.setTenantId(bo.getTenantId()); + tenant.setStatus(bo.getStatus()); return baseMapper.updateById(tenant); } -- Gitee From f3f3593cfef2872a80f590a4201ea78d8d4d1861 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 13 Sep 2024 09:38:56 +0800 Subject: [PATCH 175/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E5=88=A0?= =?UTF-8?q?=E9=99=A4=E4=B8=8D=E5=BA=94=E8=AF=A5set=E7=9A=84=E5=B1=9E?= =?UTF-8?q?=E6=80=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/dromara/system/service/impl/SysTenantServiceImpl.java | 1 - 1 file changed, 1 deletion(-) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java index 63b82dd07..7d6ca5b3e 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java @@ -270,7 +270,6 @@ public class SysTenantServiceImpl implements ISysTenantService { public int updateTenantStatus(SysTenantBo bo) { SysTenant tenant = new SysTenant(); tenant.setId(bo.getId()); - tenant.setTenantId(bo.getTenantId()); tenant.setStatus(bo.getStatus()); return baseMapper.updateById(tenant); } -- Gitee From 64d9b27310797a74c63f9ccdd256140eb46c8577 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 13 Sep 2024 14:41:01 +0800 Subject: [PATCH 176/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E5=88=A4?= =?UTF-8?q?=E6=96=AD=E5=BD=93=E5=89=8D=E4=BC=9A=E8=AF=9D=E6=98=AF=E5=90=A6?= =?UTF-8?q?=E5=B7=B2=E7=BB=8F=E7=99=BB=E5=BD=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/tenant/helper/TenantHelper.java | 16 +++------------- 1 file changed, 3 insertions(+), 13 deletions(-) diff --git a/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/helper/TenantHelper.java b/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/helper/TenantHelper.java index b18561267..1a5ea1a76 100644 --- a/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/helper/TenantHelper.java +++ b/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/helper/TenantHelper.java @@ -1,6 +1,5 @@ package org.dromara.common.tenant.helper; -import cn.dev33.satoken.stp.StpUtil; import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.convert.Convert; import cn.hutool.core.util.ObjectUtil; @@ -130,7 +129,7 @@ public class TenantHelper { if (!isEnable()) { return; } - if (!isLogin() || !global) { + if (!LoginHelper.isLogin() || !global) { TEMP_DYNAMIC_TENANT.set(tenantId); return; } @@ -147,7 +146,7 @@ public class TenantHelper { if (!isEnable()) { return null; } - if (!isLogin()) { + if (!LoginHelper.isLogin()) { return TEMP_DYNAMIC_TENANT.get(); } // 如果线程内有值 优先返回 @@ -167,7 +166,7 @@ public class TenantHelper { if (!isEnable()) { return; } - if (!isLogin()) { + if (!LoginHelper.isLogin()) { TEMP_DYNAMIC_TENANT.remove(); return; } @@ -218,13 +217,4 @@ public class TenantHelper { return tenantId; } - private static boolean isLogin() { - try { - StpUtil.checkLogin(); - return true; - } catch (Exception e) { - return false; - } - } - } -- Gitee From 1c3d5949473f05ee3d7b656e8f52953a13ce94ae Mon Sep 17 00:00:00 2001 From: AprilWind <2100166581@qq.com> Date: Fri, 13 Sep 2024 15:00:16 +0800 Subject: [PATCH 177/540] =?UTF-8?q?docs=20=E6=9F=A5=E8=AF=A2=E8=A1=A8?= =?UTF-8?q?=E5=90=8D=E5=88=97=E8=A1=A8=E5=A2=9E=E5=8A=A0=E6=B3=A8=E9=87=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/dromara/generator/mapper/GenTableMapper.java | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/mapper/GenTableMapper.java b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/mapper/GenTableMapper.java index 63f4c1512..1798b4b60 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/mapper/GenTableMapper.java +++ b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/mapper/GenTableMapper.java @@ -2,10 +2,8 @@ package org.dromara.generator.mapper; import com.baomidou.dynamic.datasource.annotation.DS; import com.baomidou.mybatisplus.annotation.InterceptorIgnore; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; import org.dromara.generator.domain.GenTable; -import org.apache.ibatis.annotations.Param; import java.util.List; @@ -40,6 +38,14 @@ public interface GenTableMapper extends BaseMapperPlus { */ GenTable selectGenTableByName(String tableName); + /** + * 查询指定数据源下的所有表名列表 + * + * @param dataName 数据源名称,用于选择不同的数据源 + * @return 当前数据库中的表名列表 + * + * @DS("") 使用默认数据源执行查询操作 + */ @DS("") List selectTableNameList(String dataName); } -- Gitee From e33f76d7107fbab735558aaef08874b9e8e8d386 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 13 Sep 2024 17:42:12 +0800 Subject: [PATCH 178/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E5=8E=BB?= =?UTF-8?q?=E9=99=A4=E8=BF=94=E5=9B=9E=E5=89=8D=E7=AB=AF=E7=9A=84=E5=BC=82?= =?UTF-8?q?=E5=B8=B8=E4=BF=A1=E6=81=AF=E9=87=8C=E5=8C=85=E5=90=ABhtml?= =?UTF-8?q?=E6=A0=87=E7=AD=BE=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/dromara/system/listener/SysUserImportListener.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/listener/SysUserImportListener.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/listener/SysUserImportListener.java index 1ea8f2dad..25b62a9d9 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/listener/SysUserImportListener.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/listener/SysUserImportListener.java @@ -3,6 +3,7 @@ package org.dromara.system.listener; import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.util.ObjectUtil; import cn.hutool.crypto.digest.BCrypt; +import cn.hutool.http.HtmlUtil; import com.alibaba.excel.context.AnalysisContext; import com.alibaba.excel.event.AnalysisEventListener; import jakarta.validation.ConstraintViolation; @@ -82,7 +83,7 @@ public class SysUserImportListener extends AnalysisEventListener Date: Fri, 13 Sep 2024 18:02:44 +0800 Subject: [PATCH 179/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E5=85=A8?= =?UTF-8?q?=E5=B1=80=E5=BC=80=E5=90=AFxss=E8=BF=87=E6=BB=A4=20=E6=8F=90?= =?UTF-8?q?=E9=AB=98=E5=AE=89=E5=85=A8=E6=80=A7=20=E4=B8=8Ecloud=E7=89=88?= =?UTF-8?q?=E6=9C=AC=E4=BF=9D=E6=8C=81=E4=B8=80=E8=87=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ruoyi-admin/src/main/resources/application.yml | 7 ++++--- .../dromara/common/web/config/FilterConfig.java | 11 ++--------- .../web/config/properties/XssProperties.java | 16 +++++++--------- .../org/dromara/common/web/filter/XssFilter.java | 11 ++++------- 4 files changed, 17 insertions(+), 28 deletions(-) diff --git a/ruoyi-admin/src/main/resources/application.yml b/ruoyi-admin/src/main/resources/application.yml index 5d94bef93..82d0f1e50 100644 --- a/ruoyi-admin/src/main/resources/application.yml +++ b/ruoyi-admin/src/main/resources/application.yml @@ -223,9 +223,10 @@ xss: # 过滤开关 enabled: true # 排除链接(多个用逗号分隔) - excludes: /system/notice - # 匹配链接 - urlPatterns: /system/*,/monitor/*,/tool/* + excludeUrls: + - /system/notice + - /workflow/model/save + - /workflow/model/editModelXml # 全局线程池相关配置 # 如使用JDK21请直接使用虚拟线程 不要开启此配置 diff --git a/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/config/FilterConfig.java b/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/config/FilterConfig.java index 91fff76b6..bc27d6f3e 100644 --- a/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/config/FilterConfig.java +++ b/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/config/FilterConfig.java @@ -1,19 +1,15 @@ package org.dromara.common.web.config; -import org.dromara.common.core.utils.StringUtils; +import jakarta.servlet.DispatcherType; import org.dromara.common.web.config.properties.XssProperties; import org.dromara.common.web.filter.RepeatableFilter; import org.dromara.common.web.filter.XssFilter; -import jakarta.servlet.DispatcherType; import org.springframework.boot.autoconfigure.AutoConfiguration; import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; import org.springframework.boot.context.properties.EnableConfigurationProperties; import org.springframework.boot.web.servlet.FilterRegistrationBean; import org.springframework.context.annotation.Bean; -import java.util.HashMap; -import java.util.Map; - /** * Filter配置 * @@ -30,12 +26,9 @@ public class FilterConfig { FilterRegistrationBean registration = new FilterRegistrationBean(); registration.setDispatcherTypes(DispatcherType.REQUEST); registration.setFilter(new XssFilter()); - registration.addUrlPatterns(StringUtils.split(xssProperties.getUrlPatterns(), StringUtils.SEPARATOR)); + registration.addUrlPatterns("/*"); registration.setName("xssFilter"); registration.setOrder(FilterRegistrationBean.HIGHEST_PRECEDENCE); - Map initParameters = new HashMap<>(); - initParameters.put("excludes", xssProperties.getExcludes()); - registration.setInitParameters(initParameters); return registration; } diff --git a/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/config/properties/XssProperties.java b/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/config/properties/XssProperties.java index ecf4f33dc..bd3e59b17 100644 --- a/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/config/properties/XssProperties.java +++ b/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/config/properties/XssProperties.java @@ -3,6 +3,9 @@ package org.dromara.common.web.config.properties; import lombok.Data; import org.springframework.boot.context.properties.ConfigurationProperties; +import java.util.ArrayList; +import java.util.List; + /** * xss过滤 配置属性 * @@ -13,18 +16,13 @@ import org.springframework.boot.context.properties.ConfigurationProperties; public class XssProperties { /** - * 过滤开关 - */ - private String enabled; - - /** - * 排除链接(多个用逗号分隔) + * Xss开关 */ - private String excludes; + private Boolean enabled; /** - * 匹配链接 + * 排除路径 */ - private String urlPatterns; + private List excludeUrls = new ArrayList<>(); } diff --git a/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/filter/XssFilter.java b/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/filter/XssFilter.java index a6cbe8c58..95bcdd99a 100644 --- a/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/filter/XssFilter.java +++ b/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/filter/XssFilter.java @@ -1,6 +1,8 @@ package org.dromara.common.web.filter; +import org.dromara.common.core.utils.SpringUtils; import org.dromara.common.core.utils.StringUtils; +import org.dromara.common.web.config.properties.XssProperties; import org.springframework.http.HttpMethod; import jakarta.servlet.*; @@ -23,13 +25,8 @@ public class XssFilter implements Filter { @Override public void init(FilterConfig filterConfig) throws ServletException { - String tempExcludes = filterConfig.getInitParameter("excludes"); - if (StringUtils.isNotEmpty(tempExcludes)) { - String[] url = tempExcludes.split(StringUtils.SEPARATOR); - for (int i = 0; url != null && i < url.length; i++) { - excludes.add(url[i]); - } - } + XssProperties properties = SpringUtils.getBean(XssProperties.class); + excludes.addAll(properties.getExcludeUrls()); } @Override -- Gitee From 74af811a3b856277ac125b15b5e66cbc5fae37d8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Wed, 18 Sep 2024 18:07:28 +0800 Subject: [PATCH 180/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E5=88=A0?= =?UTF-8?q?=E9=99=A4=E6=8E=89=E6=9C=89=E9=97=AE=E9=A2=98=E7=9A=84=E6=96=B9?= =?UTF-8?q?=E6=B3=95(=E4=BD=BF=E7=94=A8RedisUtils)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dromara/common/redis/utils/CacheUtils.java | 18 ++---------------- 1 file changed, 2 insertions(+), 16 deletions(-) diff --git a/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/utils/CacheUtils.java b/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/utils/CacheUtils.java index 42a88d678..865ffa502 100644 --- a/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/utils/CacheUtils.java +++ b/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/utils/CacheUtils.java @@ -1,19 +1,15 @@ package org.dromara.common.redis.utils; -import org.dromara.common.core.utils.SpringUtils; import lombok.AccessLevel; import lombok.NoArgsConstructor; -import org.redisson.api.RMap; +import org.dromara.common.core.utils.SpringUtils; import org.springframework.cache.Cache; import org.springframework.cache.CacheManager; -import java.util.Set; - /** - * 缓存操作工具类 {@link } + * 缓存操作工具类 * * @author Michelle.Chung - * @date 2022/8/13 */ @NoArgsConstructor(access = AccessLevel.PRIVATE) @SuppressWarnings(value = {"unchecked"}) @@ -21,16 +17,6 @@ public class CacheUtils { private static final CacheManager CACHE_MANAGER = SpringUtils.getBean(CacheManager.class); - /** - * 获取缓存组内所有的KEY - * - * @param cacheNames 缓存组名称 - */ - public static Set keys(String cacheNames) { - RMap rmap = (RMap) CACHE_MANAGER.getCache(cacheNames).getNativeCache(); - return rmap.keySet(); - } - /** * 获取缓存值 * -- Gitee From 272ca613ee64154882111851a06f3e182fedba8a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 19 Sep 2024 13:45:57 +0800 Subject: [PATCH 181/540] =?UTF-8?q?update=20mybatis-plus=203.5.7=20=3D>=20?= =?UTF-8?q?3.5.8=20=E4=BB=A3=E7=A0=81=E9=80=82=E9=85=8D=E6=9B=B4=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 2 +- .../mybatis/core/mapper/BaseMapperPlus.java | 26 +++++-------------- .../handler/PlusDataPermissionHandler.java | 4 +-- 3 files changed, 9 insertions(+), 23 deletions(-) diff --git a/pom.xml b/pom.xml index 2cd2a813c..608c0cf56 100644 --- a/pom.xml +++ b/pom.xml @@ -24,7 +24,7 @@ 4.0.2 2.3 1.39.0 - 3.5.7 + 3.5.8 3.9.1 5.8.31 3.2.3 diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/core/mapper/BaseMapperPlus.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/core/mapper/BaseMapperPlus.java index 956be9fb9..a8a1e8667 100644 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/core/mapper/BaseMapperPlus.java +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/core/mapper/BaseMapperPlus.java @@ -18,9 +18,7 @@ import java.io.Serializable; import java.util.Collection; import java.util.List; import java.util.Map; -import java.util.Objects; import java.util.function.Function; -import java.util.stream.Collectors; /** * 自定义 Mapper 接口, 实现 自定义扩展 @@ -69,9 +67,7 @@ public interface BaseMapperPlus extends BaseMapper { * @return 插入操作是否成功的布尔值 */ default boolean insertBatch(Collection entityList) { - Db.saveBatch(entityList); - // 临时解决 新版本 mp 插入状态判断错误问题 - return true; + return Db.saveBatch(entityList); } /** @@ -81,9 +77,7 @@ public interface BaseMapperPlus extends BaseMapper { * @return 更新操作是否成功的布尔值 */ default boolean updateBatchById(Collection entityList) { - Db.updateBatchById(entityList); - // 临时解决 新版本 mp 插入状态判断错误问题 - return true; + return Db.updateBatchById(entityList); } /** @@ -93,9 +87,7 @@ public interface BaseMapperPlus extends BaseMapper { * @return 插入或更新操作是否成功的布尔值 */ default boolean insertOrUpdateBatch(Collection entityList) { - Db.saveOrUpdateBatch(entityList); - // 临时解决 新版本 mp 插入状态判断错误问题 - return true; + return Db.saveOrUpdateBatch(entityList); } /** @@ -106,9 +98,7 @@ public interface BaseMapperPlus extends BaseMapper { * @return 插入操作是否成功的布尔值 */ default boolean insertBatch(Collection entityList, int batchSize) { - Db.saveBatch(entityList, batchSize); - // 临时解决 新版本 mp 插入状态判断错误问题 - return true; + return Db.saveBatch(entityList, batchSize); } /** @@ -119,9 +109,7 @@ public interface BaseMapperPlus extends BaseMapper { * @return 更新操作是否成功的布尔值 */ default boolean updateBatchById(Collection entityList, int batchSize) { - Db.updateBatchById(entityList, batchSize); - // 临时解决 新版本 mp 插入状态判断错误问题 - return true; + return Db.updateBatchById(entityList, batchSize); } /** @@ -132,9 +120,7 @@ public interface BaseMapperPlus extends BaseMapper { * @return 插入或更新操作是否成功的布尔值 */ default boolean insertOrUpdateBatch(Collection entityList, int batchSize) { - Db.saveOrUpdateBatch(entityList, batchSize); - // 临时解决 新版本 mp 插入状态判断错误问题 - return true; + return Db.saveOrUpdateBatch(entityList, batchSize); } /** diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/PlusDataPermissionHandler.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/PlusDataPermissionHandler.java index 5ac74c321..ab7e0f6e4 100644 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/PlusDataPermissionHandler.java +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/PlusDataPermissionHandler.java @@ -6,8 +6,8 @@ import cn.hutool.core.util.ObjectUtil; import lombok.extern.slf4j.Slf4j; import net.sf.jsqlparser.JSQLParserException; import net.sf.jsqlparser.expression.Expression; -import net.sf.jsqlparser.expression.Parenthesis; import net.sf.jsqlparser.expression.operators.conditional.AndExpression; +import net.sf.jsqlparser.expression.operators.relational.ParenthesedExpressionList; import net.sf.jsqlparser.parser.CCJSqlParserUtil; import org.apache.ibatis.io.Resources; import org.dromara.common.core.domain.dto.RoleDTO; @@ -106,7 +106,7 @@ public class PlusDataPermissionHandler { try { Expression expression = CCJSqlParserUtil.parseExpression(dataFilterSql); // 数据权限使用单独的括号 防止与其他条件冲突 - Parenthesis parenthesis = new Parenthesis(expression); + ParenthesedExpressionList parenthesis = new ParenthesedExpressionList<>(expression); if (ObjectUtil.isNotNull(where)) { return new AndExpression(where, parenthesis); } else { -- Gitee From d86652dee1d6a29af7e3ce2f6dd448aec3174321 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 19 Sep 2024 13:55:46 +0800 Subject: [PATCH 182/540] update easyexcel 4.0.2 => 4.0.3 update redisson 3.34.1 => 3.36.0 --- pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index 608c0cf56..18f5ba399 100644 --- a/pom.xml +++ b/pom.xml @@ -21,14 +21,14 @@ 3.5.16 2.6.0 0.15.0 - 4.0.2 + 4.0.3 2.3 1.39.0 3.5.8 3.9.1 5.8.31 3.2.3 - 3.34.1 + 3.36.0 2.2.7 4.3.1 1.1.2 -- Gitee From 501be029c6b64c2b1ccdb04bfab59c273fb37a0f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 19 Sep 2024 17:40:42 +0800 Subject: [PATCH 183/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20sse=20?= =?UTF-8?q?=E5=BC=82=E5=B8=B8=E5=8D=95=E7=8B=AC=E5=A4=84=E7=90=86=20?= =?UTF-8?q?=E9=81=BF=E5=85=8D=E5=87=BA=E7=8E=B0=E5=BC=82=E5=B8=B8=E6=8A=A5?= =?UTF-8?q?=E9=94=99=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/core/exception/SseException.java | 62 +++++++++++++++++++ .../security/config/SecurityConfig.java | 15 ++++- .../web/handler/GlobalExceptionHandler.java | 25 +++++--- 3 files changed, 90 insertions(+), 12 deletions(-) create mode 100644 ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/exception/SseException.java diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/exception/SseException.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/exception/SseException.java new file mode 100644 index 000000000..a76e16d9c --- /dev/null +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/exception/SseException.java @@ -0,0 +1,62 @@ +package org.dromara.common.core.exception; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +import java.io.Serial; + +/** + * sse 特制异常 + * + * @author LionLi + */ +@Data +@EqualsAndHashCode(callSuper = true) +@NoArgsConstructor +@AllArgsConstructor +public final class SseException extends RuntimeException { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 错误码 + */ + private Integer code; + + /** + * 错误提示 + */ + private String message; + + /** + * 错误明细,内部调试错误 + */ + private String detailMessage; + + public SseException(String message) { + this.message = message; + } + + public SseException(String message, Integer code) { + this.message = message; + this.code = code; + } + + @Override + public String getMessage() { + return message; + } + + public SseException setMessage(String message) { + this.message = message; + return this; + } + + public SseException setDetailMessage(String detailMessage) { + this.detailMessage = detailMessage; + return this; + } +} diff --git a/ruoyi-common/ruoyi-common-security/src/main/java/org/dromara/common/security/config/SecurityConfig.java b/ruoyi-common/ruoyi-common-security/src/main/java/org/dromara/common/security/config/SecurityConfig.java index 5fd49d133..a4e921f23 100644 --- a/ruoyi-common/ruoyi-common-security/src/main/java/org/dromara/common/security/config/SecurityConfig.java +++ b/ruoyi-common/ruoyi-common-security/src/main/java/org/dromara/common/security/config/SecurityConfig.java @@ -7,9 +7,11 @@ import cn.dev33.satoken.interceptor.SaInterceptor; import cn.dev33.satoken.router.SaRouter; import cn.dev33.satoken.stp.StpUtil; import cn.dev33.satoken.util.SaResult; +import jakarta.servlet.http.HttpServletRequest; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.dromara.common.core.constant.HttpStatus; +import org.dromara.common.core.exception.SseException; import org.dromara.common.core.utils.ServletUtils; import org.dromara.common.core.utils.SpringUtils; import org.dromara.common.core.utils.StringUtils; @@ -50,11 +52,20 @@ public class SecurityConfig implements WebMvcConfigurer { .match(allUrlHandler.getUrls()) // 对未排除的路径进行检查 .check(() -> { + HttpServletRequest request = ServletUtils.getRequest(); // 检查是否登录 是否有token - StpUtil.checkLogin(); + try { + StpUtil.checkLogin(); + } catch (NotLoginException e) { + if (request.getRequestURI().contains("sse")) { + throw new SseException(e.getMessage(), e.getCode()); + } else { + throw e; + } + } // 检查 header 与 param 里的 clientid 与 token 里的是否一致 - String headerCid = ServletUtils.getRequest().getHeader(LoginHelper.CLIENT_KEY); + String headerCid = request.getHeader(LoginHelper.CLIENT_KEY); String paramCid = ServletUtils.getParameter(LoginHelper.CLIENT_KEY); String clientId = StpUtil.getExtra(LoginHelper.CLIENT_KEY).toString(); if (!StringUtils.equalsAny(clientId, headerCid, paramCid)) { diff --git a/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/handler/GlobalExceptionHandler.java b/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/handler/GlobalExceptionHandler.java index bd801baed..56c9e9f0a 100644 --- a/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/handler/GlobalExceptionHandler.java +++ b/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/handler/GlobalExceptionHandler.java @@ -9,9 +9,9 @@ import jakarta.validation.ConstraintViolationException; import lombok.extern.slf4j.Slf4j; import org.dromara.common.core.domain.R; import org.dromara.common.core.exception.ServiceException; +import org.dromara.common.core.exception.SseException; import org.dromara.common.core.exception.base.BaseException; import org.dromara.common.core.utils.StreamUtils; -import org.dromara.common.core.utils.StringUtils; import org.springframework.context.support.DefaultMessageSourceResolvable; import org.springframework.validation.BindException; import org.springframework.web.HttpRequestMethodNotSupportedException; @@ -55,20 +55,25 @@ public class GlobalExceptionHandler { return ObjectUtil.isNotNull(code) ? R.fail(code, e.getMessage()) : R.fail(e.getMessage()); } + /** + * 认证失败 + */ + @ResponseStatus(org.springframework.http.HttpStatus.UNAUTHORIZED) + @ExceptionHandler(SseException.class) + public String handleNotLoginException(SseException e, HttpServletRequest request) { + String requestURI = request.getRequestURI(); + log.error("请求地址'{}',认证失败'{}',无法访问系统资源", requestURI, e.getMessage()); + return e.getMessage(); + } + /** * servlet异常 */ @ExceptionHandler(ServletException.class) public R handleServletException(ServletException e, HttpServletRequest request) { - if (StringUtils.contains(e.getMessage(), "NotLoginException")) { - String requestURI = request.getRequestURI(); - log.error("请求地址'{}',认证失败'{}',无法访问系统资源", requestURI, e.getMessage()); - return R.fail(HttpStatus.HTTP_UNAUTHORIZED, "认证失败,无法访问系统资源"); - } else { - String requestURI = request.getRequestURI(); - log.error("请求地址'{}',发生未知异常.", requestURI, e); - return R.fail(e.getMessage()); - } + String requestURI = request.getRequestURI(); + log.error("请求地址'{}',发生未知异常.", requestURI, e); + return R.fail(e.getMessage()); } /** -- Gitee From 2add7291ab70fa0607a18b0c77e81997ba1865a7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 19 Sep 2024 17:53:41 +0800 Subject: [PATCH 184/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20sse=20?= =?UTF-8?q?=E5=BC=82=E5=B8=B8=E5=8D=95=E7=8B=AC=E5=A4=84=E7=90=86=20?= =?UTF-8?q?=E9=81=BF=E5=85=8D=E5=87=BA=E7=8E=B0=E5=BC=82=E5=B8=B8=E6=8A=A5?= =?UTF-8?q?=E9=94=99=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/dromara/common/web/handler/GlobalExceptionHandler.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/handler/GlobalExceptionHandler.java b/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/handler/GlobalExceptionHandler.java index 56c9e9f0a..42c6087ad 100644 --- a/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/handler/GlobalExceptionHandler.java +++ b/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/handler/GlobalExceptionHandler.java @@ -12,6 +12,7 @@ import org.dromara.common.core.exception.ServiceException; import org.dromara.common.core.exception.SseException; import org.dromara.common.core.exception.base.BaseException; import org.dromara.common.core.utils.StreamUtils; +import org.dromara.common.json.utils.JsonUtils; import org.springframework.context.support.DefaultMessageSourceResolvable; import org.springframework.validation.BindException; import org.springframework.web.HttpRequestMethodNotSupportedException; @@ -63,7 +64,7 @@ public class GlobalExceptionHandler { public String handleNotLoginException(SseException e, HttpServletRequest request) { String requestURI = request.getRequestURI(); log.error("请求地址'{}',认证失败'{}',无法访问系统资源", requestURI, e.getMessage()); - return e.getMessage(); + return JsonUtils.toJsonString(R.fail(HttpStatus.HTTP_UNAUTHORIZED, "认证失败,无法访问系统资源")); } /** -- Gitee From 88ee252fce5e1709df2b0c135723d5965a249090 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 19 Sep 2024 18:09:03 +0800 Subject: [PATCH 185/540] update springboot 3.2.9 => 3.2.10 --- pom.xml | 19 +------------------ ruoyi-common/ruoyi-common-web/pom.xml | 13 ------------- 2 files changed, 1 insertion(+), 31 deletions(-) diff --git a/pom.xml b/pom.xml index 18f5ba399..084758c05 100644 --- a/pom.xml +++ b/pom.xml @@ -14,7 +14,7 @@ 5.2.2 - 3.2.9 + 3.2.10 UTF-8 UTF-8 17 @@ -39,7 +39,6 @@ 1.16.6 2.7.0 - 2.3.15.Final 2.25.15 @@ -311,22 +310,6 @@ ${ip2region.version} - - io.undertow - undertow-core - ${undertow.version} - - - io.undertow - undertow-servlet - ${undertow.version} - - - io.undertow - undertow-websockets-jsr - ${undertow.version} - - commons-io commons-io diff --git a/ruoyi-common/ruoyi-common-web/pom.xml b/ruoyi-common/ruoyi-common-web/pom.xml index 5e366bc3b..b250fa9d0 100644 --- a/ruoyi-common/ruoyi-common-web/pom.xml +++ b/ruoyi-common/ruoyi-common-web/pom.xml @@ -43,19 +43,6 @@ spring-boot-starter-undertow - - io.undertow - undertow-core - - - io.undertow - undertow-servlet - - - io.undertow - undertow-websockets-jsr - - org.springframework.boot spring-boot-starter-actuator -- Gitee From 6b05ddb576d21884c89214f3910f6f8405779105 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 19 Sep 2024 23:13:00 +0800 Subject: [PATCH 186/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20redis?= =?UTF-8?q?=E6=93=8D=E4=BD=9C=20=E5=A6=82=E6=9E=9C=E6=97=A0=E6=B3=95?= =?UTF-8?q?=E5=BF=BD=E7=95=A5=E7=A7=9F=E6=88=B7id=E5=88=99=E5=85=A8?= =?UTF-8?q?=E5=B1=80=E5=A4=84=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/org/dromara/common/redis/utils/RedisUtils.java | 4 ++-- .../common/tenant/handle/TenantKeyPrefixHandler.java | 6 ++++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/utils/RedisUtils.java b/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/utils/RedisUtils.java index 67be2fb76..6fa3b7485 100644 --- a/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/utils/RedisUtils.java +++ b/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/utils/RedisUtils.java @@ -517,7 +517,7 @@ public class RedisUtils { } /** - * 获得缓存的基本对象列表 + * 获得缓存的基本对象列表(全局匹配忽略租户 自行拼接租户id) * * @param pattern 字符串前缀 * @return 对象列表 @@ -528,7 +528,7 @@ public class RedisUtils { } /** - * 删除缓存的基本对象列表 + * 删除缓存的基本对象列表(全局匹配忽略租户 自行拼接租户id) * * @param pattern 字符串前缀 */ diff --git a/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/handle/TenantKeyPrefixHandler.java b/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/handle/TenantKeyPrefixHandler.java index 947539863..65f523395 100644 --- a/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/handle/TenantKeyPrefixHandler.java +++ b/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/handle/TenantKeyPrefixHandler.java @@ -35,7 +35,8 @@ public class TenantKeyPrefixHandler extends KeyPrefixHandler { } String tenantId = TenantHelper.getTenantId(); if (StringUtils.isBlank(tenantId)) { - log.error("无法获取有效的租户id -> Null"); + log.debug("无法获取有效的租户id -> Null"); + return super.map(name); } if (StringUtils.startsWith(name, tenantId + "")) { // 如果存在则直接返回 @@ -61,7 +62,8 @@ public class TenantKeyPrefixHandler extends KeyPrefixHandler { } String tenantId = TenantHelper.getTenantId(); if (StringUtils.isBlank(tenantId)) { - log.error("无法获取有效的租户id -> Null"); + log.debug("无法获取有效的租户id -> Null"); + return super.unmap(name); } if (StringUtils.startsWith(unmap, tenantId + "")) { // 如果存在则删除 -- Gitee From 64289c16f308d664107da850cf2d4c36c3927f1b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 20 Sep 2024 15:43:56 +0800 Subject: [PATCH 187/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E9=80=82?= =?UTF-8?q?=E9=85=8Dmp=E6=96=B0=E7=89=88=E6=9C=AC=20=E6=96=B9=E6=B3=95?= =?UTF-8?q?=E5=90=8D=E6=94=B9=E5=8A=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/mybatis/core/mapper/BaseMapperPlus.java | 8 ++++---- .../main/java/org/dromara/demo/mapper/TestDemoMapper.java | 2 +- .../dromara/demo/service/impl/TestDemoServiceImpl.java | 2 +- .../dromara/system/service/impl/SysOssServiceImpl.java | 2 +- .../workflow/service/impl/WfFormManageServiceImpl.java | 2 +- 5 files changed, 8 insertions(+), 8 deletions(-) diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/core/mapper/BaseMapperPlus.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/core/mapper/BaseMapperPlus.java index a8a1e8667..24557edb6 100644 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/core/mapper/BaseMapperPlus.java +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/core/mapper/BaseMapperPlus.java @@ -155,8 +155,8 @@ public interface BaseMapperPlus extends BaseMapper { * @param idList 主键ID集合 * @return 查询到的VO对象列表 */ - default List selectVoBatchIds(Collection idList) { - return selectVoBatchIds(idList, this.currentVoClass()); + default List selectVoByIds(Collection idList) { + return selectVoByIds(idList, this.currentVoClass()); } /** @@ -167,8 +167,8 @@ public interface BaseMapperPlus extends BaseMapper { * @param VO类的类型 * @return 查询到的VO对象列表,经过转换为指定的VO类后返回 */ - default List selectVoBatchIds(Collection idList, Class voClass) { - List list = this.selectBatchIds(idList); + default List selectVoByIds(Collection idList, Class voClass) { + List list = this.selectByIds(idList); if (CollUtil.isEmpty(list)) { return CollUtil.newArrayList(); } diff --git a/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/mapper/TestDemoMapper.java b/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/mapper/TestDemoMapper.java index 6aeeb5062..57efdc7da 100644 --- a/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/mapper/TestDemoMapper.java +++ b/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/mapper/TestDemoMapper.java @@ -48,7 +48,7 @@ public interface TestDemoMapper extends BaseMapperPlus { @DataColumn(key = "deptName", value = "dept_id"), @DataColumn(key = "userName", value = "user_id") }, joinStr = "AND") - List selectBatchIds(@Param(Constants.COLL) Collection idList); + List selectByIds(@Param(Constants.COLL) Collection idList); @Override @DataPermission({ diff --git a/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/service/impl/TestDemoServiceImpl.java b/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/service/impl/TestDemoServiceImpl.java index 3cfde3a2d..ced141ef6 100644 --- a/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/service/impl/TestDemoServiceImpl.java +++ b/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/service/impl/TestDemoServiceImpl.java @@ -101,7 +101,7 @@ public class TestDemoServiceImpl implements ITestDemoService { public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { if (isValid) { // 做一些业务上的校验,判断是否需要校验 - List list = baseMapper.selectBatchIds(ids); + List list = baseMapper.selectByIds(ids); if (list.size() != ids.size()) { throw new ServiceException("您没有删除权限!"); } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssServiceImpl.java index ba7c179c0..f58f06166 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssServiceImpl.java @@ -244,7 +244,7 @@ public class SysOssServiceImpl implements ISysOssService, OssService { if (isValid) { // 做一些业务上的校验,判断是否需要校验 } - List list = baseMapper.selectBatchIds(ids); + List list = baseMapper.selectByIds(ids); for (SysOss sysOss : list) { OssClient storage = OssFactory.instance(sysOss.getService()); storage.delete(sysOss.getUrl()); diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WfFormManageServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WfFormManageServiceImpl.java index da2e777d0..55e491178 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WfFormManageServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WfFormManageServiceImpl.java @@ -41,7 +41,7 @@ public class WfFormManageServiceImpl implements IWfFormManageService { @Override public List queryByIds(List ids) { - return baseMapper.selectVoBatchIds(ids); + return baseMapper.selectVoByIds(ids); } /** -- Gitee From e3a25f24257770daa767ad7a8c74c8756997777a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Tue, 24 Sep 2024 18:17:49 +0800 Subject: [PATCH 188/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20=E4=BB=A3?= =?UTF-8?q?=E7=A0=81=E7=94=9F=E6=88=90=E5=99=A8=20postgres=20=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E5=BA=93=E4=B8=BB=E9=94=AE=E7=B1=BB=E5=9E=8B=E6=98=A0?= =?UTF-8?q?=E5=B0=84=E9=94=99=E8=AF=AF=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/org/dromara/generator/constant/GenConstants.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/constant/GenConstants.java b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/constant/GenConstants.java index c345f2206..8986d3821 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/constant/GenConstants.java +++ b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/constant/GenConstants.java @@ -61,7 +61,7 @@ public interface GenConstants { /** * 数据库数字类型 */ - String[] COLUMNTYPE_NUMBER = {"tinyint", "smallint", "mediumint", "int", "number", "integer", + String[] COLUMNTYPE_NUMBER = {"tinyint", "smallint", "mediumint", "int", "int2", "int4", "int8", "number", "integer", "bit", "bigint", "float", "double", "decimal", "numeric", "real", "double precision", "smallserial", "serial", "bigserial", "money", "smallmoney"}; -- Gitee From 46141dc1144928a595e3270a1ec6cf3b9703cc02 Mon Sep 17 00:00:00 2001 From: Zyyi <37397058+LionZzzi@users.noreply.github.com> Date: Wed, 25 Sep 2024 10:00:33 +0800 Subject: [PATCH 189/540] =?UTF-8?q?fix(postgres=E6=95=B0=E6=8D=AE=E5=BA=93?= =?UTF-8?q?=E8=84=9A=E6=9C=AC):=20=E5=8F=98=E6=9B=B4=E7=A7=9F=E6=88=B7?= =?UTF-8?q?=E7=AE=A1=E7=90=86=E7=9B=AE=E5=BD=95=E7=9A=84=E4=B8=BB=E8=8F=9C?= =?UTF-8?q?=E5=8D=95=E4=B8=BA=E7=A7=9F=E6=88=B7=E7=AE=A1=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- script/sql/postgres/postgres_ry_vue_5.X.sql | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/script/sql/postgres/postgres_ry_vue_5.X.sql b/script/sql/postgres/postgres_ry_vue_5.X.sql index 995d7382c..fabea6048 100644 --- a/script/sql/postgres/postgres_ry_vue_5.X.sql +++ b/script/sql/postgres/postgres_ry_vue_5.X.sql @@ -427,7 +427,7 @@ comment on column sys_menu.remark is '备注'; -- ---------------------------- -- 一级菜单 insert into sys_menu values('1', '系统管理', '0', '1', 'system', null, '', '1', '0', 'M', '0', '0', '', 'system', 103, 1, now(), null, null, '系统管理目录'); -insert into sys_menu values('6', '系统管理', '0', '2', 'tenant', null, '', '1', '0', 'M', '0', '0', '', 'chart', 103, 1, now(), null, null, '租户管理目录'); +insert into sys_menu values('6', '租户管理', '0', '2', 'tenant', null, '', '1', '0', 'M', '0', '0', '', 'chart', 103, 1, now(), null, null, '租户管理目录'); insert into sys_menu values('2', '系统监控', '0', '3', 'monitor', null, '', '1', '0', 'M', '0', '0', '', 'monitor', 103, 1, now(), null, null, '系统监控目录'); insert into sys_menu values('3', '系统工具', '0', '4', 'tool', null, '', '1', '0', 'M', '0', '0', '', 'tool', 103, 1, now(), null, null, '系统工具目录'); insert into sys_menu values('4', 'PLUS官网', '0', '5', 'https://gitee.com/dromara/RuoYi-Vue-Plus', null, '', '0', '0', 'M', '0', '0', '', 'guide', 103, 1, now(), null, null, 'RuoYi-Vue-Plus官网地址'); -- Gitee From e96118c57448a29addd8294969866a8abcf5efdf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Sun, 29 Sep 2024 17:41:16 +0800 Subject: [PATCH 190/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20=E9=83=A8?= =?UTF-8?q?=E5=88=86web=E5=BC=82=E5=B8=B8=E8=A2=ABCryptoFilter=E6=88=AA?= =?UTF-8?q?=E8=83=A1=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/org/dromara/common/encrypt/filter/CryptoFilter.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ruoyi-common/ruoyi-common-encrypt/src/main/java/org/dromara/common/encrypt/filter/CryptoFilter.java b/ruoyi-common/ruoyi-common-encrypt/src/main/java/org/dromara/common/encrypt/filter/CryptoFilter.java index 98351321d..79d58daf1 100644 --- a/ruoyi-common/ruoyi-common-encrypt/src/main/java/org/dromara/common/encrypt/filter/CryptoFilter.java +++ b/ruoyi-common/ruoyi-common-encrypt/src/main/java/org/dromara/common/encrypt/filter/CryptoFilter.java @@ -99,7 +99,7 @@ public class CryptoFilter implements Filter { } } } catch (Exception e) { - throw new RuntimeException(e); + return null; } return null; } -- Gitee From 88dd4165cbf5eb7fe671e236d96f970c0f1b6e94 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Sun, 29 Sep 2024 17:41:36 +0800 Subject: [PATCH 191/540] update sms4j 3.3.2 => 3.3.3 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 084758c05..32bfcb05c 100644 --- a/pom.xml +++ b/pom.xml @@ -44,7 +44,7 @@ 2.25.15 0.29.13 - 3.3.2 + 3.3.3 1.2.83 -- Gitee From 7e6d0a5c64d57f611bd909114ac4abbdf34bf836 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Mon, 30 Sep 2024 17:56:04 +0800 Subject: [PATCH 192/540] update anyline 20240808 => 20240930 --- pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index 32bfcb05c..dbfbf03fe 100644 --- a/pom.xml +++ b/pom.xml @@ -17,7 +17,7 @@ 3.2.10 UTF-8 UTF-8 - 17 + 21 3.5.16 2.6.0 0.15.0 @@ -48,7 +48,7 @@ 1.2.83 - 8.7.2-20240808 + 8.7.2-20240930 7.0.1 -- Gitee From eb4479e940e5dbcb598b57d9be5397c4abf8f5b1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Tue, 1 Oct 2024 10:52:07 +0800 Subject: [PATCH 193/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20=E5=90=8C?= =?UTF-8?q?=E6=AD=A5=E5=AD=97=E5=85=B8=E5=AD=98=E5=82=A8=E6=98=AF=E6=9C=AA?= =?UTF-8?q?=E5=BF=BD=E7=95=A5=E7=A7=9F=E6=88=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../system/service/impl/SysTenantServiceImpl.java | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java index 7d6ca5b3e..2f860620b 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java @@ -444,12 +444,14 @@ public class SysTenantServiceImpl implements ISysTenantService { } } } - if (CollUtil.isNotEmpty(saveTypeList)) { - dictTypeMapper.insertBatch(saveTypeList); - } - if (CollUtil.isNotEmpty(saveDataList)) { - dictDataMapper.insertBatch(saveDataList); - } + TenantHelper.ignore(() -> { + if (CollUtil.isNotEmpty(saveTypeList)) { + dictTypeMapper.insertBatch(saveTypeList); + } + if (CollUtil.isNotEmpty(saveDataList)) { + dictDataMapper.insertBatch(saveDataList); + } + }); for (String tenantId : set) { TenantHelper.dynamic(tenantId, () -> CacheUtils.clear(CacheNames.SYS_DICT)); } -- Gitee From e3d40b75cb9cd3ec92203b59e88d6088eb44c476 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Tue, 8 Oct 2024 14:43:49 +0800 Subject: [PATCH 194/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20=E5=90=8C?= =?UTF-8?q?=E4=B8=80=E4=B8=AA=E7=94=A8=E6=88=B7=E4=B8=8D=E5=90=8Ctoken?= =?UTF-8?q?=E8=BF=9E=E6=8E=A5=E4=B8=8D=E5=90=8C=E6=9C=8D=E5=8A=A1=E5=AF=BC?= =?UTF-8?q?=E8=87=B4=E5=8F=91=E9=80=81=E4=B8=8D=E5=88=B0=E9=97=AE=E9=A2=98?= =?UTF-8?q?(=E6=94=B9=E4=B8=BA=E5=85=A8=E5=B1=80=E5=8F=91=E9=80=81)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/sse/core/SseEmitterManager.java | 29 +++++-------------- 1 file changed, 7 insertions(+), 22 deletions(-) diff --git a/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/core/SseEmitterManager.java b/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/core/SseEmitterManager.java index 1d37a27de..0bfe0ca76 100644 --- a/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/core/SseEmitterManager.java +++ b/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/core/SseEmitterManager.java @@ -1,14 +1,11 @@ package org.dromara.common.sse.core; -import cn.hutool.core.collection.CollUtil; import lombok.extern.slf4j.Slf4j; import org.dromara.common.redis.utils.RedisUtils; import org.dromara.common.sse.dto.SseMessageDto; import org.springframework.web.servlet.mvc.method.annotation.SseEmitter; import java.io.IOException; -import java.util.ArrayList; -import java.util.List; import java.util.Map; import java.util.concurrent.ConcurrentHashMap; import java.util.function.Consumer; @@ -124,25 +121,13 @@ public class SseEmitterManager { * @param sseMessageDto 要发布的SSE消息对象 */ public void publishMessage(SseMessageDto sseMessageDto) { - List unsentUserIds = new ArrayList<>(); - // 当前服务内用户,直接发送消息 - for (Long userId : sseMessageDto.getUserIds()) { - if (USER_TOKEN_EMITTERS.containsKey(userId)) { - sendMessage(userId, sseMessageDto.getMessage()); - continue; - } - unsentUserIds.add(userId); - } - // 不在当前服务内用户,发布订阅消息 - if (CollUtil.isNotEmpty(unsentUserIds)) { - SseMessageDto broadcastMessage = new SseMessageDto(); - broadcastMessage.setMessage(sseMessageDto.getMessage()); - broadcastMessage.setUserIds(unsentUserIds); - RedisUtils.publish(SSE_TOPIC, broadcastMessage, consumer -> { - log.info("SSE发送主题订阅消息topic:{} session keys:{} message:{}", - SSE_TOPIC, unsentUserIds, sseMessageDto.getMessage()); - }); - } + SseMessageDto broadcastMessage = new SseMessageDto(); + broadcastMessage.setMessage(sseMessageDto.getMessage()); + broadcastMessage.setUserIds(sseMessageDto.getUserIds()); + RedisUtils.publish(SSE_TOPIC, broadcastMessage, consumer -> { + log.info("SSE发送主题订阅消息topic:{} session keys:{} message:{}", + SSE_TOPIC, sseMessageDto.getUserIds(), sseMessageDto.getMessage()); + }); } /** -- Gitee From d60774a7b8c0be331e30f7c26de5c0b3767581f7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Tue, 8 Oct 2024 16:10:27 +0800 Subject: [PATCH 195/540] =?UTF-8?q?reset=20=E5=9B=9E=E6=BB=9A=E9=94=99?= =?UTF-8?q?=E8=AF=AF=E6=8F=90=E4=BA=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index dbfbf03fe..970b89e3a 100644 --- a/pom.xml +++ b/pom.xml @@ -17,7 +17,7 @@ 3.2.10 UTF-8 UTF-8 - 21 + 17 3.5.16 2.6.0 0.15.0 -- Gitee From e0a00cfe987618cf4fbdb1d8a67cdedd43e7f25b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Tue, 8 Oct 2024 16:30:04 +0800 Subject: [PATCH 196/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E8=A1=A5?= =?UTF-8?q?=E5=85=A8=20@Override=20=E6=B3=A8=E8=A7=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dromara/common/redis/manager/CaffeineCacheDecorator.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/manager/CaffeineCacheDecorator.java b/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/manager/CaffeineCacheDecorator.java index 793e21f5c..6e83df13a 100644 --- a/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/manager/CaffeineCacheDecorator.java +++ b/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/manager/CaffeineCacheDecorator.java @@ -44,6 +44,7 @@ public class CaffeineCacheDecorator implements Cache { } @SuppressWarnings("unchecked") + @Override public T get(Object key, Class type) { Object o = CAFFEINE.get(getUniqueKey(key), k -> cache.get(key, type)); return (T) o; @@ -55,6 +56,7 @@ public class CaffeineCacheDecorator implements Cache { cache.put(key, value); } + @Override public ValueWrapper putIfAbsent(Object key, Object value) { CAFFEINE.invalidate(getUniqueKey(key)); return cache.putIfAbsent(key, value); @@ -65,6 +67,7 @@ public class CaffeineCacheDecorator implements Cache { evictIfPresent(key); } + @Override public boolean evictIfPresent(Object key) { boolean b = cache.evictIfPresent(key); if (b) { @@ -78,6 +81,7 @@ public class CaffeineCacheDecorator implements Cache { cache.clear(); } + @Override public boolean invalidate() { return cache.invalidate(); } -- Gitee From 556cf87f0ef2ddb65e92b4a446c624740ed04ad9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Sat, 12 Oct 2024 16:23:17 +0800 Subject: [PATCH 197/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E8=A1=A5?= =?UTF-8?q?=E5=85=A8=20pg=20=E6=95=B0=E6=8D=AE=E7=B1=BB=E5=9E=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/org/dromara/generator/constant/GenConstants.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/constant/GenConstants.java b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/constant/GenConstants.java index 8986d3821..b9888fb63 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/constant/GenConstants.java +++ b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/constant/GenConstants.java @@ -56,13 +56,13 @@ public interface GenConstants { * 数据库时间类型 */ String[] COLUMNTYPE_TIME = {"datetime", "time", "date", "timestamp", "year", "interval", - "smalldatetime", "datetime2", "datetimeoffset"}; + "smalldatetime", "datetime2", "datetimeoffset", "timestamptz"}; /** * 数据库数字类型 */ String[] COLUMNTYPE_NUMBER = {"tinyint", "smallint", "mediumint", "int", "int2", "int4", "int8", "number", "integer", - "bit", "bigint", "float", "double", "decimal", "numeric", "real", "double precision", + "bit", "bigint", "float", "float4", "float8", "double", "decimal", "numeric", "real", "double precision", "smallserial", "serial", "bigserial", "money", "smallmoney"}; /** -- Gitee From c563afed59b0313ce5509f94e8b1f0243e96f8df Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Mon, 14 Oct 2024 00:37:57 +0800 Subject: [PATCH 198/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20EncryptorMan?= =?UTF-8?q?ager=20=E7=BC=93=E5=AD=98=E5=A4=B1=E6=95=88=E9=97=AE=E9=A2=98?= =?UTF-8?q?=E5=AF=BC=E8=87=B4=E7=9A=84=E5=86=85=E5=AD=98=E8=86=A8=E8=83=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/encrypt/core/EncryptorManager.java | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/ruoyi-common/ruoyi-common-encrypt/src/main/java/org/dromara/common/encrypt/core/EncryptorManager.java b/ruoyi-common/ruoyi-common-encrypt/src/main/java/org/dromara/common/encrypt/core/EncryptorManager.java index a6d3cf9ce..2d795e074 100644 --- a/ruoyi-common/ruoyi-common-encrypt/src/main/java/org/dromara/common/encrypt/core/EncryptorManager.java +++ b/ruoyi-common/ruoyi-common-encrypt/src/main/java/org/dromara/common/encrypt/core/EncryptorManager.java @@ -17,7 +17,10 @@ import org.springframework.core.type.classreading.CachingMetadataReaderFactory; import org.springframework.util.ClassUtils; import java.lang.reflect.Field; -import java.util.*; +import java.util.Arrays; +import java.util.HashSet; +import java.util.Map; +import java.util.Set; import java.util.concurrent.ConcurrentHashMap; import java.util.stream.Collectors; @@ -34,7 +37,7 @@ public class EncryptorManager { /** * 缓存加密器 */ - Map encryptorMap = new ConcurrentHashMap<>(); + Map encryptorMap = new ConcurrentHashMap<>(); /** * 类加密字段缓存 @@ -67,11 +70,12 @@ public class EncryptorManager { * @param encryptContext 加密执行者需要的相关配置参数 */ public IEncryptor registAndGetEncryptor(EncryptContext encryptContext) { - if (encryptorMap.containsKey(encryptContext)) { - return encryptorMap.get(encryptContext); + int key = encryptContext.hashCode(); + if (encryptorMap.containsKey(key)) { + return encryptorMap.get(key); } IEncryptor encryptor = ReflectUtil.newInstance(encryptContext.getAlgorithm().getClazz(), encryptContext); - encryptorMap.put(encryptContext, encryptor); + encryptorMap.put(key, encryptor); return encryptor; } @@ -81,7 +85,7 @@ public class EncryptorManager { * @param encryptContext 加密执行者需要的相关配置参数 */ public void removeEncryptor(EncryptContext encryptContext) { - this.encryptorMap.remove(encryptContext); + this.encryptorMap.remove(encryptContext.hashCode()); } /** -- Gitee From 57e142e160dfa363c72d94bfcf4f7d6544804170 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Tue, 15 Oct 2024 17:35:41 +0800 Subject: [PATCH 199/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20=E7=89=B9?= =?UTF-8?q?=E6=80=A7=E6=83=85=E5=86=B5=E4=B8=8B=E8=87=AA=E5=AE=9A=E4=B9=89?= =?UTF-8?q?=E9=AA=8C=E8=AF=81=E5=BC=82=E5=B8=B8=E5=A4=84=E7=90=86=E5=99=A8?= =?UTF-8?q?=E6=8A=A5null=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/dromara/common/web/handler/GlobalExceptionHandler.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/handler/GlobalExceptionHandler.java b/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/handler/GlobalExceptionHandler.java index 42c6087ad..321c22615 100644 --- a/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/handler/GlobalExceptionHandler.java +++ b/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/handler/GlobalExceptionHandler.java @@ -176,7 +176,7 @@ public class GlobalExceptionHandler { @ExceptionHandler(MethodArgumentNotValidException.class) public R handleMethodArgumentNotValidException(MethodArgumentNotValidException e) { log.error(e.getMessage()); - String message = e.getBindingResult().getFieldError().getDefaultMessage(); + String message = StreamUtils.join(e.getBindingResult().getAllErrors(), DefaultMessageSourceResolvable::getDefaultMessage, ", "); return R.fail(message); } -- Gitee From dc5c92ee2d2bf4b4e938a2c0f09541d9caa019fe Mon Sep 17 00:00:00 2001 From: AprilWind <2100166581@qq.com> Date: Wed, 16 Oct 2024 10:33:11 +0800 Subject: [PATCH 200/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=E5=90=8C?= =?UTF-8?q?=E6=AD=A5=E4=BA=91=E5=8E=82=E5=95=86=E8=A6=81=E6=B1=82=E6=98=8E?= =?UTF-8?q?=E7=A1=AE=E9=85=8D=E7=BD=AE=E8=AE=BF=E9=97=AE=E6=A0=B7=E5=BC=8F?= =?UTF-8?q?=EF=BC=88=E8=B7=AF=E5=BE=84=E6=A0=B7=E5=BC=8F=E8=AE=BF=E9=97=AE?= =?UTF-8?q?=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/org/dromara/common/oss/core/OssClient.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java b/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java index bde26ae1c..12e49f359 100644 --- a/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java +++ b/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java @@ -83,8 +83,8 @@ public class OssClient { StaticCredentialsProvider credentialsProvider = StaticCredentialsProvider.create( AwsBasicCredentials.create(properties.getAccessKey(), properties.getSecretKey())); - //MinIO 使用 HTTPS 限制使用域名访问,站点填域名。需要启用路径样式访问 - boolean isStyle = !StringUtils.containsAny(properties.getEndpoint(), OssConstant.CLOUD_SERVICE); + //使用对象存储服务时要求明确配置访问样式(路径样式或虚拟托管样式)。需要启用路径样式访问 + boolean isStyle = true; //创建AWS基于 CRT 的 S3 客户端 this.client = S3AsyncClient.crtBuilder() -- Gitee From 517277132e89b36da2fe73c850cea0680eb918b7 Mon Sep 17 00:00:00 2001 From: AprilWind <2100166581@qq.com> Date: Wed, 16 Oct 2024 10:36:43 +0800 Subject: [PATCH 201/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=E8=85=BE?= =?UTF-8?q?=E8=AE=AF=E4=BA=91oss=E4=B8=8D=E6=94=AF=E6=8C=81=E9=AB=98?= =?UTF-8?q?=E5=8D=B1=E6=9D=83=E9=99=90=E8=AE=BE=E7=BD=AEACL?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/org/dromara/common/oss/core/OssClient.java | 2 -- 1 file changed, 2 deletions(-) diff --git a/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java b/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java index 12e49f359..62493f36e 100644 --- a/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java +++ b/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java @@ -178,7 +178,6 @@ public class OssClient { .key(key) .contentMD5(StringUtils.isNotEmpty(md5Digest) ? md5Digest : null) .contentType(contentType) - .acl(getAccessPolicy().getObjectCannedACL()) .build()) .addTransferListener(LoggingTransferListener.create()) .source(filePath).build()); @@ -224,7 +223,6 @@ public class OssClient { y -> y.bucket(properties.getBucketName()) .key(key) .contentType(contentType) - .acl(getAccessPolicy().getObjectCannedACL()) .build()) .build()); -- Gitee From 01025c40243747a5e0538a140dd9ead5d1e7671e Mon Sep 17 00:00:00 2001 From: AprilWind <2100166581@qq.com> Date: Wed, 16 Oct 2024 10:39:58 +0800 Subject: [PATCH 202/540] =?UTF-8?q?update=20=E6=9B=B4=E6=96=B0AWS=20SDK?= =?UTF-8?q?=E7=89=88=E6=9C=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index 970b89e3a..4b9860aaa 100644 --- a/pom.xml +++ b/pom.xml @@ -41,8 +41,8 @@ 2.7.0 - 2.25.15 - 0.29.13 + 2.28.22 + 0.31.3 3.3.3 -- Gitee From 81006c758a3cc433dd2558c275b16c3f356dc659 Mon Sep 17 00:00:00 2001 From: AprilWind <2100166581@qq.com> Date: Wed, 16 Oct 2024 10:47:26 +0800 Subject: [PATCH 203/540] =?UTF-8?q?docs=20=E8=87=AA=E8=A1=8C=E5=BC=80?= =?UTF-8?q?=E5=90=AF=E4=BA=91=E5=AD=98=E5=82=A8=E8=AE=BF=E9=97=AE=E6=8E=A7?= =?UTF-8?q?=E5=88=B6ACl=E7=AD=96=E7=95=A5=E6=B3=A8=E9=87=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/org/dromara/common/oss/core/OssClient.java | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java b/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java index 62493f36e..aff5490f0 100644 --- a/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java +++ b/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java @@ -178,6 +178,9 @@ public class OssClient { .key(key) .contentMD5(StringUtils.isNotEmpty(md5Digest) ? md5Digest : null) .contentType(contentType) + // 用于设置对象的访问控制列表(ACL)。不同云厂商对ACL的支持和实现方式有所不同, + // 因此根据具体的云服务提供商,你可能需要进行不同的配置(自行开启,阿里云有acl权限配置,腾讯云没有acl权限配置) + //.acl(getAccessPolicy().getObjectCannedACL()) .build()) .addTransferListener(LoggingTransferListener.create()) .source(filePath).build()); @@ -223,6 +226,9 @@ public class OssClient { y -> y.bucket(properties.getBucketName()) .key(key) .contentType(contentType) + // 用于设置对象的访问控制列表(ACL)。不同云厂商对ACL的支持和实现方式有所不同, + // 因此根据具体的云服务提供商,你可能需要进行不同的配置(自行开启,阿里云有acl权限配置,腾讯云没有acl权限配置) + //.acl(getAccessPolicy().getObjectCannedACL()) .build()) .build()); -- Gitee From 6727f3e6a41aad84235a705b224ed025e7570d7e Mon Sep 17 00:00:00 2001 From: AprilWind <2100166581@qq.com> Date: Wed, 16 Oct 2024 15:28:38 +0800 Subject: [PATCH 204/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8Doss=E4=B8=8A?= =?UTF-8?q?=E4=BC=A010=E7=A7=92=E8=B6=85=E6=97=B6=EF=BC=8C=E8=AE=BE?= =?UTF-8?q?=E7=BD=AE=E9=BB=98=E8=AE=A4=E6=97=B6=E9=97=B4=E4=B8=80=E5=88=86?= =?UTF-8?q?=E9=92=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/org/dromara/common/oss/core/OssClient.java | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java b/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java index aff5490f0..900536b56 100644 --- a/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java +++ b/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java @@ -15,12 +15,12 @@ import org.dromara.common.oss.properties.OssProperties; import software.amazon.awssdk.auth.credentials.AwsBasicCredentials; import software.amazon.awssdk.auth.credentials.StaticCredentialsProvider; import software.amazon.awssdk.core.ResponseInputStream; -import software.amazon.awssdk.core.async.AsyncRequestBody; import software.amazon.awssdk.core.async.AsyncResponseTransformer; import software.amazon.awssdk.core.async.BlockingInputStreamAsyncRequestBody; import software.amazon.awssdk.regions.Region; import software.amazon.awssdk.services.s3.S3AsyncClient; import software.amazon.awssdk.services.s3.S3Configuration; +import software.amazon.awssdk.services.s3.crt.S3CrtHttpConfiguration; import software.amazon.awssdk.services.s3.model.GetObjectResponse; import software.amazon.awssdk.services.s3.model.NoSuchBucketException; import software.amazon.awssdk.services.s3.model.S3Exception; @@ -95,6 +95,9 @@ public class OssClient { .minimumPartSizeInBytes(10 * 1025 * 1024L) .checksumValidationEnabled(false) .forcePathStyle(isStyle) + .httpConfiguration(S3CrtHttpConfiguration.builder() + .connectionTimeout(Duration.ofSeconds(60)) // 设置连接超时 + .build()) .build(); //AWS基于 CRT 的 S3 AsyncClient 实例用作 S3 传输管理器的底层客户端 @@ -217,7 +220,10 @@ public class OssClient { } try { // 创建异步请求体(length如果为空会报错) - BlockingInputStreamAsyncRequestBody body = AsyncRequestBody.forBlockingInputStream(length); + BlockingInputStreamAsyncRequestBody body = BlockingInputStreamAsyncRequestBody.builder() + .contentLength(length) + .subscribeTimeout(Duration.ofSeconds(30)) + .build(); // 使用 transferManager 进行上传 Upload upload = transferManager.upload( -- Gitee From 7171ed150861c30dd1daf6a6a8cba34d68d40868 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 17 Oct 2024 17:24:54 +0800 Subject: [PATCH 205/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20snailjob?= =?UTF-8?q?=E5=AE=A2=E6=88=B7=E7=AB=AFip=E9=85=8D=E7=BD=AE=E8=AF=B4?= =?UTF-8?q?=E6=98=8E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ruoyi-admin/src/main/resources/application-dev.yml | 2 ++ ruoyi-admin/src/main/resources/application-prod.yml | 2 ++ 2 files changed, 4 insertions(+) diff --git a/ruoyi-admin/src/main/resources/application-dev.yml b/ruoyi-admin/src/main/resources/application-dev.yml index f12202050..4410ab59f 100644 --- a/ruoyi-admin/src/main/resources/application-dev.yml +++ b/ruoyi-admin/src/main/resources/application-dev.yml @@ -25,6 +25,8 @@ snail-job: namespace: ${spring.profiles.active} # 随主应用端口飘逸 port: 2${server.port} + # 客户端ip指定 + host: --- # 数据源配置 spring: diff --git a/ruoyi-admin/src/main/resources/application-prod.yml b/ruoyi-admin/src/main/resources/application-prod.yml index 192eb7ed6..d26111828 100644 --- a/ruoyi-admin/src/main/resources/application-prod.yml +++ b/ruoyi-admin/src/main/resources/application-prod.yml @@ -28,6 +28,8 @@ snail-job: namespace: ${spring.profiles.active} # 随主应用端口飘逸 port: 2${server.port} + # 客户端ip指定 + host: --- # 数据源配置 spring: -- Gitee From 51cfbef8876fa0945923836fbddc2d5a29a32f84 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 17 Oct 2024 17:34:33 +0800 Subject: [PATCH 206/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E6=93=8D?= =?UTF-8?q?=E4=BD=9C=E6=97=A5=E5=BF=97=E8=AE=B0=E5=BD=95DELETE=E8=AF=B7?= =?UTF-8?q?=E6=B1=82=E5=8F=82=E6=95=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/org/dromara/common/log/aspect/LogAspect.java | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/ruoyi-common/ruoyi-common-log/src/main/java/org/dromara/common/log/aspect/LogAspect.java b/ruoyi-common/ruoyi-common-log/src/main/java/org/dromara/common/log/aspect/LogAspect.java index cdbd00f09..4c6c1a4d6 100644 --- a/ruoyi-common/ruoyi-common-log/src/main/java/org/dromara/common/log/aspect/LogAspect.java +++ b/ruoyi-common/ruoyi-common-log/src/main/java/org/dromara/common/log/aspect/LogAspect.java @@ -159,8 +159,7 @@ public class LogAspect { private void setRequestValue(JoinPoint joinPoint, OperLogEvent operLog, String[] excludeParamNames) throws Exception { Map paramsMap = ServletUtils.getParamMap(ServletUtils.getRequest()); String requestMethod = operLog.getRequestMethod(); - if (MapUtil.isEmpty(paramsMap) - && HttpMethod.PUT.name().equals(requestMethod) || HttpMethod.POST.name().equals(requestMethod)) { + if (MapUtil.isEmpty(paramsMap) && StringUtils.equalsAny(requestMethod, HttpMethod.PUT.name(), HttpMethod.POST.name(), HttpMethod.DELETE.name())) { String params = argsArrayToString(joinPoint.getArgs(), excludeParamNames); operLog.setOperParam(StringUtils.substring(params, 0, 2000)); } else { -- Gitee From abfa995a320ba69faf35fb84535e913cef4a13b3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 17 Oct 2024 18:12:26 +0800 Subject: [PATCH 207/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E7=9B=91?= =?UTF-8?q?=E5=90=AC=E5=99=A8=E5=85=BC=E5=AE=B9=E6=89=80=E6=9C=89demo?= =?UTF-8?q?=E6=A1=88=E4=BE=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/TestLeaveServiceImpl.java | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/TestLeaveServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/TestLeaveServiceImpl.java index a62ce5f4c..f81c85f7c 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/TestLeaveServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/TestLeaveServiceImpl.java @@ -142,11 +142,16 @@ public class TestLeaveServiceImpl implements ITestLeaveService { * * @param processTaskEvent 参数 */ - @EventListener(condition = "#processTaskEvent.key=='leave1' && #processTaskEvent.taskDefinitionKey=='Activity_14633hx'") + @EventListener(condition = "#processTaskEvent.key.startsWith('leave')") public void processTaskHandler(ProcessTaskEvent processTaskEvent) { - log.info("当前任务执行了{}", processTaskEvent.toString()); - TestLeave testLeave = baseMapper.selectById(Long.valueOf(processTaskEvent.getBusinessKey())); - testLeave.setStatus(BusinessStatusEnum.WAITING.getStatus()); - baseMapper.updateById(testLeave); + // 所有demo案例的申请人节点id + String[] ids = {"Activity_14633hx", "Activity_19b1i4j", "Activity_0uscrk3", + "Activity_0uscrk3", "Activity_0x6b71j", "Activity_0zy3g6j", "Activity_06a55t0"}; + if (StringUtils.equalsAny(processTaskEvent.getTaskDefinitionKey(), ids)) { + log.info("当前任务执行了{}", processTaskEvent.toString()); + TestLeave testLeave = baseMapper.selectById(Long.valueOf(processTaskEvent.getBusinessKey())); + testLeave.setStatus(BusinessStatusEnum.WAITING.getStatus()); + baseMapper.updateById(testLeave); + } } } -- Gitee From ac89cb46f568d763e29abad617bbea23ab7e13f4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=A7=8B=E8=BE=9E=E6=9C=AA=E5=AF=92?= <545073804@qq.com> Date: Thu, 17 Oct 2024 22:38:12 +0800 Subject: [PATCH 208/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=E9=87=8D?= =?UTF-8?q?=E6=96=B0=E7=94=9F=E6=88=90=E7=A7=9F=E6=88=B7ID=E6=9C=AA?= =?UTF-8?q?=E7=94=9F=E6=95=88=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/dromara/system/service/impl/SysTenantServiceImpl.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java index 2f860620b..80254127d 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java @@ -203,7 +203,7 @@ public class SysTenantServiceImpl implements ISysTenantService { String numbers = RandomUtil.randomNumbers(6); // 判断是否存在,如果存在则重新生成 if (tenantIds.contains(numbers)) { - generateTenantId(tenantIds); + return generateTenantId(tenantIds); } return numbers; } -- Gitee From f2ec530065989104832211954a1a95ee566fb98b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Sat, 19 Oct 2024 14:50:34 +0800 Subject: [PATCH 209/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20=E5=AD=97?= =?UTF-8?q?=E5=85=B8=E5=90=8C=E6=AD=A5=20=E6=95=B0=E6=8D=AE=E5=BC=82?= =?UTF-8?q?=E5=B8=B8=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/SysTenantServiceImpl.java | 34 +++++++++++-------- 1 file changed, 19 insertions(+), 15 deletions(-) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java index 80254127d..747654982 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java @@ -1,6 +1,7 @@ package org.dromara.system.service.impl; import cn.dev33.satoken.secure.BCrypt; +import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.convert.Convert; import cn.hutool.core.util.ObjectUtil; @@ -413,33 +414,36 @@ public class SysTenantServiceImpl implements ISysTenantService { Map map = StreamUtils.toIdentityMap(dataListTenant, SysDictData::getDictValue); for (SysDictData dictData : dataList) { if (!map.containsKey(dictData.getDictValue())) { + SysDictData data = BeanUtil.toBean(dictData, SysDictData.class); // 设置字典编码为 null - dictData.setDictCode(null); - dictData.setTenantId(tenantId); - dictData.setCreateTime(null); - dictData.setUpdateTime(null); + data.setDictCode(null); + data.setTenantId(tenantId); + data.setCreateTime(null); + data.setUpdateTime(null); set.add(tenantId); - saveDataList.add(dictData); + saveDataList.add(data); } } } else { - dictType.setDictId(null); - dictType.setTenantId(tenantId); - dictType.setCreateTime(null); - dictType.setUpdateTime(null); + SysDictType type = BeanUtil.toBean(dictType, SysDictType.class); + type.setDictId(null); + type.setTenantId(tenantId); + type.setCreateTime(null); + type.setUpdateTime(null); set.add(tenantId); - saveTypeList.add(dictType); + saveTypeList.add(type); if (CollUtil.isNotEmpty(dataList)) { // 筛选出 dictType 对应的 data for (SysDictData dictData : dataList) { + SysDictData data = BeanUtil.toBean(dictData, SysDictData.class); // 设置字典编码为 null - dictData.setDictCode(null); - dictData.setTenantId(tenantId); - dictData.setCreateTime(null); - dictData.setUpdateTime(null); + data.setDictCode(null); + data.setTenantId(tenantId); + data.setCreateTime(null); + data.setUpdateTime(null); set.add(tenantId); + saveDataList.add(data); } - saveDataList.addAll(dataList); } } } -- Gitee From 59715b1e024a91cbab26387ee109a3e7c76e70e9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Sun, 20 Oct 2024 00:23:33 +0800 Subject: [PATCH 210/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20=E5=8F=8A?= =?UTF-8?q?=E5=85=B6=E7=89=B9=E6=AE=8A=E5=9C=BA=E6=99=AF=E4=B8=8B=E8=8E=B7?= =?UTF-8?q?=E5=8F=96=20StopWatch=20=E4=B8=BAnull=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../web/interceptor/PlusWebInvokeTimeInterceptor.java | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/interceptor/PlusWebInvokeTimeInterceptor.java b/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/interceptor/PlusWebInvokeTimeInterceptor.java index 614a559d7..7cb6b7877 100644 --- a/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/interceptor/PlusWebInvokeTimeInterceptor.java +++ b/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/interceptor/PlusWebInvokeTimeInterceptor.java @@ -2,6 +2,7 @@ package org.dromara.common.web.interceptor; import cn.hutool.core.io.IoUtil; import cn.hutool.core.map.MapUtil; +import cn.hutool.core.util.ObjectUtil; import jakarta.servlet.http.HttpServletRequest; import jakarta.servlet.http.HttpServletResponse; import lombok.extern.slf4j.Slf4j; @@ -64,9 +65,11 @@ public class PlusWebInvokeTimeInterceptor implements HandlerInterceptor { @Override public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception { StopWatch stopWatch = KEY_CACHE.get(); - stopWatch.stop(); - log.info("[PLUS]结束请求 => URL[{}],耗时:[{}]毫秒", request.getMethod() + " " + request.getRequestURI(), stopWatch.getTime()); - KEY_CACHE.remove(); + if (ObjectUtil.isNotNull(stopWatch)) { + stopWatch.stop(); + log.info("[PLUS]结束请求 => URL[{}],耗时:[{}]毫秒", request.getMethod() + " " + request.getRequestURI(), stopWatch.getTime()); + KEY_CACHE.remove(); + } } /** -- Gitee From fdbe8c2395a242eab32b9f123f5e6f148c831b15 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Sun, 20 Oct 2024 11:43:39 +0800 Subject: [PATCH 211/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E8=BF=87?= =?UTF-8?q?=E6=BB=A4=E5=99=A8=E5=88=9D=E5=A7=8B=E5=8C=96=E5=86=99=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/dromara/common/web/config/FilterConfig.java | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/config/FilterConfig.java b/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/config/FilterConfig.java index bc27d6f3e..32d61df1c 100644 --- a/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/config/FilterConfig.java +++ b/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/config/FilterConfig.java @@ -19,23 +19,21 @@ import org.springframework.context.annotation.Bean; @EnableConfigurationProperties(XssProperties.class) public class FilterConfig { - @SuppressWarnings({"rawtypes", "unchecked"}) @Bean @ConditionalOnProperty(value = "xss.enabled", havingValue = "true") - public FilterRegistrationBean xssFilterRegistration(XssProperties xssProperties) { - FilterRegistrationBean registration = new FilterRegistrationBean(); + public FilterRegistrationBean xssFilterRegistration() { + FilterRegistrationBean registration = new FilterRegistrationBean<>(); registration.setDispatcherTypes(DispatcherType.REQUEST); registration.setFilter(new XssFilter()); registration.addUrlPatterns("/*"); registration.setName("xssFilter"); - registration.setOrder(FilterRegistrationBean.HIGHEST_PRECEDENCE); + registration.setOrder(FilterRegistrationBean.HIGHEST_PRECEDENCE + 1); return registration; } - @SuppressWarnings({"rawtypes", "unchecked"}) @Bean - public FilterRegistrationBean someFilterRegistration() { - FilterRegistrationBean registration = new FilterRegistrationBean(); + public FilterRegistrationBean someFilterRegistration() { + FilterRegistrationBean registration = new FilterRegistrationBean<>(); registration.setFilter(new RepeatableFilter()); registration.addUrlPatterns("/*"); registration.setName("repeatableFilter"); -- Gitee From 82af98c205af5ddf9eea5c52d473ced18cc7fac2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Mon, 21 Oct 2024 13:38:01 +0800 Subject: [PATCH 212/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20=E4=BB=A3?= =?UTF-8?q?=E7=A0=81=E4=B9=A6=E5=86=99=E9=94=99=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../workflow/service/impl/WfDefinitionConfigServiceImpl.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WfDefinitionConfigServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WfDefinitionConfigServiceImpl.java index ab55ff80e..b2ffb9ef9 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WfDefinitionConfigServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WfDefinitionConfigServiceImpl.java @@ -96,7 +96,7 @@ public class WfDefinitionConfigServiceImpl implements IWfDefinitionConfigService baseMapper.delete(new LambdaQueryWrapper().eq(WfDefinitionConfig::getTableName, bo.getTableName())); add.setTableName(add.getTableName().toLowerCase()); boolean flag = baseMapper.insertOrUpdate(add); - if (baseMapper.insertOrUpdate(add)) { + if (flag) { bo.setId(add.getId()); } return flag; -- Gitee From 8d8d76364b7b979782de6c6c25f9fcf8786c2121 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Mon, 21 Oct 2024 13:59:39 +0800 Subject: [PATCH 213/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20xss=E8=BF=87?= =?UTF-8?q?=E6=BB=A4=E5=99=A8=20=E6=9C=AA=E8=BF=87=E6=BB=A4url=E5=8F=82?= =?UTF-8?q?=E6=95=B0=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../filter/XssHttpServletRequestWrapper.java | 30 ++++++++++++++++++- 1 file changed, 29 insertions(+), 1 deletion(-) diff --git a/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/filter/XssHttpServletRequestWrapper.java b/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/filter/XssHttpServletRequestWrapper.java index 4a425c501..190f94eab 100644 --- a/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/filter/XssHttpServletRequestWrapper.java +++ b/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/filter/XssHttpServletRequestWrapper.java @@ -14,6 +14,7 @@ import jakarta.servlet.http.HttpServletRequestWrapper; import java.io.ByteArrayInputStream; import java.io.IOException; import java.nio.charset.StandardCharsets; +import java.util.Map; /** * XSS过滤处理 @@ -28,6 +29,33 @@ public class XssHttpServletRequestWrapper extends HttpServletRequestWrapper { super(request); } + @Override + public String getParameter(String name) { + String value = super.getParameter(name); + if (value != null) { + return HtmlUtil.cleanHtmlTag(value).trim(); + } + return value; + } + + @Override + public Map getParameterMap() { + Map valueMap = super.getParameterMap(); + for (Map.Entry entry : valueMap.entrySet()) { + String[] values = entry.getValue(); + if (values != null) { + int length = values.length; + String[] escapseValues = new String[length]; + for (int i = 0; i < length; i++) { + // 防xss攻击和过滤前后空格 + escapseValues[i] = HtmlUtil.cleanHtmlTag(values[i]).trim(); + } + valueMap.put(entry.getKey(), escapseValues); + } + } + return valueMap; + } + @Override public String[] getParameterValues(String name) { String[] values = super.getParameterValues(name); @@ -40,7 +68,7 @@ public class XssHttpServletRequestWrapper extends HttpServletRequestWrapper { } return escapseValues; } - return super.getParameterValues(name); + return values; } @Override -- Gitee From 4c96440686dd3267df669649f5fb337102c24399 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Wed, 23 Oct 2024 17:38:21 +0800 Subject: [PATCH 214/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20=E8=AE=BE?= =?UTF-8?q?=E7=BD=AE=E6=B5=81=E7=A8=8B=E5=8F=98=E9=87=8F=20=E4=BB=A3?= =?UTF-8?q?=E7=A0=81=E4=BD=BF=E7=94=A8=E9=94=99=E8=AF=AF=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/WorkflowServiceImpl.java | 20 +++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WorkflowServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WorkflowServiceImpl.java index f75a18880..b03658444 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WorkflowServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WorkflowServiceImpl.java @@ -7,7 +7,7 @@ import org.dromara.workflow.domain.ActHiProcinst; import org.dromara.workflow.service.IActHiProcinstService; import org.dromara.workflow.service.IActProcessInstanceService; import org.dromara.workflow.utils.WorkflowUtils; -import org.flowable.engine.RuntimeService; +import org.flowable.engine.TaskService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -24,9 +24,9 @@ import java.util.Map; public class WorkflowServiceImpl implements WorkflowService { @Autowired(required = false) - private RuntimeService runtimeService; - private final IActProcessInstanceService iActProcessInstanceService; - private final IActHiProcinstService iActHiProcinstService; + private TaskService taskService; + private final IActProcessInstanceService actProcessInstanceService; + private final IActHiProcinstService actHiProcinstService; /** * 运行中的实例 删除程实例,删除历史记录,删除业务与流程关联信息 * @@ -35,7 +35,7 @@ public class WorkflowServiceImpl implements WorkflowService { */ @Override public boolean deleteRunAndHisInstance(List businessKeys) { - return iActProcessInstanceService.deleteRunAndHisInstance(businessKeys); + return actProcessInstanceService.deleteRunAndHisInstance(businessKeys); } /** @@ -67,7 +67,7 @@ public class WorkflowServiceImpl implements WorkflowService { */ @Override public void setVariable(String taskId, String variableName, Object value) { - runtimeService.setVariable(taskId, variableName, value); + taskService.setVariable(taskId, variableName, value); } /** @@ -78,7 +78,7 @@ public class WorkflowServiceImpl implements WorkflowService { */ @Override public void setVariables(String taskId, Map variables) { - runtimeService.setVariables(taskId, variables); + taskService.setVariables(taskId, variables); } /** @@ -90,7 +90,7 @@ public class WorkflowServiceImpl implements WorkflowService { */ @Override public void setVariableLocal(String taskId, String variableName, Object value) { - runtimeService.setVariableLocal(taskId, variableName, value); + taskService.setVariableLocal(taskId, variableName, value); } /** @@ -101,7 +101,7 @@ public class WorkflowServiceImpl implements WorkflowService { */ @Override public void setVariablesLocal(String taskId, Map variables) { - runtimeService.setVariablesLocal(taskId, variables); + taskService.setVariablesLocal(taskId, variables); } /** @@ -112,7 +112,7 @@ public class WorkflowServiceImpl implements WorkflowService { */ @Override public String getInstanceIdByBusinessKey(String businessKey) { - ActHiProcinst actHiProcinst = iActHiProcinstService.selectByBusinessKey(businessKey); + ActHiProcinst actHiProcinst = actHiProcinstService.selectByBusinessKey(businessKey); if (actHiProcinst == null) { return StrUtil.EMPTY; } -- Gitee From d3ccc43d68dcfe9100450a80679feb3400275588 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 24 Oct 2024 14:47:58 +0800 Subject: [PATCH 215/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20postgres?= =?UTF-8?q?=E9=80=82=E9=85=8DfindInSet=E5=86=99=E6=B3=95=20=E6=8F=90?= =?UTF-8?q?=E9=AB=98=E6=9F=A5=E8=AF=A2=E6=95=88=E7=8E=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/dromara/common/mybatis/helper/DataBaseHelper.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/helper/DataBaseHelper.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/helper/DataBaseHelper.java index a7cfee50b..cd43c6831 100644 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/helper/DataBaseHelper.java +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/helper/DataBaseHelper.java @@ -62,8 +62,8 @@ public class DataBaseHelper { // charindex(',100,' , ',0,100,101,') <> 0 return "charindex(',%s,' , ','+%s+',') <> 0".formatted(var, var2); } else if (dataBasyType == DataBaseType.POSTGRE_SQL) { - // (select position(',100,' in ',0,100,101,')) <> 0 - return "(select position(',%s,' in ','||%s||',')) <> 0".formatted(var, var2); + // (select strpos(',0,100,101,' , ',100,')) <> 0 + return "(select strpos(','||%s||',' , ',%s,')) <> 0".formatted(var2, var); } else if (dataBasyType == DataBaseType.ORACLE) { // instr(',0,100,101,' , ',100,') <> 0 return "instr(','||%s||',' , ',%s,') <> 0".formatted(var2, var); -- Gitee From 3ce3ffca05c08fc52e8dea432b2ab415bf897b00 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 25 Oct 2024 10:32:52 +0800 Subject: [PATCH 216/540] update springboot 3.2.10 => 3.2.11 update redisson 3.36.0 => 3.37.0 update mapstruct-plus 1.4.4 => 1.4.5 update anyline 8.7.2-20240930 => 8.7.2-20241022 --- pom.xml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pom.xml b/pom.xml index 4b9860aaa..afe05422c 100644 --- a/pom.xml +++ b/pom.xml @@ -14,7 +14,7 @@ 5.2.2 - 3.2.10 + 3.2.11 UTF-8 UTF-8 17 @@ -28,11 +28,11 @@ 3.9.1 5.8.31 3.2.3 - 3.36.0 + 3.37.0 2.2.7 4.3.1 1.1.2 - 1.4.4 + 1.4.5 0.2.0 1.18.34 1.76 @@ -48,7 +48,7 @@ 1.2.83 - 8.7.2-20240930 + 8.7.2-20241022 7.0.1 -- Gitee From 6c950c95699fc6a78f05ff1b3e33f8832751abe0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 25 Oct 2024 10:58:01 +0800 Subject: [PATCH 217/540] =?UTF-8?q?=F0=9F=8E=80=E5=8F=91=E5=B8=83=205.2.3?= =?UTF-8?q?=20=E6=AD=A3=E5=BC=8F=E7=89=88?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .run/ruoyi-monitor-admin.run.xml | 2 +- .run/ruoyi-server.run.xml | 4 ++-- .run/ruoyi-snailjob-server.run.xml | 2 +- README.md | 2 +- pom.xml | 2 +- ruoyi-common/ruoyi-common-bom/pom.xml | 2 +- script/docker/docker-compose.yml | 8 ++++---- 7 files changed, 11 insertions(+), 11 deletions(-) diff --git a/.run/ruoyi-monitor-admin.run.xml b/.run/ruoyi-monitor-admin.run.xml index 478b4f30d..bcac3d594 100644 --- a/.run/ruoyi-monitor-admin.run.xml +++ b/.run/ruoyi-monitor-admin.run.xml @@ -2,7 +2,7 @@ - diff --git a/.run/ruoyi-server.run.xml b/.run/ruoyi-server.run.xml index 541800ddc..57b0fb821 100644 --- a/.run/ruoyi-server.run.xml +++ b/.run/ruoyi-server.run.xml @@ -2,11 +2,11 @@ - - \ No newline at end of file + diff --git a/.run/ruoyi-snailjob-server.run.xml b/.run/ruoyi-snailjob-server.run.xml index 5221eef4f..f1d3447bd 100644 --- a/.run/ruoyi-snailjob-server.run.xml +++ b/.run/ruoyi-snailjob-server.run.xml @@ -2,7 +2,7 @@ - diff --git a/README.md b/README.md index eeb3f7b4b..3ef0ea03a 100644 --- a/README.md +++ b/README.md @@ -9,7 +9,7 @@ [![License](https://img.shields.io/badge/License-MIT-blue.svg)](https://gitee.com/dromara/RuoYi-Vue-Plus/blob/master/LICENSE) [![使用IntelliJ IDEA开发维护](https://img.shields.io/badge/IntelliJ%20IDEA-提供支持-blue.svg)](https://www.jetbrains.com/?from=RuoYi-Vue-Plus)
-[![RuoYi-Vue-Plus](https://img.shields.io/badge/RuoYi_Vue_Plus-5.2.2-success.svg)](https://gitee.com/dromara/RuoYi-Vue-Plus) +[![RuoYi-Vue-Plus](https://img.shields.io/badge/RuoYi_Vue_Plus-5.2.3-success.svg)](https://gitee.com/dromara/RuoYi-Vue-Plus) [![Spring Boot](https://img.shields.io/badge/Spring%20Boot-3.2-blue.svg)]() [![JDK-17](https://img.shields.io/badge/JDK-17-green.svg)]() [![JDK-21](https://img.shields.io/badge/JDK-21-green.svg)]() diff --git a/pom.xml b/pom.xml index afe05422c..7b92aa7e7 100644 --- a/pom.xml +++ b/pom.xml @@ -13,7 +13,7 @@ RuoYi-Vue-Plus多租户管理系统 - 5.2.2 + 5.2.3 3.2.11 UTF-8 UTF-8 diff --git a/ruoyi-common/ruoyi-common-bom/pom.xml b/ruoyi-common/ruoyi-common-bom/pom.xml index 455408d8c..dbc5f1c2b 100644 --- a/ruoyi-common/ruoyi-common-bom/pom.xml +++ b/ruoyi-common/ruoyi-common-bom/pom.xml @@ -14,7 +14,7 @@ - 5.2.2 + 5.2.3 diff --git a/script/docker/docker-compose.yml b/script/docker/docker-compose.yml index 91d97aeed..0839e74e1 100644 --- a/script/docker/docker-compose.yml +++ b/script/docker/docker-compose.yml @@ -100,7 +100,7 @@ services: network_mode: "host" ruoyi-server1: - image: ruoyi/ruoyi-server:5.2.2 + image: ruoyi/ruoyi-server:5.2.3 container_name: ruoyi-server1 environment: # 时区上海 @@ -115,7 +115,7 @@ services: network_mode: "host" ruoyi-server2: - image: ruoyi/ruoyi-server:5.2.2 + image: ruoyi/ruoyi-server:5.2.3 container_name: ruoyi-server2 environment: # 时区上海 @@ -130,7 +130,7 @@ services: network_mode: "host" ruoyi-monitor-admin: - image: ruoyi/ruoyi-monitor-admin:5.2.2 + image: ruoyi/ruoyi-monitor-admin:5.2.3 container_name: ruoyi-monitor-admin environment: # 时区上海 @@ -142,7 +142,7 @@ services: network_mode: "host" ruoyi-snailjob-server: - image: ruoyi/ruoyi-snailjob-server:5.2.2 + image: ruoyi/ruoyi-snailjob-server:5.2.3 container_name: ruoyi-snailjob-server environment: # 时区上海 -- Gitee From 6ae9bbdb317f919e85edba687f599922c364abe4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 25 Oct 2024 11:30:56 +0800 Subject: [PATCH 218/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20=E6=B3=A8?= =?UTF-8?q?=E5=86=8C=E6=97=A5=E5=BF=97=E8=AE=B0=E5=BD=95=E7=8A=B6=E6=80=81?= =?UTF-8?q?=E9=94=99=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/org/dromara/web/service/SysRegisterService.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ruoyi-admin/src/main/java/org/dromara/web/service/SysRegisterService.java b/ruoyi-admin/src/main/java/org/dromara/web/service/SysRegisterService.java index ddab279bc..9ec08132e 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/service/SysRegisterService.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/service/SysRegisterService.java @@ -84,11 +84,11 @@ public class SysRegisterService { String captcha = RedisUtils.getCacheObject(verifyKey); RedisUtils.deleteObject(verifyKey); if (captcha == null) { - recordLogininfor(tenantId, username, Constants.REGISTER, MessageUtils.message("user.jcaptcha.expire")); + recordLogininfor(tenantId, username, Constants.LOGIN_FAIL, MessageUtils.message("user.jcaptcha.expire")); throw new CaptchaExpireException(); } if (!code.equalsIgnoreCase(captcha)) { - recordLogininfor(tenantId, username, Constants.REGISTER, MessageUtils.message("user.jcaptcha.error")); + recordLogininfor(tenantId, username, Constants.LOGIN_FAIL, MessageUtils.message("user.jcaptcha.error")); throw new CaptchaException(); } } -- Gitee From ddc8bd1139980f75b8eab632a430752b8f880989 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Sun, 27 Oct 2024 23:25:22 +0800 Subject: [PATCH 219/540] =?UTF-8?q?[=E9=87=8D=E5=A4=A7=E6=9B=B4=E6=96=B0]?= =?UTF-8?q?=20update=20(=E5=AE=9E=E9=AA=8C=E6=80=A7=E5=8A=9F=E8=83=BD?= =?UTF-8?q?=E6=85=8E=E6=9B=B4)=E9=87=8D=E6=9E=84=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E6=9D=83=E9=99=90=E5=AE=9E=E7=8E=B0=E9=80=BB=E8=BE=91=20?= =?UTF-8?q?=E6=94=AF=E6=8C=81=E4=BB=BB=E6=84=8Fmapper=E6=96=B9=E6=B3=95?= =?UTF-8?q?=E6=A0=87=E6=B3=A8=E6=B3=A8=E8=A7=A3=20=E6=97=A0=E9=9C=80?= =?UTF-8?q?=E5=86=8D=E6=89=BE=E7=9C=9F=E5=AE=9Emapper=E6=A0=87=E6=B3=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mybatis/aspect/DataPermissionAspect.java | 50 ++++++ .../mybatis/config/MybatisPlusConfig.java | 11 +- .../handler/PlusDataPermissionHandler.java | 146 +++--------------- .../mybatis/helper/DataPermissionHelper.java | 28 ++++ .../PlusDataPermissionInterceptor.java | 10 +- .../dromara/demo/mapper/TestDemoMapper.java | 8 +- 6 files changed, 123 insertions(+), 130 deletions(-) create mode 100644 ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/aspect/DataPermissionAspect.java diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/aspect/DataPermissionAspect.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/aspect/DataPermissionAspect.java new file mode 100644 index 000000000..1c83cc392 --- /dev/null +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/aspect/DataPermissionAspect.java @@ -0,0 +1,50 @@ +package org.dromara.common.mybatis.aspect; + +import lombok.extern.slf4j.Slf4j; +import org.aspectj.lang.JoinPoint; +import org.aspectj.lang.annotation.AfterReturning; +import org.aspectj.lang.annotation.AfterThrowing; +import org.aspectj.lang.annotation.Aspect; +import org.aspectj.lang.annotation.Before; +import org.dromara.common.mybatis.annotation.DataPermission; +import org.dromara.common.mybatis.helper.DataPermissionHelper; + +/** + * 数据权限处理 + * + * @author Lion Li + */ +@Slf4j +@Aspect +public class DataPermissionAspect { + + /** + * 处理请求前执行 + */ + @Before(value = "@annotation(dataPermission)") + public void doBefore(JoinPoint joinPoint, DataPermission dataPermission) { + DataPermissionHelper.setPermission(dataPermission); + } + + /** + * 处理完请求后执行 + * + * @param joinPoint 切点 + */ + @AfterReturning(pointcut = "@annotation(dataPermission)") + public void doAfterReturning(JoinPoint joinPoint, DataPermission dataPermission) { + DataPermissionHelper.removePermission(); + } + + /** + * 拦截异常操作 + * + * @param joinPoint 切点 + * @param e 异常 + */ + @AfterThrowing(value = "@annotation(dataPermission)", throwing = "e") + public void doAfterThrowing(JoinPoint joinPoint, DataPermission dataPermission, Exception e) { + DataPermissionHelper.removePermission(); + } + +} diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/config/MybatisPlusConfig.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/config/MybatisPlusConfig.java index 0bc5b66a1..f7d14ee97 100644 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/config/MybatisPlusConfig.java +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/config/MybatisPlusConfig.java @@ -10,6 +10,7 @@ import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerIntercept import com.baomidou.mybatisplus.extension.plugins.inner.TenantLineInnerInterceptor; import org.dromara.common.core.factory.YmlPropertySourceFactory; import org.dromara.common.core.utils.SpringUtils; +import org.dromara.common.mybatis.aspect.DataPermissionAspect; import org.dromara.common.mybatis.handler.InjectionMetaObjectHandler; import org.dromara.common.mybatis.handler.MybatisExceptionHandler; import org.dromara.common.mybatis.interceptor.PlusDataPermissionInterceptor; @@ -51,7 +52,15 @@ public class MybatisPlusConfig { * 数据权限拦截器 */ public PlusDataPermissionInterceptor dataPermissionInterceptor() { - return new PlusDataPermissionInterceptor(SpringUtils.getProperty("mybatis-plus.mapperPackage")); + return new PlusDataPermissionInterceptor(); + } + + /** + * 数据权限切面处理器 + */ + @Bean + public DataPermissionAspect dataPermissionAspect() { + return new DataPermissionAspect(); } /** diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/PlusDataPermissionHandler.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/PlusDataPermissionHandler.java index ab7e0f6e4..f46ec6922 100644 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/PlusDataPermissionHandler.java +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/PlusDataPermissionHandler.java @@ -1,6 +1,5 @@ package org.dromara.common.mybatis.handler; -import cn.hutool.core.annotation.AnnotationUtil; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.util.ObjectUtil; import lombok.extern.slf4j.Slf4j; @@ -9,7 +8,6 @@ import net.sf.jsqlparser.expression.Expression; import net.sf.jsqlparser.expression.operators.conditional.AndExpression; import net.sf.jsqlparser.expression.operators.relational.ParenthesedExpressionList; import net.sf.jsqlparser.parser.CCJSqlParserUtil; -import org.apache.ibatis.io.Resources; import org.dromara.common.core.domain.dto.RoleDTO; import org.dromara.common.core.domain.model.LoginUser; import org.dromara.common.core.exception.ServiceException; @@ -21,27 +19,17 @@ import org.dromara.common.mybatis.annotation.DataPermission; import org.dromara.common.mybatis.enums.DataScopeType; import org.dromara.common.mybatis.helper.DataPermissionHelper; import org.dromara.common.satoken.utils.LoginHelper; -import org.springframework.context.ConfigurableApplicationContext; import org.springframework.context.expression.BeanFactoryResolver; -import org.springframework.core.io.Resource; -import org.springframework.core.io.support.PathMatchingResourcePatternResolver; -import org.springframework.core.io.support.ResourcePatternResolver; -import org.springframework.core.type.ClassMetadata; -import org.springframework.core.type.classreading.CachingMetadataReaderFactory; import org.springframework.expression.BeanResolver; import org.springframework.expression.ExpressionParser; import org.springframework.expression.ParserContext; import org.springframework.expression.common.TemplateParserContext; import org.springframework.expression.spel.standard.SpelExpressionParser; import org.springframework.expression.spel.support.StandardEvaluationContext; -import org.springframework.util.ClassUtils; -import java.lang.reflect.Method; import java.util.Arrays; import java.util.HashSet; -import java.util.Map; import java.util.Set; -import java.util.concurrent.ConcurrentHashMap; import java.util.function.Function; /** @@ -53,11 +41,6 @@ import java.util.function.Function; @Slf4j public class PlusDataPermissionHandler { - /** - * 方法或类(名称) 与 注解的映射关系缓存 - */ - private final Map dataPermissionCacheMap = new ConcurrentHashMap<>(); - /** * spel 解析器 */ @@ -68,15 +51,6 @@ public class PlusDataPermissionHandler { */ private final BeanResolver beanResolver = new BeanFactoryResolver(SpringUtils.getBeanFactory()); - /** - * 构造方法,扫描指定包下的 Mapper 类并初始化缓存 - * - * @param mapperPackage Mapper 类所在的包路径 - */ - public PlusDataPermissionHandler(String mapperPackage) { - scanMapperClasses(mapperPackage); - } - /** * 获取数据过滤条件的 SQL 片段 * @@ -86,24 +60,24 @@ public class PlusDataPermissionHandler { * @return 数据过滤条件的 SQL 片段 */ public Expression getSqlSegment(Expression where, String mappedStatementId, boolean isSelect) { - // 获取数据权限配置 - DataPermission dataPermission = getDataPermission(mappedStatementId); - // 获取当前登录用户信息 - LoginUser currentUser = DataPermissionHelper.getVariable("user"); - if (ObjectUtil.isNull(currentUser)) { - currentUser = LoginHelper.getLoginUser(); - DataPermissionHelper.setVariable("user", currentUser); - } - // 如果是超级管理员或租户管理员,则不过滤数据 - if (LoginHelper.isSuperAdmin() || LoginHelper.isTenantAdmin()) { - return where; - } - // 构造数据过滤条件的 SQL 片段 - String dataFilterSql = buildDataFilter(dataPermission, isSelect); - if (StringUtils.isBlank(dataFilterSql)) { - return where; - } try { + // 获取数据权限配置 + DataPermission dataPermission = DataPermissionHelper.getPermission(); + // 获取当前登录用户信息 + LoginUser currentUser = DataPermissionHelper.getVariable("user"); + if (ObjectUtil.isNull(currentUser)) { + currentUser = LoginHelper.getLoginUser(); + DataPermissionHelper.setVariable("user", currentUser); + } + // 如果是超级管理员或租户管理员,则不过滤数据 + if (LoginHelper.isSuperAdmin() || LoginHelper.isTenantAdmin()) { + return where; + } + // 构造数据过滤条件的 SQL 片段 + String dataFilterSql = buildDataFilter(dataPermission, isSelect); + if (StringUtils.isBlank(dataFilterSql)) { + return where; + } Expression expression = CCJSqlParserUtil.parseExpression(dataFilterSql); // 数据权限使用单独的括号 防止与其他条件冲突 ParenthesedExpressionList parenthesis = new ParenthesedExpressionList<>(expression); @@ -114,6 +88,8 @@ public class PlusDataPermissionHandler { } } catch (JSQLParserException e) { throw new ServiceException("数据权限解析异常 => " + e.getMessage()); + } finally { + DataPermissionHelper.removePermission(); } } @@ -170,8 +146,11 @@ public class PlusDataPermissionHandler { context.setVariable(dataColumn.key()[i], dataColumn.value()[i]); } + // 忽略数据权限 防止spel表达式内有其他sql查询导致死循环调用 + String sql = DataPermissionHelper.ignore(() -> + parser.parseExpression(type.getSqlTemplate(), parserContext).getValue(context, String.class) + ); // 解析sql模板并填充 - String sql = parser.parseExpression(type.getSqlTemplate(), parserContext).getValue(context, String.class); conditions.add(joinStr + sql); isSuccess = true; } @@ -188,87 +167,12 @@ public class PlusDataPermissionHandler { return ""; } - /** - * 扫描指定包下的 Mapper 类,并查找其中带有特定注解的方法或类 - * - * @param mapperPackage Mapper 类所在的包路径 - */ - private void scanMapperClasses(String mapperPackage) { - // 创建资源解析器和元数据读取工厂 - PathMatchingResourcePatternResolver resolver = new PathMatchingResourcePatternResolver(); - CachingMetadataReaderFactory factory = new CachingMetadataReaderFactory(); - // 将 Mapper 包路径按分隔符拆分为数组 - String[] packagePatternArray = StringUtils.splitPreserveAllTokens(mapperPackage, ConfigurableApplicationContext.CONFIG_LOCATION_DELIMITERS); - String classpath = ResourcePatternResolver.CLASSPATH_ALL_URL_PREFIX; - try { - for (String packagePattern : packagePatternArray) { - // 将包路径转换为资源路径 - String path = ClassUtils.convertClassNameToResourcePath(packagePattern); - // 获取指定路径下的所有 .class 文件资源 - Resource[] resources = resolver.getResources(classpath + path + "/*.class"); - for (Resource resource : resources) { - // 获取资源的类元数据 - ClassMetadata classMetadata = factory.getMetadataReader(resource).getClassMetadata(); - // 获取资源对应的类对象 - Class clazz = Resources.classForName(classMetadata.getClassName()); - // 查找类中的特定注解 - findAnnotation(clazz); - } - } - } catch (Exception e) { - log.error("初始化数据安全缓存时出错:{}", e.getMessage()); - } - } - - /** - * 在指定的类中查找特定的注解 DataPermission,并将带有这个注解的方法或类存储到 dataPermissionCacheMap 中 - * - * @param clazz 要查找的类 - */ - private void findAnnotation(Class clazz) { - DataPermission dataPermission; - for (Method method : clazz.getMethods()) { - if (method.isDefault() || method.isVarArgs()) { - continue; - } - String mappedStatementId = clazz.getName() + "." + method.getName(); - if (AnnotationUtil.hasAnnotation(method, DataPermission.class)) { - dataPermission = AnnotationUtil.getAnnotation(method, DataPermission.class); - dataPermissionCacheMap.put(mappedStatementId, dataPermission); - } - } - if (AnnotationUtil.hasAnnotation(clazz, DataPermission.class)) { - dataPermission = AnnotationUtil.getAnnotation(clazz, DataPermission.class); - dataPermissionCacheMap.put(clazz.getName(), dataPermission); - } - } - - /** - * 根据映射语句 ID 或类名获取对应的 DataPermission 注解对象 - * - * @param mapperId 映射语句 ID - * @return DataPermission 注解对象,如果不存在则返回 null - */ - public DataPermission getDataPermission(String mapperId) { - // 检查缓存中是否包含映射语句 ID 对应的 DataPermission 注解对象 - if (dataPermissionCacheMap.containsKey(mapperId)) { - return dataPermissionCacheMap.get(mapperId); - } - // 如果缓存中不包含映射语句 ID 对应的 DataPermission 注解对象,则尝试使用类名作为键查找 - String clazzName = mapperId.substring(0, mapperId.lastIndexOf(".")); - if (dataPermissionCacheMap.containsKey(clazzName)) { - return dataPermissionCacheMap.get(clazzName); - } - return null; - } - /** * 检查给定的映射语句 ID 是否有效,即是否能够找到对应的 DataPermission 注解对象 * - * @param mapperId 映射语句 ID * @return 如果找到对应的 DataPermission 注解对象,则返回 false;否则返回 true */ - public boolean invalid(String mapperId) { - return getDataPermission(mapperId) == null; + public boolean invalid() { + return DataPermissionHelper.getPermission() == null; } } diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/helper/DataPermissionHelper.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/helper/DataPermissionHelper.java index 932f17388..f03d74e83 100644 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/helper/DataPermissionHelper.java +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/helper/DataPermissionHelper.java @@ -9,6 +9,7 @@ import com.baomidou.mybatisplus.core.plugins.InterceptorIgnoreHelper; import lombok.AccessLevel; import lombok.NoArgsConstructor; import org.dromara.common.core.utils.reflect.ReflectUtils; +import org.dromara.common.mybatis.annotation.DataPermission; import java.util.HashMap; import java.util.Map; @@ -29,6 +30,33 @@ public class DataPermissionHelper { private static final ThreadLocal> REENTRANT_IGNORE = ThreadLocal.withInitial(Stack::new); + private static final ThreadLocal PERMISSION_CACHE = new ThreadLocal<>(); + + /** + * 获取当前执行mapper权限注解 + * + * @return 返回当前执行mapper权限注解 + */ + public static DataPermission getPermission() { + return PERMISSION_CACHE.get(); + } + + /** + * 设置当前执行mapper权限注解 + * + * @param dataPermission 数据权限注解 + */ + public static void setPermission(DataPermission dataPermission) { + PERMISSION_CACHE.set(dataPermission); + } + + /** + * 删除当前执行mapper权限注解 + */ + public static void removePermission() { + PERMISSION_CACHE.remove(); + } + /** * 从上下文中获取指定键的变量值,并将其转换为指定的类型 * diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/interceptor/PlusDataPermissionInterceptor.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/interceptor/PlusDataPermissionInterceptor.java index 85a4d0abc..587a99886 100644 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/interceptor/PlusDataPermissionInterceptor.java +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/interceptor/PlusDataPermissionInterceptor.java @@ -39,11 +39,9 @@ public class PlusDataPermissionInterceptor extends BaseMultiTableInnerIntercepto /** * 构造函数,初始化 PlusDataPermissionHandler 实例 - * - * @param mapperPackage 扫描的映射器包 */ - public PlusDataPermissionInterceptor(String mapperPackage) { - this.dataPermissionHandler = new PlusDataPermissionHandler(mapperPackage); + public PlusDataPermissionInterceptor() { + this.dataPermissionHandler = new PlusDataPermissionHandler(); } /** @@ -64,7 +62,7 @@ public class PlusDataPermissionInterceptor extends BaseMultiTableInnerIntercepto return; } // 检查是否缺少有效的数据权限注解 - if (dataPermissionHandler.invalid(ms.getId())) { + if (dataPermissionHandler.invalid()) { return; } // 解析 sql 分配对应方法 @@ -92,7 +90,7 @@ public class PlusDataPermissionInterceptor extends BaseMultiTableInnerIntercepto return; } // 检查是否缺少有效的数据权限注解 - if (dataPermissionHandler.invalid(ms.getId())) { + if (dataPermissionHandler.invalid()) { return; } PluginUtils.MPBoundSql mpBs = mpSh.mPBoundSql(); diff --git a/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/mapper/TestDemoMapper.java b/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/mapper/TestDemoMapper.java index 57efdc7da..19b2d52df 100644 --- a/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/mapper/TestDemoMapper.java +++ b/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/mapper/TestDemoMapper.java @@ -34,14 +34,18 @@ public interface TestDemoMapper extends BaseMapperPlus { @DataColumn(key = "deptName", value = "dept_id"), @DataColumn(key = "userName", value = "user_id") }) - List selectList(IPage page, @Param(Constants.WRAPPER) Wrapper queryWrapper); + default

> P selectVoPage(IPage page, Wrapper wrapper) { + return selectVoPage(page, wrapper, this.currentVoClass()); + } @Override @DataPermission({ @DataColumn(key = "deptName", value = "dept_id"), @DataColumn(key = "userName", value = "user_id") }) - List selectList(@Param(Constants.WRAPPER) Wrapper queryWrapper); + default List selectVoList(Wrapper wrapper) { + return selectVoList(wrapper, this.currentVoClass()); + } @Override @DataPermission(value = { -- Gitee From 6731b7947b06fd5fcc266f87769728243fe82e5a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Mon, 28 Oct 2024 10:21:45 +0800 Subject: [PATCH 220/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E8=A7=92?= =?UTF-8?q?=E8=89=B2=E6=B8=85=E7=90=86=E5=9C=A8=E7=BA=BF=E7=94=A8=E6=88=B7?= =?UTF-8?q?=E4=BB=A3=E7=A0=81=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../system/service/ISysRoleService.java | 2 + .../service/impl/SysRoleServiceImpl.java | 41 ++++++++++++++++--- 2 files changed, 38 insertions(+), 5 deletions(-) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysRoleService.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysRoleService.java index 64740aeff..cec4bf775 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysRoleService.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysRoleService.java @@ -197,4 +197,6 @@ public interface ISysRoleService { void cleanOnlineUserByRole(Long roleId); + void cleanOnlineUser(List userIds); + } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysRoleServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysRoleServiceImpl.java index 9b8b0ecbe..fee0a5b77 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysRoleServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysRoleServiceImpl.java @@ -435,7 +435,7 @@ public class SysRoleServiceImpl implements ISysRoleService { .eq(SysUserRole::getRoleId, userRole.getRoleId()) .eq(SysUserRole::getUserId, userRole.getUserId())); if (rows > 0) { - cleanOnlineUserByRole(userRole.getRoleId()); + cleanOnlineUser(List.of(userRole.getUserId())); } return rows; } @@ -449,11 +449,12 @@ public class SysRoleServiceImpl implements ISysRoleService { */ @Override public int deleteAuthUsers(Long roleId, Long[] userIds) { + List ids = List.of(userIds); int rows = userRoleMapper.delete(new LambdaQueryWrapper() .eq(SysUserRole::getRoleId, roleId) - .in(SysUserRole::getUserId, Arrays.asList(userIds))); + .in(SysUserRole::getUserId, ids)); if (rows > 0) { - cleanOnlineUserByRole(roleId); + cleanOnlineUser(ids); } return rows; } @@ -469,7 +470,8 @@ public class SysRoleServiceImpl implements ISysRoleService { public int insertAuthUsers(Long roleId, Long[] userIds) { // 新增用户与角色管理 int rows = 1; - List list = StreamUtils.toList(List.of(userIds), userId -> { + List ids = List.of(userIds); + List list = StreamUtils.toList(ids, userId -> { SysUserRole ur = new SysUserRole(); ur.setUserId(userId); ur.setRoleId(roleId); @@ -479,7 +481,7 @@ public class SysRoleServiceImpl implements ISysRoleService { rows = userRoleMapper.insertBatch(list) ? list.size() : 0; } if (rows > 0) { - cleanOnlineUserByRole(roleId); + cleanOnlineUser(ids); } return rows; } @@ -503,6 +505,9 @@ public class SysRoleServiceImpl implements ISysRoleService { return; } LoginUser loginUser = LoginHelper.getLoginUser(token); + if (ObjectUtil.isNull(loginUser) || CollUtil.isEmpty(loginUser.getRoles())) { + return; + } if (loginUser.getRoles().stream().anyMatch(r -> r.getRoleId().equals(roleId))) { try { StpUtil.logoutByTokenValue(token); @@ -511,4 +516,30 @@ public class SysRoleServiceImpl implements ISysRoleService { } }); } + + @Override + public void cleanOnlineUser(List userIds) { + List keys = StpUtil.searchTokenValue("", 0, -1, false); + if (CollUtil.isEmpty(keys)) { + return; + } + // 角色关联的在线用户量过大会导致redis阻塞卡顿 谨慎操作 + keys.parallelStream().forEach(key -> { + String token = StringUtils.substringAfterLast(key, ":"); + // 如果已经过期则跳过 + if (StpUtil.stpLogic.getTokenActiveTimeoutByToken(token) < -1) { + return; + } + LoginUser loginUser = LoginHelper.getLoginUser(token); + if (ObjectUtil.isNull(loginUser)) { + return; + } + if (userIds.contains(loginUser.getUserId())) { + try { + StpUtil.logoutByTokenValue(token); + } catch (NotLoginException ignored) { + } + } + }); + } } -- Gitee From 761586cc3c7ed0f581350c917483208949dc66b4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Mon, 28 Oct 2024 17:44:21 +0800 Subject: [PATCH 221/540] =?UTF-8?q?reset=20=E5=9B=9E=E6=BB=9A=E9=94=99?= =?UTF-8?q?=E8=AF=AF=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/org/dromara/common/oss/core/OssClient.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java b/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java index 900536b56..ba924c0bb 100644 --- a/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java +++ b/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java @@ -83,10 +83,10 @@ public class OssClient { StaticCredentialsProvider credentialsProvider = StaticCredentialsProvider.create( AwsBasicCredentials.create(properties.getAccessKey(), properties.getSecretKey())); - //使用对象存储服务时要求明确配置访问样式(路径样式或虚拟托管样式)。需要启用路径样式访问 - boolean isStyle = true; + // MinIO 使用 HTTPS 限制使用域名访问,站点填域名。需要启用路径样式访问 + boolean isStyle = !StringUtils.containsAny(properties.getEndpoint(), OssConstant.CLOUD_SERVICE); - //创建AWS基于 CRT 的 S3 客户端 + // 创建AWS基于 CRT 的 S3 客户端 this.client = S3AsyncClient.crtBuilder() .credentialsProvider(credentialsProvider) .endpointOverride(URI.create(getEndpoint())) -- Gitee From 2a9f245b395a122dfb9fe4e7ff0d5352f252c25f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Mon, 28 Oct 2024 18:09:32 +0800 Subject: [PATCH 222/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E5=88=A0?= =?UTF-8?q?=E9=99=A4=E6=A1=B6=E8=87=AA=E5=8A=A8=E5=88=9B=E5=BB=BA=E4=BB=A3?= =?UTF-8?q?=E7=A0=81=E9=80=BB=E8=BE=91(=E4=BA=91=E5=8E=82=E5=95=86?= =?UTF-8?q?=E9=99=90=E5=88=B6=E4=B8=8D=E5=85=81=E8=AE=B8=E6=93=8D=E4=BD=9C?= =?UTF-8?q?=E6=A1=B6)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dromara/common/oss/core/OssClient.java | 104 +----------------- .../common/oss/enumd/AccessPolicyType.java | 11 +- 2 files changed, 8 insertions(+), 107 deletions(-) diff --git a/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java b/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java index ba924c0bb..f7b3e8a4d 100644 --- a/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java +++ b/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java @@ -9,7 +9,6 @@ import org.dromara.common.core.utils.file.FileUtils; import org.dromara.common.oss.constant.OssConstant; import org.dromara.common.oss.entity.UploadResult; import org.dromara.common.oss.enumd.AccessPolicyType; -import org.dromara.common.oss.enumd.PolicyType; import org.dromara.common.oss.exception.OssException; import org.dromara.common.oss.properties.OssProperties; import software.amazon.awssdk.auth.credentials.AwsBasicCredentials; @@ -23,7 +22,6 @@ import software.amazon.awssdk.services.s3.S3Configuration; import software.amazon.awssdk.services.s3.crt.S3CrtHttpConfiguration; import software.amazon.awssdk.services.s3.model.GetObjectResponse; import software.amazon.awssdk.services.s3.model.NoSuchBucketException; -import software.amazon.awssdk.services.s3.model.S3Exception; import software.amazon.awssdk.services.s3.presigner.S3Presigner; import software.amazon.awssdk.transfer.s3.S3TransferManager; import software.amazon.awssdk.transfer.s3.model.*; @@ -115,8 +113,7 @@ public class OssClient { .serviceConfiguration(config) .build(); - // 创建存储桶 - createBucket(); + checkBucket(); } catch (Exception e) { if (e instanceof OssException) { throw e; @@ -126,36 +123,18 @@ public class OssClient { } /** - * 同步创建存储桶 - * 如果存储桶不存在,会进行创建;如果存储桶存在,不执行任何操作 + * 检查桶是否存在 * * @throws OssException 当创建存储桶时发生异常时抛出 */ - public void createBucket() { + public void checkBucket() { String bucketName = properties.getBucketName(); try { // 尝试获取存储桶的信息 - client.headBucket( - x -> x.bucket(bucketName) - .build()) - .join(); + client.headBucket(x -> x.bucket(bucketName).build()).join(); } catch (Exception ex) { if (ex.getCause() instanceof NoSuchBucketException) { - try { - // 存储桶不存在,尝试创建存储桶 - client.createBucket( - x -> x.bucket(bucketName)) - .join(); - - // 设置存储桶的访问策略(Bucket Policy) - client.putBucketPolicy( - x -> x.bucket(bucketName) - .policy(getPolicy(bucketName, getAccessPolicy().getPolicyType()))) - .join(); - } catch (S3Exception e) { - // 存储桶创建或策略设置失败 - throw new OssException("创建Bucket失败, 请核对配置信息:[" + e.getMessage() + "]"); - } + throw new OssException("Bucket桶是不存在的,请核对配置信息:[" + ex.getMessage() + "]"); } else { throw new OssException("判断Bucket是否存在失败,请核对配置信息:[" + ex.getMessage() + "]"); } @@ -529,77 +508,4 @@ public class OssClient { return AccessPolicyType.getByType(properties.getAccessPolicy()); } - /** - * 生成 AWS S3 存储桶访问策略 - * - * @param bucketName 存储桶 - * @param policyType 桶策略类型 - * @return 符合 AWS S3 存储桶访问策略格式的字符串 - */ - private static String getPolicy(String bucketName, PolicyType policyType) { - String policy = switch (policyType) { - case WRITE -> """ - { - "Version": "2012-10-17", - "Statement": [] - } - """; - case READ_WRITE -> """ - { - "Version": "2012-10-17", - "Statement": [ - { - "Effect": "Allow", - "Principal": "*", - "Action": [ - "s3:GetBucketLocation", - "s3:ListBucket", - "s3:ListBucketMultipartUploads" - ], - "Resource": "arn:aws:s3:::bucketName" - }, - { - "Effect": "Allow", - "Principal": "*", - "Action": [ - "s3:AbortMultipartUpload", - "s3:DeleteObject", - "s3:GetObject", - "s3:ListMultipartUploadParts", - "s3:PutObject" - ], - "Resource": "arn:aws:s3:::bucketName/*" - } - ] - } - """; - case READ -> """ - { - "Version": "2012-10-17", - "Statement": [ - { - "Effect": "Allow", - "Principal": "*", - "Action": ["s3:GetBucketLocation"], - "Resource": "arn:aws:s3:::bucketName" - }, - { - "Effect": "Deny", - "Principal": "*", - "Action": ["s3:ListBucket"], - "Resource": "arn:aws:s3:::bucketName" - }, - { - "Effect": "Allow", - "Principal": "*", - "Action": "s3:GetObject", - "Resource": "arn:aws:s3:::bucketName/*" - } - ] - } - """; - }; - return policy.replaceAll("bucketName", bucketName); - } - } diff --git a/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/enumd/AccessPolicyType.java b/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/enumd/AccessPolicyType.java index 6d39133d5..a257bbae0 100644 --- a/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/enumd/AccessPolicyType.java +++ b/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/enumd/AccessPolicyType.java @@ -17,17 +17,17 @@ public enum AccessPolicyType { /** * private */ - PRIVATE("0", BucketCannedACL.PRIVATE, ObjectCannedACL.PRIVATE, PolicyType.WRITE), + PRIVATE("0", BucketCannedACL.PRIVATE, ObjectCannedACL.PRIVATE), /** * public */ - PUBLIC("1", BucketCannedACL.PUBLIC_READ_WRITE, ObjectCannedACL.PUBLIC_READ_WRITE, PolicyType.READ_WRITE), + PUBLIC("1", BucketCannedACL.PUBLIC_READ_WRITE, ObjectCannedACL.PUBLIC_READ_WRITE), /** * custom */ - CUSTOM("2", BucketCannedACL.PUBLIC_READ, ObjectCannedACL.PUBLIC_READ, PolicyType.READ); + CUSTOM("2", BucketCannedACL.PUBLIC_READ, ObjectCannedACL.PUBLIC_READ); /** * 桶 权限类型(数据库值) @@ -44,11 +44,6 @@ public enum AccessPolicyType { */ private final ObjectCannedACL objectCannedACL; - /** - * 桶策略类型 - */ - private final PolicyType policyType; - public static AccessPolicyType getByType(String type) { for (AccessPolicyType value : values()) { if (value.getType().equals(type)) { -- Gitee From 5f31efd33e07fc815795e961b1fc5a8c7f347e0b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Mon, 28 Oct 2024 18:10:49 +0800 Subject: [PATCH 223/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E5=88=A0?= =?UTF-8?q?=E9=99=A4=E6=A1=B6=E8=87=AA=E5=8A=A8=E5=88=9B=E5=BB=BA=E4=BB=A3?= =?UTF-8?q?=E7=A0=81=E9=80=BB=E8=BE=91(=E4=BA=91=E5=8E=82=E5=95=86?= =?UTF-8?q?=E9=99=90=E5=88=B6=E4=B8=8D=E5=85=81=E8=AE=B8=E6=93=8D=E4=BD=9C?= =?UTF-8?q?=E6=A1=B6)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dromara/common/oss/enumd/PolicyType.java | 35 ------------------- 1 file changed, 35 deletions(-) delete mode 100644 ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/enumd/PolicyType.java diff --git a/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/enumd/PolicyType.java b/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/enumd/PolicyType.java deleted file mode 100644 index fe96341df..000000000 --- a/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/enumd/PolicyType.java +++ /dev/null @@ -1,35 +0,0 @@ -package org.dromara.common.oss.enumd; - -import lombok.AllArgsConstructor; -import lombok.Getter; - -/** - * minio策略配置 - * - * @author Lion Li - */ -@Getter -@AllArgsConstructor -public enum PolicyType { - - /** - * 只读 - */ - READ("read-only"), - - /** - * 只写 - */ - WRITE("write-only"), - - /** - * 读写 - */ - READ_WRITE("read-write"); - - /** - * 类型 - */ - private final String type; - -} -- Gitee From df9a57c379f383129e8fc33c7d886f8c8fdd9b35 Mon Sep 17 00:00:00 2001 From: Lucien_Lu Date: Tue, 29 Oct 2024 01:29:15 +0000 Subject: [PATCH 224/540] =?UTF-8?q?!592=20=E6=9B=BF=E6=8D=A2RedisUtils?= =?UTF-8?q?=E4=B8=AD=E7=9A=84=E8=BF=87=E6=97=B6=E6=96=B9=E6=B3=95=20*=20up?= =?UTF-8?q?date:=E6=9B=BF=E6=8D=A2RedisUtils=E4=B8=AD=E7=9A=84=E5=BA=9F?= =?UTF-8?q?=E5=BC=83=E6=96=B9=E6=B3=95getKeysStreamByPattern=E5=8F=8AtrySe?= =?UTF-8?q?tRate?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/redis/utils/RedisUtils.java | 30 ++++++++++++++++--- 1 file changed, 26 insertions(+), 4 deletions(-) diff --git a/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/utils/RedisUtils.java b/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/utils/RedisUtils.java index 6fa3b7485..a0efde600 100644 --- a/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/utils/RedisUtils.java +++ b/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/utils/RedisUtils.java @@ -4,6 +4,7 @@ import lombok.AccessLevel; import lombok.NoArgsConstructor; import org.dromara.common.core.utils.SpringUtils; import org.redisson.api.*; +import org.redisson.api.options.KeysScanOptions; import java.time.Duration; import java.util.Collection; @@ -37,7 +38,7 @@ public class RedisUtils { */ public static long rateLimiter(String key, RateType rateType, int rate, int rateInterval) { RRateLimiter rateLimiter = CLIENT.getRateLimiter(key); - rateLimiter.trySetRate(rateType, rate, rateInterval, RateIntervalUnit.SECONDS); + rateLimiter.trySetRate(rateType, rate, Duration.ofSeconds(rateInterval)); if (rateLimiter.tryAcquire()) { return rateLimiter.availablePermits(); } else { @@ -518,13 +519,34 @@ public class RedisUtils { /** * 获得缓存的基本对象列表(全局匹配忽略租户 自行拼接租户id) - * + *

+ * limit-设置扫描的限制数量(默认为0,查询全部) + * pattern-设置键的匹配模式(默认为null) + * chunkSize-设置每次扫描的块大小(默认为0,本方法设置为1000) + * type-设置键的类型(默认为null,查询全部类型) + *

+ * @see KeysScanOptions * @param pattern 字符串前缀 * @return 对象列表 */ public static Collection keys(final String pattern) { - Stream stream = CLIENT.getKeys().getKeysStreamByPattern(pattern); - return stream.collect(Collectors.toList()); + return keys(KeysScanOptions.defaults().pattern(pattern).chunkSize(1000)); + } + + /** + * 通过扫描参数获取缓存的基本对象列表 + * @param keysScanOptions 扫描参数 + *

+ * limit-设置扫描的限制数量(默认为0,查询全部) + * pattern-设置键的匹配模式(默认为null) + * chunkSize-设置每次扫描的块大小(默认为0) + * type-设置键的类型(默认为null,查询全部类型) + *

+ * @see KeysScanOptions + */ + public static Collection keys(final KeysScanOptions keysScanOptions) { + Stream keysStream = CLIENT.getKeys().getKeysStream(keysScanOptions); + return keysStream.collect(Collectors.toList()); } /** -- Gitee From a21fa666fda1c9f2333ebbe7c5e32b093a3037cb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Tue, 29 Oct 2024 09:39:45 +0800 Subject: [PATCH 225/540] update springboot 3.2.11 => 3.3.5 update springboot-admin 3.2.3 => 3.3.4 --- README.md | 2 +- pom.xml | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 3ef0ea03a..f0fdd4a99 100644 --- a/README.md +++ b/README.md @@ -10,7 +10,7 @@ [![使用IntelliJ IDEA开发维护](https://img.shields.io/badge/IntelliJ%20IDEA-提供支持-blue.svg)](https://www.jetbrains.com/?from=RuoYi-Vue-Plus)
[![RuoYi-Vue-Plus](https://img.shields.io/badge/RuoYi_Vue_Plus-5.2.3-success.svg)](https://gitee.com/dromara/RuoYi-Vue-Plus) -[![Spring Boot](https://img.shields.io/badge/Spring%20Boot-3.2-blue.svg)]() +[![Spring Boot](https://img.shields.io/badge/Spring%20Boot-3.3-blue.svg)]() [![JDK-17](https://img.shields.io/badge/JDK-17-green.svg)]() [![JDK-21](https://img.shields.io/badge/JDK-21-green.svg)]() diff --git a/pom.xml b/pom.xml index 7b92aa7e7..95a14c4cc 100644 --- a/pom.xml +++ b/pom.xml @@ -14,7 +14,7 @@ 5.2.3 - 3.2.11 + 3.3.5 UTF-8 UTF-8 17 @@ -27,7 +27,7 @@ 3.5.8 3.9.1 5.8.31 - 3.2.3 + 3.3.4 3.37.0 2.2.7 4.3.1 -- Gitee From 1757e5519daacdc2ced207b5de617956c267dd91 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Tue, 29 Oct 2024 11:19:08 +0800 Subject: [PATCH 226/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E5=8E=BB?= =?UTF-8?q?=E9=99=A4GenUtils=E8=AE=BE=E7=BD=AEcreateby=E9=80=BB=E8=BE=91?= =?UTF-8?q?=20=E7=BB=9F=E4=B8=80=E8=B5=B0=E8=87=AA=E5=8A=A8=E6=B3=A8?= =?UTF-8?q?=E5=85=A5=E8=AE=BE=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/dromara/generator/service/GenTableServiceImpl.java | 4 +--- .../src/main/java/org/dromara/generator/util/GenUtils.java | 3 +-- 2 files changed, 2 insertions(+), 5 deletions(-) diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java index bb8b444fc..38caa5c6e 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java +++ b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java @@ -29,7 +29,6 @@ import org.dromara.common.core.utils.file.FileUtils; import org.dromara.common.json.utils.JsonUtils; import org.dromara.common.mybatis.core.page.PageQuery; import org.dromara.common.mybatis.core.page.TableDataInfo; -import org.dromara.common.satoken.utils.LoginHelper; import org.dromara.generator.constant.GenConstants; import org.dromara.generator.domain.GenTable; import org.dromara.generator.domain.GenTableColumn; @@ -269,11 +268,10 @@ public class GenTableServiceImpl implements IGenTableService { @DSTransactional @Override public void importGenTable(List tableList, String dataName) { - Long operId = LoginHelper.getUserId(); try { for (GenTable table : tableList) { String tableName = table.getTableName(); - GenUtils.initTable(table, operId); + GenUtils.initTable(table); table.setDataName(dataName); int row = baseMapper.insert(table); if (row > 0) { diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/util/GenUtils.java b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/util/GenUtils.java index 2e6b37b6d..c9357c0c4 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/util/GenUtils.java +++ b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/util/GenUtils.java @@ -22,14 +22,13 @@ public class GenUtils { /** * 初始化表信息 */ - public static void initTable(GenTable genTable, Long operId) { + public static void initTable(GenTable genTable) { genTable.setClassName(convertClassName(genTable.getTableName())); genTable.setPackageName(GenConfig.getPackageName()); genTable.setModuleName(getModuleName(GenConfig.getPackageName())); genTable.setBusinessName(getBusinessName(genTable.getTableName())); genTable.setFunctionName(replaceText(genTable.getTableComment())); genTable.setFunctionAuthor(GenConfig.getAuthor()); - genTable.setCreateBy(operId); } /** -- Gitee From 9b6b288e735ee19761cdb05c863579714f5b86b8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Tue, 29 Oct 2024 16:42:04 +0800 Subject: [PATCH 227/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E5=A4=9A?= =?UTF-8?q?=E7=A7=9F=E6=88=B7=E6=8F=92=E4=BB=B6=E5=88=9D=E5=A7=8B=E5=8C=96?= =?UTF-8?q?=E6=B5=81=E7=A8=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mybatis/config/MybatisPlusConfig.java | 1 + .../common/tenant/config/TenantConfig.java | 22 +++++++------------ 2 files changed, 9 insertions(+), 14 deletions(-) diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/config/MybatisPlusConfig.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/config/MybatisPlusConfig.java index f7d14ee97..805c3d0d6 100644 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/config/MybatisPlusConfig.java +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/config/MybatisPlusConfig.java @@ -38,6 +38,7 @@ public class MybatisPlusConfig { TenantLineInnerInterceptor tenant = SpringUtils.getBean(TenantLineInnerInterceptor.class); interceptor.addInnerInterceptor(tenant); } catch (BeansException ignore) { + ignore.printStackTrace(); } // 数据权限处理 interceptor.addInnerInterceptor(dataPermissionInterceptor()); diff --git a/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/config/TenantConfig.java b/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/config/TenantConfig.java index 07302bc81..010e1e411 100644 --- a/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/config/TenantConfig.java +++ b/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/config/TenantConfig.java @@ -4,7 +4,6 @@ import cn.dev33.satoken.dao.SaTokenDao; import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.extension.plugins.inner.TenantLineInnerInterceptor; import org.dromara.common.core.utils.reflect.ReflectUtils; -import org.dromara.common.mybatis.config.MybatisPlusConfig; import org.dromara.common.redis.config.RedisConfig; import org.dromara.common.redis.config.properties.RedissonProperties; import org.dromara.common.tenant.core.TenantSaTokenDao; @@ -16,7 +15,7 @@ import org.redisson.config.ClusterServersConfig; import org.redisson.config.SingleServerConfig; import org.redisson.spring.starter.RedissonAutoConfigurationCustomizer; import org.springframework.boot.autoconfigure.AutoConfiguration; -import org.springframework.boot.autoconfigure.condition.ConditionalOnBean; +import org.springframework.boot.autoconfigure.condition.ConditionalOnClass; import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; import org.springframework.boot.context.properties.EnableConfigurationProperties; import org.springframework.cache.CacheManager; @@ -33,18 +32,13 @@ import org.springframework.context.annotation.Primary; @ConditionalOnProperty(value = "tenant.enable", havingValue = "true") public class TenantConfig { - @ConditionalOnBean(MybatisPlusConfig.class) - @AutoConfiguration(after = {MybatisPlusConfig.class}) - static class MybatisPlusConfiguration { - - /** - * 多租户插件 - */ - @Bean - public TenantLineInnerInterceptor tenantLineInnerInterceptor(TenantProperties tenantProperties) { - return new TenantLineInnerInterceptor(new PlusTenantLineHandler(tenantProperties)); - } - + /** + * 多租户插件 + */ + @ConditionalOnClass(TenantLineInnerInterceptor.class) + @Bean + public TenantLineInnerInterceptor tenantLineInnerInterceptor(TenantProperties tenantProperties) { + return new TenantLineInnerInterceptor(new PlusTenantLineHandler(tenantProperties)); } @Bean -- Gitee From 8cd30ae86b0aab3fc3a3a8ab19dfd3c22aba5a7b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Tue, 29 Oct 2024 16:42:53 +0800 Subject: [PATCH 228/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E5=A4=9A?= =?UTF-8?q?=E7=A7=9F=E6=88=B7=E6=8F=92=E4=BB=B6=E5=88=9D=E5=A7=8B=E5=8C=96?= =?UTF-8?q?=E6=B5=81=E7=A8=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/dromara/common/mybatis/config/MybatisPlusConfig.java | 1 - 1 file changed, 1 deletion(-) diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/config/MybatisPlusConfig.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/config/MybatisPlusConfig.java index 805c3d0d6..f7d14ee97 100644 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/config/MybatisPlusConfig.java +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/config/MybatisPlusConfig.java @@ -38,7 +38,6 @@ public class MybatisPlusConfig { TenantLineInnerInterceptor tenant = SpringUtils.getBean(TenantLineInnerInterceptor.class); interceptor.addInnerInterceptor(tenant); } catch (BeansException ignore) { - ignore.printStackTrace(); } // 数据权限处理 interceptor.addInnerInterceptor(dataPermissionInterceptor()); -- Gitee From 112157ade0e33e6406ede5a0d1c38fa165f5989e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Tue, 29 Oct 2024 16:55:41 +0800 Subject: [PATCH 229/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E5=A4=9A?= =?UTF-8?q?=E7=A7=9F=E6=88=B7=E6=8F=92=E4=BB=B6=E5=88=9D=E5=A7=8B=E5=8C=96?= =?UTF-8?q?=E6=B5=81=E7=A8=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/tenant/config/TenantConfig.java | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/config/TenantConfig.java b/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/config/TenantConfig.java index 010e1e411..2513aac92 100644 --- a/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/config/TenantConfig.java +++ b/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/config/TenantConfig.java @@ -32,13 +32,18 @@ import org.springframework.context.annotation.Primary; @ConditionalOnProperty(value = "tenant.enable", havingValue = "true") public class TenantConfig { - /** - * 多租户插件 - */ @ConditionalOnClass(TenantLineInnerInterceptor.class) - @Bean - public TenantLineInnerInterceptor tenantLineInnerInterceptor(TenantProperties tenantProperties) { - return new TenantLineInnerInterceptor(new PlusTenantLineHandler(tenantProperties)); + @AutoConfiguration + static class MybatisPlusConfiguration { + + /** + * 多租户插件 + */ + @Bean + public TenantLineInnerInterceptor tenantLineInnerInterceptor(TenantProperties tenantProperties) { + return new TenantLineInnerInterceptor(new PlusTenantLineHandler(tenantProperties)); + } + } @Bean -- Gitee From 3b5858b1148ee8c5b158daeb9d2e97423120aeeb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Tue, 29 Oct 2024 19:12:07 +0800 Subject: [PATCH 230/540] update mybatis-plus 3.5.8 => 3.5.9 --- pom.xml | 8 +++++++- ruoyi-common/ruoyi-common-mybatis/pom.xml | 5 +++++ 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 95a14c4cc..9c9abd0ed 100644 --- a/pom.xml +++ b/pom.xml @@ -24,7 +24,7 @@ 4.0.3 2.3 1.39.0 - 3.5.8 + 3.5.9 3.9.1 5.8.31 3.3.4 @@ -216,6 +216,12 @@ ${mybatis-plus.version}
+ + com.baomidou + mybatis-plus-jsqlparser + ${mybatis-plus.version} + + com.baomidou mybatis-plus-annotation diff --git a/ruoyi-common/ruoyi-common-mybatis/pom.xml b/ruoyi-common/ruoyi-common-mybatis/pom.xml index a58064a8a..d79ba284a 100644 --- a/ruoyi-common/ruoyi-common-mybatis/pom.xml +++ b/ruoyi-common/ruoyi-common-mybatis/pom.xml @@ -37,6 +37,11 @@ mybatis-plus-spring-boot3-starter + + com.baomidou + mybatis-plus-jsqlparser + + p6spy -- Gitee From 2d190cfb192d73480206452f40e5c9ccb8fd5951 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Tue, 29 Oct 2024 19:12:19 +0800 Subject: [PATCH 231/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20jackson?= =?UTF-8?q?=20=E8=BF=87=E6=9C=9F=E6=96=B9=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/translation/core/handler/TranslationHandler.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ruoyi-common/ruoyi-common-translation/src/main/java/org/dromara/common/translation/core/handler/TranslationHandler.java b/ruoyi-common/ruoyi-common-translation/src/main/java/org/dromara/common/translation/core/handler/TranslationHandler.java index bb9615bfd..a90f1e1ec 100644 --- a/ruoyi-common/ruoyi-common-translation/src/main/java/org/dromara/common/translation/core/handler/TranslationHandler.java +++ b/ruoyi-common/ruoyi-common-translation/src/main/java/org/dromara/common/translation/core/handler/TranslationHandler.java @@ -39,7 +39,7 @@ public class TranslationHandler extends JsonSerializer implements Contex if (ObjectUtil.isNotNull(trans)) { // 如果映射字段不为空 则取映射字段的值 if (StringUtils.isNotBlank(translation.mapper())) { - value = ReflectUtils.invokeGetter(gen.getCurrentValue(), translation.mapper()); + value = ReflectUtils.invokeGetter(gen.currentValue(), translation.mapper()); } // 如果为 null 直接写出 if (ObjectUtil.isNull(value)) { -- Gitee From b0548f9a567276ffdf14ab6e8d4db286ec447aad Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Tue, 29 Oct 2024 20:21:58 +0800 Subject: [PATCH 232/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20sys=5Fsoc?= =?UTF-8?q?ial=E8=A1=A8=20=E7=A7=9F=E6=88=B7id=E5=A2=9E=E5=8A=A0=E9=BB=98?= =?UTF-8?q?=E8=AE=A4=E5=80=BC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- script/sql/oracle/oracle_ry_vue_5.X.sql | 2 +- script/sql/postgres/postgres_ry_vue_5.X.sql | 2 +- script/sql/ry_vue_5.X.sql | 2 +- script/sql/sqlserver/sqlserver_ry_vue_5.X.sql | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/script/sql/oracle/oracle_ry_vue_5.X.sql b/script/sql/oracle/oracle_ry_vue_5.X.sql index 0aed89d74..02311997e 100644 --- a/script/sql/oracle/oracle_ry_vue_5.X.sql +++ b/script/sql/oracle/oracle_ry_vue_5.X.sql @@ -5,7 +5,7 @@ create table sys_social ( id number(20) not null, user_id number(20) not null, - tenant_id varchar2(20) default null, + tenant_id varchar2(20) default '000000', auth_id varchar2(255) not null, source varchar2(255) not null, open_id varchar2(255) default null, diff --git a/script/sql/postgres/postgres_ry_vue_5.X.sql b/script/sql/postgres/postgres_ry_vue_5.X.sql index fabea6048..74063e6c1 100644 --- a/script/sql/postgres/postgres_ry_vue_5.X.sql +++ b/script/sql/postgres/postgres_ry_vue_5.X.sql @@ -5,7 +5,7 @@ create table sys_social ( id int8 not null, user_id int8 not null, - tenant_id varchar(20) default null::varchar, + tenant_id varchar(20) default '000000'::varchar, auth_id varchar(255) not null, source varchar(255) not null, open_id varchar(255) default null::varchar, diff --git a/script/sql/ry_vue_5.X.sql b/script/sql/ry_vue_5.X.sql index 3e3562d27..9e6a1d999 100644 --- a/script/sql/ry_vue_5.X.sql +++ b/script/sql/ry_vue_5.X.sql @@ -5,7 +5,7 @@ create table sys_social ( id bigint not null comment '主键', user_id bigint not null comment '用户ID', - tenant_id varchar(20) default null comment '租户id', + tenant_id varchar(20) default '000000' comment '租户id', auth_id varchar(255) not null comment '平台+平台唯一id', source varchar(255) not null comment '用户来源', open_id varchar(255) default null comment '平台编号唯一id', diff --git a/script/sql/sqlserver/sqlserver_ry_vue_5.X.sql b/script/sql/sqlserver/sqlserver_ry_vue_5.X.sql index ad9a0b5f1..b1f084440 100644 --- a/script/sql/sqlserver/sqlserver_ry_vue_5.X.sql +++ b/script/sql/sqlserver/sqlserver_ry_vue_5.X.sql @@ -2,7 +2,7 @@ create table sys_social ( id bigint NOT NULL, user_id bigint NOT NULL, - tenant_id nvarchar(20) NULL, + tenant_id nvarchar(20) DEFAULT ('000000') NULL, auth_id nvarchar(255) NOT NULL, source nvarchar(255) NOT NULL, open_id nvarchar(255) NULL, -- Gitee From 0baf2c5861a039403385a7e41da79c43a136cdd3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Wed, 30 Oct 2024 10:51:45 +0800 Subject: [PATCH 233/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20=E6=96=B0?= =?UTF-8?q?=E7=89=88=E6=9C=ACmp=E9=BB=98=E8=AE=A4=E4=BD=BF=E7=94=A8?= =?UTF-8?q?=E6=9C=80=E6=96=B0=20sqlserver=20=E8=AF=AD=E6=B3=95=E5=AF=BC?= =?UTF-8?q?=E8=87=B4=E4=BB=A3=E7=A0=81=E7=94=9F=E6=88=90=E5=88=86=E9=A1=B5?= =?UTF-8?q?=E6=8A=A5=E9=94=99=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/dromara/generator/service/GenTableServiceImpl.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java index 38caa5c6e..3f9ef1920 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java +++ b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java @@ -105,7 +105,8 @@ public class GenTableServiceImpl implements IGenTableService { .like(StringUtils.isNotBlank(genTable.getTableName()), "lower(table_name)", StringUtils.lowerCase(genTable.getTableName())) .like(StringUtils.isNotBlank(genTable.getTableComment()), "lower(table_comment)", StringUtils.lowerCase(genTable.getTableComment())) .between(params.get("beginTime") != null && params.get("endTime") != null, - "create_time", params.get("beginTime"), params.get("endTime")); + "create_time", params.get("beginTime"), params.get("endTime")) + .orderByAsc("table_id"); return wrapper; } -- Gitee From 8cd7e3c924b9cef4eef3b0cf35539b53c5ba82f9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Wed, 30 Oct 2024 16:43:30 +0800 Subject: [PATCH 234/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E9=99=90?= =?UTF-8?q?=E6=B5=81=E6=B3=A8=E8=A7=A3=E5=A2=9E=E5=8A=A0=E5=9B=BA=E5=AE=9A?= =?UTF-8?q?=E6=B8=85=E7=90=86=E6=97=B6=E9=97=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ratelimiter/annotation/RateLimiter.java | 6 ++++++ .../ratelimiter/aspectj/RateLimiterAspect.java | 3 ++- .../dromara/common/redis/utils/RedisUtils.java | 16 +++++++++++++++- 3 files changed, 23 insertions(+), 2 deletions(-) diff --git a/ruoyi-common/ruoyi-common-ratelimiter/src/main/java/org/dromara/common/ratelimiter/annotation/RateLimiter.java b/ruoyi-common/ruoyi-common-ratelimiter/src/main/java/org/dromara/common/ratelimiter/annotation/RateLimiter.java index de09752a7..79272d41e 100644 --- a/ruoyi-common/ruoyi-common-ratelimiter/src/main/java/org/dromara/common/ratelimiter/annotation/RateLimiter.java +++ b/ruoyi-common/ruoyi-common-ratelimiter/src/main/java/org/dromara/common/ratelimiter/annotation/RateLimiter.java @@ -38,4 +38,10 @@ public @interface RateLimiter { * 提示消息 支持国际化 格式为 {code} */ String message() default "{rate.limiter.message}"; + + /** + * 限流策略超时时间 默认一天(策略存活时间 会清除已存在的策略数据) + */ + int timeout() default 86400; + } diff --git a/ruoyi-common/ruoyi-common-ratelimiter/src/main/java/org/dromara/common/ratelimiter/aspectj/RateLimiterAspect.java b/ruoyi-common/ruoyi-common-ratelimiter/src/main/java/org/dromara/common/ratelimiter/aspectj/RateLimiterAspect.java index 1f4904a3e..2d6d82ea3 100644 --- a/ruoyi-common/ruoyi-common-ratelimiter/src/main/java/org/dromara/common/ratelimiter/aspectj/RateLimiterAspect.java +++ b/ruoyi-common/ruoyi-common-ratelimiter/src/main/java/org/dromara/common/ratelimiter/aspectj/RateLimiterAspect.java @@ -54,13 +54,14 @@ public class RateLimiterAspect { public void doBefore(JoinPoint point, RateLimiter rateLimiter) { int time = rateLimiter.time(); int count = rateLimiter.count(); + int timeout = rateLimiter.timeout(); try { String combineKey = getCombineKey(rateLimiter, point); RateType rateType = RateType.OVERALL; if (rateLimiter.limitType() == LimitType.CLUSTER) { rateType = RateType.PER_CLIENT; } - long number = RedisUtils.rateLimiter(combineKey, rateType, count, time); + long number = RedisUtils.rateLimiter(combineKey, rateType, count, time, timeout); if (number == -1) { String message = rateLimiter.message(); if (StringUtils.startsWith(message, "{") && StringUtils.endsWith(message, "}")) { diff --git a/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/utils/RedisUtils.java b/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/utils/RedisUtils.java index a0efde600..355cd2931 100644 --- a/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/utils/RedisUtils.java +++ b/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/utils/RedisUtils.java @@ -37,8 +37,22 @@ public class RedisUtils { * @return -1 表示失败 */ public static long rateLimiter(String key, RateType rateType, int rate, int rateInterval) { + return rateLimiter(key, rateType, rate, rateInterval, 0); + } + + /** + * 限流 + * + * @param key 限流key + * @param rateType 限流类型 + * @param rate 速率 + * @param rateInterval 速率间隔 + * @param timeout 超时时间 + * @return -1 表示失败 + */ + public static long rateLimiter(String key, RateType rateType, int rate, int rateInterval, int timeout) { RRateLimiter rateLimiter = CLIENT.getRateLimiter(key); - rateLimiter.trySetRate(rateType, rate, Duration.ofSeconds(rateInterval)); + rateLimiter.trySetRate(rateType, rate, Duration.ofSeconds(rateInterval), Duration.ofSeconds(timeout)); if (rateLimiter.tryAcquire()) { return rateLimiter.availablePermits(); } else { -- Gitee From d89727725b31991e7c35d999609b0bc4cdf17189 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 31 Oct 2024 15:55:28 +0800 Subject: [PATCH 235/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E5=88=A0?= =?UTF-8?q?=E9=99=A4=E6=97=A0=E7=94=A8=E6=B3=A8=E9=87=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ruoyi-admin/src/main/resources/application.yml | 3 --- 1 file changed, 3 deletions(-) diff --git a/ruoyi-admin/src/main/resources/application.yml b/ruoyi-admin/src/main/resources/application.yml index 82d0f1e50..f05bdaf85 100644 --- a/ruoyi-admin/src/main/resources/application.yml +++ b/ruoyi-admin/src/main/resources/application.yml @@ -110,15 +110,12 @@ sa-token: security: # 排除路径 excludes: - # 静态资源 - /*.html - /**/*.html - /**/*.css - /**/*.js - # 公共路径 - /favicon.ico - /error - # swagger 文档配置 - /*/api-docs - /*/api-docs/** -- Gitee From 5e7fb887620b4cfeb17cb74868efd68c68559bbd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 31 Oct 2024 17:59:56 +0800 Subject: [PATCH 236/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E5=8E=BB?= =?UTF-8?q?=E9=99=A4OSS=E6=A1=B6=E6=A3=80=E6=B5=8B=20=E6=A1=B6=E4=B8=8D?= =?UTF-8?q?=E5=AD=98=E5=9C=A8=E8=87=AA=E7=84=B6=E4=BC=9A=E6=8A=A5=E9=94=99?= =?UTF-8?q?=E6=97=A0=E9=9C=80=E9=A2=9D=E5=A4=96=E6=A3=80=E6=B5=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dromara/common/oss/core/OssClient.java | 21 ------------------- 1 file changed, 21 deletions(-) diff --git a/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java b/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java index f7b3e8a4d..1261b4777 100644 --- a/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java +++ b/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java @@ -21,7 +21,6 @@ import software.amazon.awssdk.services.s3.S3AsyncClient; import software.amazon.awssdk.services.s3.S3Configuration; import software.amazon.awssdk.services.s3.crt.S3CrtHttpConfiguration; import software.amazon.awssdk.services.s3.model.GetObjectResponse; -import software.amazon.awssdk.services.s3.model.NoSuchBucketException; import software.amazon.awssdk.services.s3.presigner.S3Presigner; import software.amazon.awssdk.transfer.s3.S3TransferManager; import software.amazon.awssdk.transfer.s3.model.*; @@ -113,7 +112,6 @@ public class OssClient { .serviceConfiguration(config) .build(); - checkBucket(); } catch (Exception e) { if (e instanceof OssException) { throw e; @@ -122,25 +120,6 @@ public class OssClient { } } - /** - * 检查桶是否存在 - * - * @throws OssException 当创建存储桶时发生异常时抛出 - */ - public void checkBucket() { - String bucketName = properties.getBucketName(); - try { - // 尝试获取存储桶的信息 - client.headBucket(x -> x.bucket(bucketName).build()).join(); - } catch (Exception ex) { - if (ex.getCause() instanceof NoSuchBucketException) { - throw new OssException("Bucket桶是不存在的,请核对配置信息:[" + ex.getMessage() + "]"); - } else { - throw new OssException("判断Bucket是否存在失败,请核对配置信息:[" + ex.getMessage() + "]"); - } - } - } - /** * 上传文件到 Amazon S3,并返回上传结果 * -- Gitee From 53635da55219281174d2ec871cd69f5b9fb88e87 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Sat, 2 Nov 2024 20:02:08 +0800 Subject: [PATCH 237/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20=E6=9F=90?= =?UTF-8?q?=E4=BA=9B=E6=A8=A1=E5=9D=97=E4=B8=8D=E5=AD=98=E5=9C=A8=20mp=20?= =?UTF-8?q?=E4=BE=9D=E8=B5=96=E5=AF=BC=E8=87=B4=E6=96=B9=E6=B3=95=E6=8A=A5?= =?UTF-8?q?=E9=94=99=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../tenant/handle/TenantKeyPrefixHandler.java | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/handle/TenantKeyPrefixHandler.java b/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/handle/TenantKeyPrefixHandler.java index 65f523395..fbf210df1 100644 --- a/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/handle/TenantKeyPrefixHandler.java +++ b/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/handle/TenantKeyPrefixHandler.java @@ -27,8 +27,12 @@ public class TenantKeyPrefixHandler extends KeyPrefixHandler { if (StringUtils.isBlank(name)) { return null; } - if (InterceptorIgnoreHelper.willIgnoreTenantLine("")) { - return super.map(name); + try { + if (InterceptorIgnoreHelper.willIgnoreTenantLine("")) { + return super.map(name); + } + } catch (NoClassDefFoundError ignore) { + // 有些服务不需要mp导致类不存在 忽略即可 } if (StringUtils.contains(name, GlobalConstants.GLOBAL_REDIS_KEY)) { return super.map(name); @@ -54,8 +58,12 @@ public class TenantKeyPrefixHandler extends KeyPrefixHandler { if (StringUtils.isBlank(unmap)) { return null; } - if (InterceptorIgnoreHelper.willIgnoreTenantLine("")) { - return super.unmap(name); + try { + if (InterceptorIgnoreHelper.willIgnoreTenantLine("")) { + return super.unmap(name); + } + } catch (NoClassDefFoundError ignore) { + // 有些服务不需要mp导致类不存在 忽略即可 } if (StringUtils.contains(name, GlobalConstants.GLOBAL_REDIS_KEY)) { return super.unmap(name); -- Gitee From 2ffdd56301ef38187983f7ab6c0008a1548e15de Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Mon, 4 Nov 2024 11:38:45 +0800 Subject: [PATCH 238/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E9=83=A8?= =?UTF-8?q?=E9=97=A8=E6=A0=91=E5=A4=9A=E5=9F=BA=E7=82=B9=E5=B1=95=E7=A4=BA?= =?UTF-8?q?=E9=97=AE=E9=A2=98=20=E6=94=AF=E6=8C=81=E7=9B=B8=E5=90=8C?= =?UTF-8?q?=E5=90=8D=E7=A7=B0=E8=8A=82=E7=82=B9=E5=B9=B6=E6=8E=92=E5=B1=95?= =?UTF-8?q?=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/core/utils/TreeBuildUtils.java | 17 +++++++++++++++ .../service/impl/SysDeptServiceImpl.java | 21 ++++++++++++++----- 2 files changed, 33 insertions(+), 5 deletions(-) diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/TreeBuildUtils.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/TreeBuildUtils.java index 8e501dfea..2ab42cbc1 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/TreeBuildUtils.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/TreeBuildUtils.java @@ -43,6 +43,23 @@ public class TreeBuildUtils extends TreeUtil { return TreeUtil.build(list, k, DEFAULT_CONFIG, nodeParser); } + /** + * 构建树形结构 + * + * @param 输入节点的类型 + * @param 节点ID的类型 + * @param parentId 顶级节点 + * @param list 节点列表,其中包含了要构建树形结构的所有节点 + * @param nodeParser 解析器,用于将输入节点转换为树节点 + * @return 构建好的树形结构列表 + */ + public static List> build(List list, K parentId, NodeParser nodeParser) { + if (CollUtil.isEmpty(list)) { + return CollUtil.newArrayList(); + } + return TreeUtil.build(list, parentId, DEFAULT_CONFIG, nodeParser); + } + /** * 获取节点列表中所有节点的叶子节点 * diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java index 49b18b7ab..dcdd7fcd3 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java @@ -102,11 +102,22 @@ public class SysDeptServiceImpl implements ISysDeptService, DeptService { if (CollUtil.isEmpty(depts)) { return CollUtil.newArrayList(); } - return TreeBuildUtils.build(depts, (dept, tree) -> - tree.setId(dept.getDeptId()) - .setParentId(dept.getParentId()) - .setName(dept.getDeptName()) - .setWeight(dept.getOrderNum())); + // 获取当前列表中每一个节点的parentId,然后在列表中查找是否有id与其parentId对应,若无对应,则表明此时节点列表中,该节点在当前列表中属于顶级节点 + List> treeList = CollUtil.newArrayList(); + for (SysDeptVo d : depts) { + Long parentId = d.getParentId(); + SysDeptVo sysDeptVo = depts.stream().filter(it -> it.getDeptId().longValue() == parentId).findFirst().orElse(null); + if (sysDeptVo == null) { + List> trees = TreeBuildUtils.build(depts, parentId, (dept, tree) -> + tree.setId(dept.getDeptId()) + .setParentId(dept.getParentId()) + .setName(dept.getDeptName()) + .setWeight(dept.getOrderNum())); + Tree tree = trees.stream().filter(it -> it.getId().longValue() == d.getDeptId()).findFirst().get(); + treeList.add(tree); + } + } + return treeList; } /** -- Gitee From 80e6943d2e79c73eca67645ac80b1a04b79be379 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Mon, 4 Nov 2024 14:08:46 +0800 Subject: [PATCH 239/540] =?UTF-8?q?add=20=E5=A2=9E=E5=8A=A0=20gitcode=20?= =?UTF-8?q?=E9=93=BE=E6=8E=A5=E5=9C=B0=E5=9D=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index f0fdd4a99..40636ab94 100644 --- a/README.md +++ b/README.md @@ -6,6 +6,7 @@ [![码云Gitee](https://gitee.com/dromara/RuoYi-Vue-Plus/badge/star.svg?theme=blue)](https://gitee.com/dromara/RuoYi-Vue-Plus) [![GitHub](https://img.shields.io/github/stars/dromara/RuoYi-Vue-Plus.svg?style=social&label=Stars)](https://github.com/dromara/RuoYi-Vue-Plus) +[![Star](https://gitcode.com/dromara/RuoYi-Vue-Plus/star/badge.svg)](https://gitcode.com/dromara/RuoYi-Vue-Plus) [![License](https://img.shields.io/badge/License-MIT-blue.svg)](https://gitee.com/dromara/RuoYi-Vue-Plus/blob/master/LICENSE) [![使用IntelliJ IDEA开发维护](https://img.shields.io/badge/IntelliJ%20IDEA-提供支持-blue.svg)](https://www.jetbrains.com/?from=RuoYi-Vue-Plus)
-- Gitee From baef55ae1b297e257777e510760acfd0028054ba Mon Sep 17 00:00:00 2001 From: cxh Date: Mon, 4 Nov 2024 17:42:37 +0800 Subject: [PATCH 240/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=E4=BB=A3?= =?UTF-8?q?=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 1. 删除内部if对部门不为null的多余判断,可以提前判断 2. 使用内部工具类StreamUtils --- .../system/service/impl/SysDeptServiceImpl.java | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java index dcdd7fcd3..c17391674 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java @@ -15,6 +15,7 @@ import org.dromara.common.core.service.DeptService; import org.dromara.common.core.utils.MapstructUtils; import org.dromara.common.core.utils.SpringUtils; import org.dromara.common.core.utils.StringUtils; +import org.dromara.common.core.utils.StreamUtils; import org.dromara.common.core.utils.TreeBuildUtils; import org.dromara.common.mybatis.helper.DataBaseHelper; import org.dromara.common.redis.utils.CacheUtils; @@ -106,8 +107,8 @@ public class SysDeptServiceImpl implements ISysDeptService, DeptService { List> treeList = CollUtil.newArrayList(); for (SysDeptVo d : depts) { Long parentId = d.getParentId(); - SysDeptVo sysDeptVo = depts.stream().filter(it -> it.getDeptId().longValue() == parentId).findFirst().orElse(null); - if (sysDeptVo == null) { + SysDeptVo sysDeptVo = StreamUtils.findFirst(depts, it -> it.getDeptId().longValue() == parentId); + if (ObjectUtil.isNull(sysDeptVo)) { List> trees = TreeBuildUtils.build(depts, parentId, (dept, tree) -> tree.setId(dept.getDeptId()) .setParentId(dept.getParentId()) @@ -276,11 +277,14 @@ public class SysDeptServiceImpl implements ISysDeptService, DeptService { public int updateDept(SysDeptBo bo) { SysDept dept = MapstructUtils.convert(bo, SysDept.class); SysDept oldDept = baseMapper.selectById(dept.getDeptId()); + if (ObjectUtil.isNull(oldDept)) { + throw new ServiceException("部门不存在,无法修改"); + } if (!oldDept.getParentId().equals(dept.getParentId())) { // 如果是新父部门 则校验是否具有新父部门权限 避免越权 this.checkDeptDataScope(dept.getParentId()); SysDept newParentDept = baseMapper.selectById(dept.getParentId()); - if (ObjectUtil.isNotNull(newParentDept) && ObjectUtil.isNotNull(oldDept)) { + if (ObjectUtil.isNotNull(newParentDept)) { String newAncestors = newParentDept.getAncestors() + StringUtils.SEPARATOR + newParentDept.getDeptId(); String oldAncestors = oldDept.getAncestors(); dept.setAncestors(newAncestors); -- Gitee From 7d856b030b0c784adb4d9c59d22543e6c5d56dc0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Tue, 5 Nov 2024 16:52:01 +0800 Subject: [PATCH 241/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E4=B8=8D?= =?UTF-8?q?=E4=BC=A0=E7=94=A8=E6=88=B7id=E4=B8=8D=E6=A0=A1=E9=AA=8C?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=E6=9D=83=E9=99=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../system/controller/system/SysUserController.java | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysUserController.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysUserController.java index 36104d627..025800de9 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysUserController.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysUserController.java @@ -128,13 +128,9 @@ public class SysUserController extends BaseController { @SaCheckPermission("system:user:query") @GetMapping(value = {"/", "/{userId}"}) public R getInfo(@PathVariable(value = "userId", required = false) Long userId) { - userService.checkUserDataScope(userId); SysUserInfoVo userInfoVo = new SysUserInfoVo(); - SysRoleBo roleBo = new SysRoleBo(); - roleBo.setStatus(UserConstants.ROLE_NORMAL); - List roles = roleService.selectRoleList(roleBo); - userInfoVo.setRoles(LoginHelper.isSuperAdmin(userId) ? roles : StreamUtils.filter(roles, r -> !r.isSuperAdmin())); if (ObjectUtil.isNotNull(userId)) { + userService.checkUserDataScope(userId); SysUserVo sysUser = userService.selectUserById(userId); userInfoVo.setUser(sysUser); userInfoVo.setRoleIds(roleService.selectRoleListByUserId(userId)); @@ -146,6 +142,10 @@ public class SysUserController extends BaseController { userInfoVo.setPostIds(postService.selectPostListByUserId(userId)); } } + SysRoleBo roleBo = new SysRoleBo(); + roleBo.setStatus(UserConstants.ROLE_NORMAL); + List roles = roleService.selectRoleList(roleBo); + userInfoVo.setRoles(LoginHelper.isSuperAdmin(userId) ? roles : StreamUtils.filter(roles, r -> !r.isSuperAdmin())); return R.ok(userInfoVo); } -- Gitee From 0385a444c27f907ef2082205cc75a4ae43ad0abf Mon Sep 17 00:00:00 2001 From: "Emil.Zhang" <356141959@qq.com> Date: Wed, 6 Nov 2024 15:01:38 +0800 Subject: [PATCH 242/540] =?UTF-8?q?fixed(=E7=BA=A7=E8=81=94=E4=B8=8B?= =?UTF-8?q?=E6=8B=89=E6=A1=86=E6=95=B0=E6=8D=AE=E9=94=99=E8=AF=AF)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 1.修复过多级联下拉选项导致的无法写入问题 --- .../common/excel/core/ExcelDownHandler.java | 108 +++++++++++------- .../service/impl/ExportExcelServiceImpl.java | 48 +++++--- 2 files changed, 98 insertions(+), 58 deletions(-) diff --git a/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/core/ExcelDownHandler.java b/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/core/ExcelDownHandler.java index b3f68ed1e..32fee7a6c 100644 --- a/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/core/ExcelDownHandler.java +++ b/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/core/ExcelDownHandler.java @@ -55,6 +55,7 @@ public class ExcelDownHandler implements SheetWriteHandler { * 下拉可选项 */ private final List dropDownOptions; + private final DictService dictService; /** * 当前单选进度 */ @@ -63,7 +64,6 @@ public class ExcelDownHandler implements SheetWriteHandler { * 当前联动选择进度 */ private int currentLinkedOptionsSheetIndex; - private final DictService dictService; public ExcelDownHandler(List options) { this.dropDownOptions = options; @@ -139,8 +139,8 @@ public class ExcelDownHandler implements SheetWriteHandler { } else if (everyOptions.getOptions().size() > 10) { // 当一级选项参数个数大于10,使用额外表的形式 dropDownWithSheet(helper, workbook, sheet, everyOptions.getIndex(), everyOptions.getOptions()); - } else if (everyOptions.getOptions().size() != 0) { - // 当一级选项个数不为空,使用默认形式 + } else { + // 否则使用默认形式 dropDownWithSimple(helper, sheet, everyOptions.getIndex(), everyOptions.getOptions()); } }); @@ -171,10 +171,24 @@ public class ExcelDownHandler implements SheetWriteHandler { Sheet linkedOptionsDataSheet = workbook.createSheet(WorkbookUtil.createSafeSheetName(linkedOptionsSheetName)); // 将下拉表隐藏 workbook.setSheetHidden(workbook.getSheetIndex(linkedOptionsDataSheet), true); - // 完善横向的一级选项数据表 + // 选项数据 List firstOptions = options.getOptions(); Map> secoundOptionsMap = options.getNextOptions(); + // 采用按行填充数据的方式,避免EasyExcel出现数据无法写入的问题 + // Attempting to write a row in the range that is already written to disk + + // 使用ArrayList记载数据,防止乱序 + List columnNames = new ArrayList<>(); + // 写入第一行,即第一级的数据 + Row firstRow = linkedOptionsDataSheet.createRow(0); + for (int columnIndex = 0; columnIndex < firstOptions.size(); columnIndex++) { + String columnName = firstOptions.get(columnIndex); + firstRow.createCell(columnIndex) + .setCellValue(columnName); + columnNames.add(columnName); + } + // 创建名称管理器 Name name = workbook.createName(); // 设置名称管理器的别名 @@ -190,28 +204,12 @@ public class ExcelDownHandler implements SheetWriteHandler { // 设置数据校验为序列模式,引用的是名称管理器中的别名 this.markOptionsToSheet(helper, sheet, options.getIndex(), helper.createFormulaListConstraint(linkedOptionsSheetName)); - for (int columIndex = 0; columIndex < firstOptions.size(); columIndex++) { - // 先提取主表中一级下拉的列名 + // 创建二级选项的名称管理器 + for (int columIndex = 0; columIndex < columnNames.size(); columIndex++) { + // 列名 String firstOptionsColumnName = getExcelColumnName(columIndex); - // 一次循环是每一个一级选项 - int finalI = columIndex; - // 本次循环的一级选项值 - String thisFirstOptionsValue = firstOptions.get(columIndex); - // 创建第一行的数据 - Optional.ofNullable(linkedOptionsDataSheet.getRow(0)) - // 如果不存在则创建第一行 - .orElseGet(() -> linkedOptionsDataSheet.createRow(finalI)) - // 第一行当前列 - .createCell(columIndex) - // 设置值为当前一级选项值 - .setCellValue(thisFirstOptionsValue); - - // 第二行开始,设置第二级别选项参数 - List secondOptions = secoundOptionsMap.get(thisFirstOptionsValue); - if (CollUtil.isEmpty(secondOptions)) { - // 必须保证至少有一个关联选项,否则将导致Excel解析错误 - secondOptions = Collections.singletonList("暂无_0"); - } + // 对应的一级值 + String thisFirstOptionsValue = columnNames.get(columIndex); // 以该一级选项值创建子名称管理器 Name sonName = workbook.createName(); @@ -222,7 +220,9 @@ public class ExcelDownHandler implements SheetWriteHandler { linkedOptionsSheetName, firstOptionsColumnName, firstOptionsColumnName, - secondOptions.size() + 1 + // 二级选项存在则设置为(选项个数+1)行,否则设置为2行 + Math.max(Optional.ofNullable(secoundOptionsMap.get(thisFirstOptionsValue)) + .orElseGet(ArrayList::new).size(), 1) + 1 ); // 设置名称管理器的引用位置 sonName.setRefersToFormula(sonFunction); @@ -235,25 +235,51 @@ public class ExcelDownHandler implements SheetWriteHandler { // 二级只能主表每一行的每一列添加二级校验 markLinkedOptionsToSheet(helper, sheet, i, options.getNextIndex(), helper.createFormulaListConstraint(secondOptionsFunction)); } + } - for (int rowIndex = 0; rowIndex < secondOptions.size(); rowIndex++) { - // 从第二行开始填充二级选项 - int finalRowIndex = rowIndex + 1; - int finalColumIndex = columIndex; - - Row row = Optional.ofNullable(linkedOptionsDataSheet.getRow(finalRowIndex)) - // 没有则创建 - .orElseGet(() -> linkedOptionsDataSheet.createRow(finalRowIndex)); - Optional - // 在本级一级选项所在的列 - .ofNullable(row.getCell(finalColumIndex)) - // 不存在则创建 - .orElseGet(() -> row.createCell(finalColumIndex)) - // 设置二级选项值 - .setCellValue(secondOptions.get(rowIndex)); + // 将二级数据处理为按行区分 + Map> columnValueMap = new HashMap<>(); + int currentRow = 1; + while (currentRow >= 0) { + boolean flag = false; + List rowData = new ArrayList<>(); + for (String columnName : columnNames) { + List data = secoundOptionsMap.get(columnName); + if (CollUtil.isEmpty(data)) { + // 添加空字符串填充位置 + rowData.add(" "); + continue; + } + // 取第一个 + String str = data.get(0); + rowData.add(str); + // 通过移除的方式避免重复 + data.remove(0); + // 设置可以继续 + flag = true; + } + columnValueMap.put(currentRow, rowData); + // 可以继续,则增加行数,否则置为负数跳出循环 + if (flag) { + currentRow++; + } else { + currentRow = -1; } } + // 填充第二级选项数据 + columnValueMap.forEach((rowIndex, rowValues) -> { + Row row = linkedOptionsDataSheet.createRow(rowIndex); + for (int columnIndex = 0; columnIndex < rowValues.size(); columnIndex++) { + String rowValue = rowValues.get(columnIndex); + // 填充位置的部分不渲染 + if (StrUtil.isNotBlank(rowValue)) { + row.createCell(columnIndex) + .setCellValue(rowValue); + } + } + }); + currentLinkedOptionsSheetIndex++; } diff --git a/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/service/impl/ExportExcelServiceImpl.java b/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/service/impl/ExportExcelServiceImpl.java index 0240e02f2..ebb6ac688 100644 --- a/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/service/impl/ExportExcelServiceImpl.java +++ b/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/service/impl/ExportExcelServiceImpl.java @@ -1,5 +1,6 @@ package org.dromara.demo.service.impl; +import cn.hutool.core.util.RandomUtil; import cn.hutool.core.util.StrUtil; import jakarta.servlet.http.HttpServletResponse; import lombok.Data; @@ -121,8 +122,9 @@ public class ExportExcelServiceImpl implements IExportExcelService { List provinceList = new ArrayList<>(); // 实际业务中一般采用数据库读取的形式,这里直接拼接创建 - provinceList.add(new DemoCityData(0, null, "安徽省")); - provinceList.add(new DemoCityData(1, null, "江苏省")); + provinceList.add(new DemoCityData(0, null, "P100000")); + provinceList.add(new DemoCityData(1, null, "P200000")); + provinceList.add(new DemoCityData(2, null, "P300000")); return provinceList; } @@ -137,11 +139,11 @@ public class ExportExcelServiceImpl implements IExportExcelService { List cityList = new ArrayList<>(); // 实际业务中一般采用数据库读取的形式,这里直接拼接创建 - cityList.add(new DemoCityData(0, 0, "合肥市")); - cityList.add(new DemoCityData(1, 0, "芜湖市")); - cityList.add(new DemoCityData(2, 1, "南京市")); - cityList.add(new DemoCityData(3, 1, "无锡市")); - cityList.add(new DemoCityData(4, 1, "徐州市")); + cityList.add(new DemoCityData(0, 0, "C110000")); + cityList.add(new DemoCityData(1, 0, "C120000")); + cityList.add(new DemoCityData(2, 1, "C210000")); + cityList.add(new DemoCityData(3, 1, "C220000")); + cityList.add(new DemoCityData(4, 1, "C230000")); selectParentData(provinceList, cityList); @@ -157,17 +159,29 @@ public class ExportExcelServiceImpl implements IExportExcelService { private List getAreaList(List cityList) { List areaList = new ArrayList<>(); + int minCount = 500; + int maxCount = 10000; + // 实际业务中一般采用数据库读取的形式,这里直接拼接创建 - areaList.add(new DemoCityData(0, 0, "瑶海区")); - areaList.add(new DemoCityData(1, 0, "庐江区")); - areaList.add(new DemoCityData(2, 1, "南宁县")); - areaList.add(new DemoCityData(3, 1, "镜湖区")); - areaList.add(new DemoCityData(4, 2, "玄武区")); - areaList.add(new DemoCityData(5, 2, "秦淮区")); - areaList.add(new DemoCityData(6, 3, "宜兴市")); - areaList.add(new DemoCityData(7, 3, "新吴区")); - areaList.add(new DemoCityData(8, 4, "鼓楼区")); - areaList.add(new DemoCityData(9, 4, "丰县")); + for (int i = 0; i < RandomUtil.randomInt(minCount, maxCount); i++) { + areaList.add(new DemoCityData(areaList.size(), 0, String.format("A11%04d", i))); + } + + for (int i = 0; i < RandomUtil.randomInt(minCount, maxCount); i++) { + areaList.add(new DemoCityData(areaList.size(), 1, String.format("A12%04d", i))); + } + + for (int i = 0; i < RandomUtil.randomInt(minCount, maxCount); i++) { + areaList.add(new DemoCityData(areaList.size(), 2, String.format("A21%04d", i))); + } + + for (int i = 0; i < RandomUtil.randomInt(minCount, maxCount); i++) { + areaList.add(new DemoCityData(areaList.size(), 3, String.format("A22%04d", i))); + } + + for (int i = 0; i < RandomUtil.randomInt(minCount, maxCount); i++) { + areaList.add(new DemoCityData(areaList.size(), 4, String.format("A23%04d", i))); + } selectParentData(cityList, areaList); -- Gitee From 73d5fbd085bb8729b7a8eb26aa0e2744c6452a42 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Wed, 6 Nov 2024 22:13:56 +0800 Subject: [PATCH 243/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20PlusSmsDao#c?= =?UTF-8?q?lean=20=E6=96=B9=E6=B3=95=E4=B9=A6=E5=86=99=E9=94=99=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/org/dromara/common/sms/core/dao/PlusSmsDao.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ruoyi-common/ruoyi-common-sms/src/main/java/org/dromara/common/sms/core/dao/PlusSmsDao.java b/ruoyi-common/ruoyi-common-sms/src/main/java/org/dromara/common/sms/core/dao/PlusSmsDao.java index 91d8d243a..a757655ce 100644 --- a/ruoyi-common/ruoyi-common-sms/src/main/java/org/dromara/common/sms/core/dao/PlusSmsDao.java +++ b/ruoyi-common/ruoyi-common-sms/src/main/java/org/dromara/common/sms/core/dao/PlusSmsDao.java @@ -66,7 +66,7 @@ public class PlusSmsDao implements SmsDao { */ @Override public void clean() { - RedisUtils.deleteObject(GlobalConstants.GLOBAL_REDIS_KEY + "sms:"); + RedisUtils.deleteKeys(GlobalConstants.GLOBAL_REDIS_KEY + "sms:*"); } } -- Gitee From 0a0a16f9698d0fca4379e5551163483186765df4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 7 Nov 2024 15:48:24 +0800 Subject: [PATCH 244/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E5=B0=81?= =?UTF-8?q?=E8=A3=85=E9=83=A8=E9=97=A8=E5=9F=BA=E4=BA=8E=E7=88=B6id?= =?UTF-8?q?=E6=9F=A5=E8=AF=A2=E6=96=B9=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/org/dromara/system/mapper/SysDeptMapper.java | 8 ++++++++ .../system/service/impl/SysDataScopeServiceImpl.java | 5 +---- .../system/service/impl/SysPostServiceImpl.java | 10 ++-------- .../system/service/impl/SysUserServiceImpl.java | 5 +---- 4 files changed, 12 insertions(+), 16 deletions(-) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysDeptMapper.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysDeptMapper.java index 08dda662c..048d2fa45 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysDeptMapper.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysDeptMapper.java @@ -1,10 +1,12 @@ package org.dromara.system.mapper; import com.baomidou.mybatisplus.core.conditions.Wrapper; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Constants; import org.dromara.common.mybatis.annotation.DataColumn; import org.dromara.common.mybatis.annotation.DataPermission; import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; +import org.dromara.common.mybatis.helper.DataBaseHelper; import org.dromara.system.domain.SysDept; import org.dromara.system.domain.vo.SysDeptVo; import org.apache.ibatis.annotations.Param; @@ -34,6 +36,12 @@ public interface SysDeptMapper extends BaseMapperPlus { }) long countDeptById(Long deptId); + default List selectListByParentId(Long parentId) { + return this.selectList(new LambdaQueryWrapper() + .select(SysDept::getDeptId) + .apply(DataBaseHelper.findInSet(parentId, "ancestors"))); + } + /** * 根据角色ID查询部门树信息 * diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDataScopeServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDataScopeServiceImpl.java index 018f9a07a..0c07f7f67 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDataScopeServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDataScopeServiceImpl.java @@ -6,7 +6,6 @@ import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import lombok.RequiredArgsConstructor; import org.dromara.common.core.utils.StreamUtils; -import org.dromara.common.mybatis.helper.DataBaseHelper; import org.dromara.system.domain.SysDept; import org.dromara.system.domain.SysRoleDept; import org.dromara.system.mapper.SysDeptMapper; @@ -63,9 +62,7 @@ public class SysDataScopeServiceImpl implements ISysDataScopeService { if (ObjectUtil.isNull(deptId)) { return "-1"; } - List deptList = deptMapper.selectList(new LambdaQueryWrapper() - .select(SysDept::getDeptId) - .apply(DataBaseHelper.findInSet(deptId, "ancestors"))); + List deptList = deptMapper.selectListByParentId(deptId); List ids = StreamUtils.toList(deptList, SysDept::getDeptId); ids.add(deptId); if (CollUtil.isNotEmpty(ids)) { diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysPostServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysPostServiceImpl.java index 2c38129ac..e3f4145b4 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysPostServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysPostServiceImpl.java @@ -13,7 +13,6 @@ import org.dromara.common.core.utils.StreamUtils; import org.dromara.common.core.utils.StringUtils; import org.dromara.common.mybatis.core.page.PageQuery; import org.dromara.common.mybatis.core.page.TableDataInfo; -import org.dromara.common.mybatis.helper.DataBaseHelper; import org.dromara.system.domain.SysDept; import org.dromara.system.domain.SysPost; import org.dromara.system.domain.SysUserPost; @@ -27,7 +26,6 @@ import org.springframework.stereotype.Service; import java.util.Arrays; import java.util.List; -import java.util.stream.Collectors; /** * 岗位信息 服务层处理 @@ -78,12 +76,8 @@ public class SysPostServiceImpl implements ISysPostService { } else if (ObjectUtil.isNotNull(bo.getBelongDeptId())) { //部门树搜索 wrapper.and(x -> { - List deptIds = deptMapper.selectList(new LambdaQueryWrapper() - .select(SysDept::getDeptId) - .apply(DataBaseHelper.findInSet(bo.getBelongDeptId(), "ancestors"))) - .stream() - .map(SysDept::getDeptId) - .collect(Collectors.toList()); + List deptList = deptMapper.selectListByParentId(bo.getBelongDeptId()); + List deptIds = StreamUtils.toList(deptList, SysDept::getDeptId); deptIds.add(bo.getBelongDeptId()); x.in(SysPost::getDeptId, deptIds); }); diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java index 8c6d1d5f5..cd69767cc 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java @@ -24,7 +24,6 @@ import org.dromara.common.core.utils.StreamUtils; import org.dromara.common.core.utils.StringUtils; import org.dromara.common.mybatis.core.page.PageQuery; import org.dromara.common.mybatis.core.page.TableDataInfo; -import org.dromara.common.mybatis.helper.DataBaseHelper; import org.dromara.common.satoken.utils.LoginHelper; import org.dromara.system.domain.*; import org.dromara.system.domain.bo.SysUserBo; @@ -89,9 +88,7 @@ public class SysUserServiceImpl implements ISysUserService, UserService { .between(params.get("beginTime") != null && params.get("endTime") != null, "u.create_time", params.get("beginTime"), params.get("endTime")) .and(ObjectUtil.isNotNull(user.getDeptId()), w -> { - List deptList = deptMapper.selectList(new LambdaQueryWrapper() - .select(SysDept::getDeptId) - .apply(DataBaseHelper.findInSet(user.getDeptId(), "ancestors"))); + List deptList = deptMapper.selectListByParentId(user.getDeptId()); List ids = StreamUtils.toList(deptList, SysDept::getDeptId); ids.add(user.getDeptId()); w.in("u.dept_id", ids); -- Gitee From 8a5d8cc9b9e02e24685e0ebbcb6d8d28b1eae5c1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 7 Nov 2024 22:26:12 +0800 Subject: [PATCH 245/540] =?UTF-8?q?add=20=E5=A2=9E=E5=8A=A0=20=E9=82=AE?= =?UTF-8?q?=E4=BB=B6=E5=A4=9A=E9=99=84=E4=BB=B6demo?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../demo/controller/MailController.java | 20 ++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/MailController.java b/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/MailController.java index 47b4349da..01f50449f 100644 --- a/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/MailController.java +++ b/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/MailController.java @@ -1,14 +1,16 @@ package org.dromara.demo.controller; +import cn.dev33.satoken.annotation.SaIgnore; +import lombok.RequiredArgsConstructor; import org.dromara.common.core.domain.R; import org.dromara.common.mail.utils.MailUtils; -import lombok.RequiredArgsConstructor; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import java.io.File; +import java.util.Arrays; /** @@ -16,6 +18,7 @@ import java.io.File; * * @author Michelle.Chung */ +@SaIgnore @Validated @RequiredArgsConstructor @RestController @@ -49,4 +52,19 @@ public class MailController { return R.ok(); } + /** + * 发送邮件(多附件) + * + * @param to 接收人 + * @param subject 标题 + * @param text 内容 + * @param paths 附件路径 + */ + @GetMapping("/sendMessageWithAttachments") + public R sendMessageWithAttachments(String to, String subject, String text, String[] paths) { + File[] array = Arrays.stream(paths).map(File::new).toArray(File[]::new); + MailUtils.sendText(to, subject, text, array); + return R.ok(); + } + } -- Gitee From 70a5077291dbd6e8953ecee8740333f5b862d1bb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 8 Nov 2024 00:30:43 +0800 Subject: [PATCH 246/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20sse=20?= =?UTF-8?q?=E5=85=B3=E9=97=AD=E6=8E=A5=E5=8F=A3=E6=97=A0=E6=B3=95=E6=96=AD?= =?UTF-8?q?=E8=BF=9E=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/org/dromara/common/sse/core/SseEmitterManager.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/core/SseEmitterManager.java b/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/core/SseEmitterManager.java index 0bfe0ca76..c26adca50 100644 --- a/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/core/SseEmitterManager.java +++ b/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/core/SseEmitterManager.java @@ -67,7 +67,9 @@ public class SseEmitterManager { Map emitters = USER_TOKEN_EMITTERS.get(userId); if (emitters != null) { try { - emitters.get(token).send(SseEmitter.event().comment("disconnected")); + SseEmitter sseEmitter = emitters.get(token); + sseEmitter.send(SseEmitter.event().comment("disconnected")); + sseEmitter.complete(); } catch (Exception ignore) { } emitters.remove(token); -- Gitee From 8e749c472aeec4f7a6b411118d713468c63b0e3c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Sat, 9 Nov 2024 21:01:40 +0800 Subject: [PATCH 247/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20PageQuery=20?= =?UTF-8?q?=E8=BD=ACjson=E6=8A=A5=E9=94=99=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/org/dromara/common/mybatis/core/page/PageQuery.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/core/page/PageQuery.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/core/page/PageQuery.java index 6ca9b2756..3f7797d6b 100644 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/core/page/PageQuery.java +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/core/page/PageQuery.java @@ -4,6 +4,7 @@ import cn.hutool.core.collection.CollUtil; import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.metadata.OrderItem; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.fasterxml.jackson.annotation.JsonIgnore; import lombok.Data; import org.dromara.common.core.exception.ServiceException; import org.dromara.common.core.utils.StringUtils; @@ -113,6 +114,7 @@ public class PageQuery implements Serializable { return list; } + @JsonIgnore public Integer getFirstNum() { return (pageNum - 1) * pageSize; } -- Gitee From b820a98c6cece449e6822a0ef39047c5503e2d3f Mon Sep 17 00:00:00 2001 From: AprilWind <2100166581@qq.com> Date: Mon, 11 Nov 2024 10:05:52 +0800 Subject: [PATCH 248/540] =?UTF-8?q?docs=EF=BC=9A=E8=A1=A5=E5=85=85Mapper?= =?UTF-8?q?=E5=B1=82=E6=B3=A8=E9=87=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dromara/system/mapper/SysDeptMapper.java | 14 +++++++- .../system/mapper/SysDictDataMapper.java | 6 ++++ .../dromara/system/mapper/SysPostMapper.java | 7 ++++ .../dromara/system/mapper/SysRoleMapper.java | 13 ++++++++ .../dromara/system/mapper/SysUserMapper.java | 32 +++++++++++++++++++ .../system/mapper/SysUserRoleMapper.java | 6 ++++ 6 files changed, 77 insertions(+), 1 deletion(-) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysDeptMapper.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysDeptMapper.java index 048d2fa45..0f2c90667 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysDeptMapper.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysDeptMapper.java @@ -3,13 +3,13 @@ package org.dromara.system.mapper; import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Constants; +import org.apache.ibatis.annotations.Param; import org.dromara.common.mybatis.annotation.DataColumn; import org.dromara.common.mybatis.annotation.DataPermission; import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; import org.dromara.common.mybatis.helper.DataBaseHelper; import org.dromara.system.domain.SysDept; import org.dromara.system.domain.vo.SysDeptVo; -import org.apache.ibatis.annotations.Param; import java.util.List; @@ -31,11 +31,23 @@ public interface SysDeptMapper extends BaseMapperPlus { }) List selectDeptList(@Param(Constants.WRAPPER) Wrapper queryWrapper); + /** + * 统计指定部门ID的部门数量 + * + * @param deptId 部门ID + * @return 该部门ID的部门数量 + */ @DataPermission({ @DataColumn(key = "deptName", value = "dept_id") }) long countDeptById(Long deptId); + /** + * 根据父部门ID查询其所有子部门的列表 + * + * @param parentId 父部门ID + * @return 包含子部门的列表 + */ default List selectListByParentId(Long parentId) { return this.selectList(new LambdaQueryWrapper() .select(SysDept::getDeptId) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysDictDataMapper.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysDictDataMapper.java index c2f1a7cbe..7298db3d0 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysDictDataMapper.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysDictDataMapper.java @@ -14,6 +14,12 @@ import java.util.List; */ public interface SysDictDataMapper extends BaseMapperPlus { + /** + * 根据字典类型查询字典数据列表 + * + * @param dictType 字典类型 + * @return 符合条件的字典数据列表 + */ default List selectDictDataByType(String dictType) { return selectVoList( new LambdaQueryWrapper() diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysPostMapper.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysPostMapper.java index f9bf13485..60da074c7 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysPostMapper.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysPostMapper.java @@ -19,6 +19,13 @@ import java.util.List; */ public interface SysPostMapper extends BaseMapperPlus { + /** + * 分页查询岗位列表 + * + * @param page 分页对象 + * @param queryWrapper 查询条件 + * @return 包含岗位信息的分页结果 + */ @DataPermission({ @DataColumn(key = "deptName", value = "dept_id"), @DataColumn(key = "userName", value = "create_by") diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysRoleMapper.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysRoleMapper.java index ac5a47e54..9cb1ea509 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysRoleMapper.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysRoleMapper.java @@ -19,6 +19,13 @@ import java.util.List; */ public interface SysRoleMapper extends BaseMapperPlus { + /** + * 分页查询角色列表 + * + * @param page 分页对象 + * @param queryWrapper 查询条件 + * @return 包含角色信息的分页结果 + */ @DataPermission({ @DataColumn(key = "deptName", value = "d.dept_id"), @DataColumn(key = "userName", value = "r.create_by") @@ -37,6 +44,12 @@ public interface SysRoleMapper extends BaseMapperPlus { }) List selectRoleList(@Param(Constants.WRAPPER) Wrapper queryWrapper); + /** + * 根据角色ID查询角色信息 + * + * @param roleId 角色ID + * @return 对应的角色信息 + */ @DataPermission({ @DataColumn(key = "deptName", value = "d.dept_id"), @DataColumn(key = "userName", value = "r.create_by") diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysUserMapper.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysUserMapper.java index fc7fc6e16..46695aa4c 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysUserMapper.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysUserMapper.java @@ -20,12 +20,25 @@ import java.util.List; */ public interface SysUserMapper extends BaseMapperPlus { + /** + * 分页查询用户列表,并进行数据权限控制 + * + * @param page 分页参数 + * @param queryWrapper 查询条件 + * @return 分页的用户信息 + */ @DataPermission({ @DataColumn(key = "deptName", value = "u.dept_id"), @DataColumn(key = "userName", value = "u.user_id") }) Page selectPageUserList(@Param("page") Page page, @Param(Constants.WRAPPER) Wrapper queryWrapper); + /** + * 查询用户列表,并进行数据权限控制 + * + * @param queryWrapper 查询条件 + * @return 用户信息集合 + */ @DataPermission({ @DataColumn(key = "deptName", value = "dept_id"), @DataColumn(key = "userName", value = "user_id") @@ -68,12 +81,25 @@ public interface SysUserMapper extends BaseMapperPlus { }) Page selectUnallocatedList(@Param("page") Page page, @Param(Constants.WRAPPER) Wrapper queryWrapper); + /** + * 根据用户ID统计用户数量 + * + * @param userId 用户ID + * @return 用户数量 + */ @DataPermission({ @DataColumn(key = "deptName", value = "dept_id"), @DataColumn(key = "userName", value = "user_id") }) long countUserById(Long userId); + /** + * 根据条件更新用户数据 + * + * @param user 要更新的用户实体 + * @param updateWrapper 更新条件封装器 + * @return 更新操作影响的行数 + */ @Override @DataPermission({ @DataColumn(key = "deptName", value = "dept_id"), @@ -81,6 +107,12 @@ public interface SysUserMapper extends BaseMapperPlus { }) int update(@Param(Constants.ENTITY) SysUser user, @Param(Constants.WRAPPER) Wrapper updateWrapper); + /** + * 根据用户ID更新用户数据 + * + * @param user 要更新的用户实体 + * @return 更新操作影响的行数 + */ @Override @DataPermission({ @DataColumn(key = "deptName", value = "dept_id"), diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysUserRoleMapper.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysUserRoleMapper.java index e2f706c89..83403480e 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysUserRoleMapper.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysUserRoleMapper.java @@ -12,6 +12,12 @@ import java.util.List; */ public interface SysUserRoleMapper extends BaseMapperPlus { + /** + * 根据角色ID查询关联的用户ID列表 + * + * @param roleId 角色ID + * @return 关联到指定角色的用户ID列表 + */ List selectUserIdsByRoleId(Long roleId); } -- Gitee From 9cdcbbccbf4b8752504d11e3379a7156492b07f9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Mon, 11 Nov 2024 10:25:31 +0800 Subject: [PATCH 249/540] =?UTF-8?q?update=20=E9=87=8D=E6=9E=84=20=E5=B0=86?= =?UTF-8?q?UserConstants=E6=94=B9=E4=B8=BASystemConstants=20=E7=BB=9F?= =?UTF-8?q?=E4=B8=80=E5=B8=B8=E9=87=8F=E4=BD=BF=E7=94=A8=20=E9=99=8D?= =?UTF-8?q?=E4=BD=8E=E4=BD=BF=E7=94=A8=E9=9A=BE=E5=BA=A6=E9=81=BF=E5=85=8D?= =?UTF-8?q?=E8=AF=AF=E8=A7=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../web/controller/AuthController.java | 4 +- .../dromara/web/service/SysLoginService.java | 4 +- .../web/service/impl/EmailAuthStrategy.java | 4 +- .../service/impl/PasswordAuthStrategy.java | 4 +- .../web/service/impl/SmsAuthStrategy.java | 4 +- .../web/service/impl/SocialAuthStrategy.java | 4 +- .../web/service/impl/XcxAuthStrategy.java | 5 +- .../common/core/constant/Constants.java | 5 -- ...serConstants.java => SystemConstants.java} | 88 +------------------ .../common/core/constant/TenantConstants.java | 10 --- .../core/domain/model/PasswordLoginBody.java | 6 +- .../core/domain/model/RegisterBody.java | 6 +- .../common/core/enums/TenantStatus.java | 30 ------- .../common/satoken/utils/LoginHelper.java | 4 +- .../dromara/demo/domain/vo/ExportDemoVo.java | 6 +- .../service/impl/ExportExcelServiceImpl.java | 4 +- .../controller/system/SysDeptController.java | 4 +- .../controller/system/SysMenuController.java | 8 +- .../controller/system/SysPostController.java | 4 +- .../controller/system/SysUserController.java | 4 +- .../dromara/system/domain/SysDictData.java | 6 +- .../org/dromara/system/domain/SysMenu.java | 22 ++--- .../org/dromara/system/domain/SysUser.java | 6 +- .../dromara/system/domain/bo/SysRoleBo.java | 4 +- .../dromara/system/domain/bo/SysUserBo.java | 4 +- .../dromara/system/domain/vo/SysRoleVo.java | 8 +- .../dromara/system/mapper/SysMenuMapper.java | 10 +-- .../service/impl/SysConfigServiceImpl.java | 4 +- .../service/impl/SysDeptServiceImpl.java | 24 +++-- .../service/impl/SysMenuServiceImpl.java | 6 +- .../service/impl/SysPostServiceImpl.java | 4 +- .../service/impl/SysRoleServiceImpl.java | 10 +-- .../impl/SysTenantPackageServiceImpl.java | 4 +- .../service/impl/SysTenantServiceImpl.java | 5 +- .../service/impl/SysUserServiceImpl.java | 16 ++-- 35 files changed, 105 insertions(+), 236 deletions(-) rename ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/{UserConstants.java => SystemConstants.java} (41%) delete mode 100644 ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/enums/TenantStatus.java diff --git a/ruoyi-admin/src/main/java/org/dromara/web/controller/AuthController.java b/ruoyi-admin/src/main/java/org/dromara/web/controller/AuthController.java index b561693d6..89fe607f6 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/controller/AuthController.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/controller/AuthController.java @@ -12,7 +12,7 @@ import me.zhyd.oauth.model.AuthResponse; import me.zhyd.oauth.model.AuthUser; import me.zhyd.oauth.request.AuthRequest; import me.zhyd.oauth.utils.AuthStateUtils; -import org.dromara.common.core.constant.UserConstants; +import org.dromara.common.core.constant.SystemConstants; import org.dromara.common.core.domain.R; import org.dromara.common.core.domain.model.LoginBody; import org.dromara.common.core.domain.model.RegisterBody; @@ -92,7 +92,7 @@ public class AuthController { if (ObjectUtil.isNull(client) || !StringUtils.contains(client.getGrantType(), grantType)) { log.info("客户端id: {} 认证类型:{} 异常!.", clientId, grantType); return R.fail(MessageUtils.message("auth.grant.type.error")); - } else if (!UserConstants.NORMAL.equals(client.getStatus())) { + } else if (!SystemConstants.NORMAL.equals(client.getStatus())) { return R.fail(MessageUtils.message("auth.grant.type.blocked")); } // 校验租户 diff --git a/ruoyi-admin/src/main/java/org/dromara/web/service/SysLoginService.java b/ruoyi-admin/src/main/java/org/dromara/web/service/SysLoginService.java index c7ad9179c..0fdd521a0 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/service/SysLoginService.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/service/SysLoginService.java @@ -12,11 +12,11 @@ import lombok.extern.slf4j.Slf4j; import me.zhyd.oauth.model.AuthUser; import org.dromara.common.core.constant.CacheConstants; import org.dromara.common.core.constant.Constants; +import org.dromara.common.core.constant.SystemConstants; import org.dromara.common.core.constant.TenantConstants; import org.dromara.common.core.domain.dto.RoleDTO; import org.dromara.common.core.domain.model.LoginUser; import org.dromara.common.core.enums.LoginType; -import org.dromara.common.core.enums.TenantStatus; import org.dromara.common.core.exception.ServiceException; import org.dromara.common.core.exception.user.UserException; import org.dromara.common.core.utils.*; @@ -233,7 +233,7 @@ public class SysLoginService { if (ObjectUtil.isNull(tenant)) { log.info("登录租户:{} 不存在.", tenantId); throw new TenantException("tenant.not.exists"); - } else if (TenantStatus.DISABLE.getCode().equals(tenant.getStatus())) { + } else if (SystemConstants.DISABLE.equals(tenant.getStatus())) { log.info("登录租户:{} 已被停用.", tenantId); throw new TenantException("tenant.blocked"); } else if (ObjectUtil.isNotNull(tenant.getExpireTime()) diff --git a/ruoyi-admin/src/main/java/org/dromara/web/service/impl/EmailAuthStrategy.java b/ruoyi-admin/src/main/java/org/dromara/web/service/impl/EmailAuthStrategy.java index b5a24976e..1bed4f3e5 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/service/impl/EmailAuthStrategy.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/service/impl/EmailAuthStrategy.java @@ -8,10 +8,10 @@ import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.dromara.common.core.constant.Constants; import org.dromara.common.core.constant.GlobalConstants; +import org.dromara.common.core.constant.SystemConstants; import org.dromara.common.core.domain.model.EmailLoginBody; import org.dromara.common.core.domain.model.LoginUser; import org.dromara.common.core.enums.LoginType; -import org.dromara.common.core.enums.UserStatus; import org.dromara.common.core.exception.user.CaptchaExpireException; import org.dromara.common.core.exception.user.UserException; import org.dromara.common.core.utils.MessageUtils; @@ -92,7 +92,7 @@ public class EmailAuthStrategy implements IAuthStrategy { if (ObjectUtil.isNull(user)) { log.info("登录用户:{} 不存在.", email); throw new UserException("user.not.exists", email); - } else if (UserStatus.DISABLE.getCode().equals(user.getStatus())) { + } else if (SystemConstants.DISABLE.equals(user.getStatus())) { log.info("登录用户:{} 已被停用.", email); throw new UserException("user.blocked", email); } diff --git a/ruoyi-admin/src/main/java/org/dromara/web/service/impl/PasswordAuthStrategy.java b/ruoyi-admin/src/main/java/org/dromara/web/service/impl/PasswordAuthStrategy.java index f28024f35..e8e60e1c4 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/service/impl/PasswordAuthStrategy.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/service/impl/PasswordAuthStrategy.java @@ -9,10 +9,10 @@ import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.dromara.common.core.constant.Constants; import org.dromara.common.core.constant.GlobalConstants; +import org.dromara.common.core.constant.SystemConstants; import org.dromara.common.core.domain.model.LoginUser; import org.dromara.common.core.domain.model.PasswordLoginBody; import org.dromara.common.core.enums.LoginType; -import org.dromara.common.core.enums.UserStatus; import org.dromara.common.core.exception.user.CaptchaException; import org.dromara.common.core.exception.user.CaptchaExpireException; import org.dromara.common.core.exception.user.UserException; @@ -113,7 +113,7 @@ public class PasswordAuthStrategy implements IAuthStrategy { if (ObjectUtil.isNull(user)) { log.info("登录用户:{} 不存在.", username); throw new UserException("user.not.exists", username); - } else if (UserStatus.DISABLE.getCode().equals(user.getStatus())) { + } else if (SystemConstants.DISABLE.equals(user.getStatus())) { log.info("登录用户:{} 已被停用.", username); throw new UserException("user.blocked", username); } diff --git a/ruoyi-admin/src/main/java/org/dromara/web/service/impl/SmsAuthStrategy.java b/ruoyi-admin/src/main/java/org/dromara/web/service/impl/SmsAuthStrategy.java index 89f846244..2ffda353e 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/service/impl/SmsAuthStrategy.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/service/impl/SmsAuthStrategy.java @@ -8,10 +8,10 @@ import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.dromara.common.core.constant.Constants; import org.dromara.common.core.constant.GlobalConstants; +import org.dromara.common.core.constant.SystemConstants; import org.dromara.common.core.domain.model.LoginUser; import org.dromara.common.core.domain.model.SmsLoginBody; import org.dromara.common.core.enums.LoginType; -import org.dromara.common.core.enums.UserStatus; import org.dromara.common.core.exception.user.CaptchaExpireException; import org.dromara.common.core.exception.user.UserException; import org.dromara.common.core.utils.MessageUtils; @@ -92,7 +92,7 @@ public class SmsAuthStrategy implements IAuthStrategy { if (ObjectUtil.isNull(user)) { log.info("登录用户:{} 不存在.", phonenumber); throw new UserException("user.not.exists", phonenumber); - } else if (UserStatus.DISABLE.getCode().equals(user.getStatus())) { + } else if (SystemConstants.DISABLE.equals(user.getStatus())) { log.info("登录用户:{} 已被停用.", phonenumber); throw new UserException("user.blocked", phonenumber); } diff --git a/ruoyi-admin/src/main/java/org/dromara/web/service/impl/SocialAuthStrategy.java b/ruoyi-admin/src/main/java/org/dromara/web/service/impl/SocialAuthStrategy.java index 84630260f..419dbd6ba 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/service/impl/SocialAuthStrategy.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/service/impl/SocialAuthStrategy.java @@ -11,9 +11,9 @@ import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import me.zhyd.oauth.model.AuthResponse; import me.zhyd.oauth.model.AuthUser; +import org.dromara.common.core.constant.SystemConstants; import org.dromara.common.core.domain.model.LoginUser; import org.dromara.common.core.domain.model.SocialLoginBody; -import org.dromara.common.core.enums.UserStatus; import org.dromara.common.core.exception.ServiceException; import org.dromara.common.core.exception.user.UserException; import org.dromara.common.core.utils.StreamUtils; @@ -121,7 +121,7 @@ public class SocialAuthStrategy implements IAuthStrategy { if (ObjectUtil.isNull(user)) { log.info("登录用户:{} 不存在.", ""); throw new UserException("user.not.exists", ""); - } else if (UserStatus.DISABLE.getCode().equals(user.getStatus())) { + } else if (SystemConstants.DISABLE.equals(user.getStatus())) { log.info("登录用户:{} 已被停用.", ""); throw new UserException("user.blocked", ""); } diff --git a/ruoyi-admin/src/main/java/org/dromara/web/service/impl/XcxAuthStrategy.java b/ruoyi-admin/src/main/java/org/dromara/web/service/impl/XcxAuthStrategy.java index aa8be73a7..948ed9acb 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/service/impl/XcxAuthStrategy.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/service/impl/XcxAuthStrategy.java @@ -5,13 +5,12 @@ import cn.dev33.satoken.stp.StpUtil; import cn.hutool.core.util.ObjectUtil; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; +import org.dromara.common.core.constant.SystemConstants; import org.dromara.common.core.domain.model.XcxLoginBody; import org.dromara.common.core.domain.model.XcxLoginUser; -import org.dromara.common.core.enums.UserStatus; import org.dromara.common.core.utils.ValidatorUtils; import org.dromara.common.json.utils.JsonUtils; import org.dromara.common.satoken.utils.LoginHelper; -import org.dromara.system.domain.SysClient; import org.dromara.system.domain.vo.SysClientVo; import org.dromara.system.domain.vo.SysUserVo; import org.dromara.web.domain.vo.LoginVo; @@ -82,7 +81,7 @@ public class XcxAuthStrategy implements IAuthStrategy { if (ObjectUtil.isNull(user)) { log.info("登录用户:{} 不存在.", openid); // todo 用户不存在 业务逻辑自行实现 - } else if (UserStatus.DISABLE.getCode().equals(user.getStatus())) { + } else if (SystemConstants.DISABLE.equals(user.getStatus())) { log.info("登录用户:{} 已被停用.", openid); // todo 用户已被停用 业务逻辑自行实现 } diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/Constants.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/Constants.java index cdbda89f6..d031921bd 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/Constants.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/Constants.java @@ -67,11 +67,6 @@ public interface Constants { */ Integer CAPTCHA_EXPIRATION = 2; - /** - * 令牌 - */ - String TOKEN = "token"; - /** * 顶级部门id */ diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/UserConstants.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/SystemConstants.java similarity index 41% rename from ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/UserConstants.java rename to ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/SystemConstants.java index 76f6dd4ad..79afb951f 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/UserConstants.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/SystemConstants.java @@ -3,14 +3,9 @@ package org.dromara.common.core.constant; /** * 用户常量信息 * - * @author ruoyi + * @author Lion Li */ -public interface UserConstants { - - /** - * 平台内系统用户的唯一标志 - */ - String SYS_USER = "SYS_USER"; +public interface SystemConstants { /** * 正常状态 @@ -20,62 +15,7 @@ public interface UserConstants { /** * 异常状态 */ - String EXCEPTION = "1"; - - /** - * 用户正常状态 - */ - String USER_NORMAL = "0"; - - /** - * 用户封禁状态 - */ - String USER_DISABLE = "1"; - - /** - * 角色正常状态 - */ - String ROLE_NORMAL = "0"; - - /** - * 角色封禁状态 - */ - String ROLE_DISABLE = "1"; - - /** - * 部门正常状态 - */ - String DEPT_NORMAL = "0"; - - /** - * 部门停用状态 - */ - String DEPT_DISABLE = "1"; - - /** - * 岗位正常状态 - */ - String POST_NORMAL = "0"; - - /** - * 岗位停用状态 - */ - String POST_DISABLE = "1"; - - /** - * 字典正常状态 - */ - String DICT_NORMAL = "0"; - - /** - * 通用存在标志 - */ - String DEL_FLAG_NORMAL = "0"; - - /** - * 通用删除标志 - */ - String DEL_FLAG_REMOVED = "2"; + String DISABLE = "1"; /** * 是否为系统默认(是) @@ -92,16 +32,6 @@ public interface UserConstants { */ String NO_FRAME = "1"; - /** - * 菜单正常状态 - */ - String MENU_NORMAL = "0"; - - /** - * 菜单停用状态 - */ - String MENU_DISABLE = "1"; - /** * 菜单类型(目录) */ @@ -132,18 +62,6 @@ public interface UserConstants { */ String INNER_LINK = "InnerLink"; - /** - * 用户名长度限制 - */ - int USERNAME_MIN_LENGTH = 2; - int USERNAME_MAX_LENGTH = 20; - - /** - * 密码长度限制 - */ - int PASSWORD_MIN_LENGTH = 5; - int PASSWORD_MAX_LENGTH = 20; - /** * 超级管理员ID */ diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/TenantConstants.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/TenantConstants.java index 86b63c97a..33ce0cf6c 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/TenantConstants.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/TenantConstants.java @@ -7,16 +7,6 @@ package org.dromara.common.core.constant; */ public interface TenantConstants { - /** - * 租户正常状态 - */ - String NORMAL = "0"; - - /** - * 租户封禁状态 - */ - String DISABLE = "1"; - /** * 超级管理员ID */ diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/model/PasswordLoginBody.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/model/PasswordLoginBody.java index 22de8f2c4..87d0e8e73 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/model/PasswordLoginBody.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/model/PasswordLoginBody.java @@ -5,8 +5,6 @@ import lombok.Data; import lombok.EqualsAndHashCode; import org.hibernate.validator.constraints.Length; -import static org.dromara.common.core.constant.UserConstants.*; - /** * 密码登录对象 * @@ -20,14 +18,14 @@ public class PasswordLoginBody extends LoginBody { * 用户名 */ @NotBlank(message = "{user.username.not.blank}") - @Length(min = USERNAME_MIN_LENGTH, max = USERNAME_MAX_LENGTH, message = "{user.username.length.valid}") + @Length(min = 2, max = 20, message = "{user.username.length.valid}") private String username; /** * 用户密码 */ @NotBlank(message = "{user.password.not.blank}") - @Length(min = PASSWORD_MIN_LENGTH, max = PASSWORD_MAX_LENGTH, message = "{user.password.length.valid}") + @Length(min = 5, max = 20, message = "{user.password.length.valid}") private String password; } diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/model/RegisterBody.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/model/RegisterBody.java index 440422bb6..6ea8a764a 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/model/RegisterBody.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/model/RegisterBody.java @@ -5,8 +5,6 @@ import lombok.Data; import lombok.EqualsAndHashCode; import org.hibernate.validator.constraints.Length; -import static org.dromara.common.core.constant.UserConstants.*; - /** * 用户注册对象 * @@ -20,14 +18,14 @@ public class RegisterBody extends LoginBody { * 用户名 */ @NotBlank(message = "{user.username.not.blank}") - @Length(min = USERNAME_MIN_LENGTH, max = USERNAME_MAX_LENGTH, message = "{user.username.length.valid}") + @Length(min = 2, max = 20, message = "{user.username.length.valid}") private String username; /** * 用户密码 */ @NotBlank(message = "{user.password.not.blank}") - @Length(min = PASSWORD_MIN_LENGTH, max = PASSWORD_MAX_LENGTH, message = "{user.password.length.valid}") + @Length(min = 5, max = 20, message = "{user.password.length.valid}") private String password; private String userType; diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/enums/TenantStatus.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/enums/TenantStatus.java deleted file mode 100644 index 400a3996a..000000000 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/enums/TenantStatus.java +++ /dev/null @@ -1,30 +0,0 @@ -package org.dromara.common.core.enums; - -import lombok.AllArgsConstructor; -import lombok.Getter; - -/** - * 用户状态 - * - * @author LionLi - */ -@Getter -@AllArgsConstructor -public enum TenantStatus { - /** - * 正常 - */ - OK("0", "正常"), - /** - * 停用 - */ - DISABLE("1", "停用"), - /** - * 删除 - */ - DELETED("2", "删除"); - - private final String code; - private final String info; - -} diff --git a/ruoyi-common/ruoyi-common-satoken/src/main/java/org/dromara/common/satoken/utils/LoginHelper.java b/ruoyi-common/ruoyi-common-satoken/src/main/java/org/dromara/common/satoken/utils/LoginHelper.java index 4ab7d4eeb..cdc5684fa 100644 --- a/ruoyi-common/ruoyi-common-satoken/src/main/java/org/dromara/common/satoken/utils/LoginHelper.java +++ b/ruoyi-common/ruoyi-common-satoken/src/main/java/org/dromara/common/satoken/utils/LoginHelper.java @@ -8,8 +8,8 @@ import cn.hutool.core.convert.Convert; import cn.hutool.core.util.ObjectUtil; import lombok.AccessLevel; import lombok.NoArgsConstructor; +import org.dromara.common.core.constant.SystemConstants; import org.dromara.common.core.constant.TenantConstants; -import org.dromara.common.core.constant.UserConstants; import org.dromara.common.core.domain.model.LoginUser; import org.dromara.common.core.enums.UserType; @@ -152,7 +152,7 @@ public class LoginHelper { * @return 结果 */ public static boolean isSuperAdmin(Long userId) { - return UserConstants.SUPER_ADMIN_ID.equals(userId); + return SystemConstants.SUPER_ADMIN_ID.equals(userId); } /** diff --git a/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/vo/ExportDemoVo.java b/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/vo/ExportDemoVo.java index 95fa0d140..ef9058ed5 100644 --- a/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/vo/ExportDemoVo.java +++ b/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/vo/ExportDemoVo.java @@ -15,6 +15,9 @@ import org.dromara.common.excel.annotation.ExcelEnumFormat; import org.dromara.common.excel.convert.ExcelDictConvert; import org.dromara.common.excel.convert.ExcelEnumConvert; +import java.io.Serial; +import java.io.Serializable; + /** * 带有下拉选的Excel导出 * @@ -24,8 +27,9 @@ import org.dromara.common.excel.convert.ExcelEnumConvert; @ExcelIgnoreUnannotated @AllArgsConstructor @NoArgsConstructor -public class ExportDemoVo { +public class ExportDemoVo implements Serializable { + @Serial private static final long serialVersionUID = 1L; /** diff --git a/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/service/impl/ExportExcelServiceImpl.java b/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/service/impl/ExportExcelServiceImpl.java index ebb6ac688..69cf0a8af 100644 --- a/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/service/impl/ExportExcelServiceImpl.java +++ b/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/service/impl/ExportExcelServiceImpl.java @@ -5,7 +5,7 @@ import cn.hutool.core.util.StrUtil; import jakarta.servlet.http.HttpServletResponse; import lombok.Data; import lombok.RequiredArgsConstructor; -import org.dromara.common.core.enums.UserStatus; +import org.dromara.common.core.constant.SystemConstants; import org.dromara.common.core.utils.StreamUtils; import org.dromara.common.excel.core.DropDownOptions; import org.dromara.common.excel.utils.ExcelUtil; @@ -35,7 +35,7 @@ public class ExportExcelServiceImpl implements IExportExcelService { // 模拟数据库中的一条数据 ExportDemoVo everyRowData = new ExportDemoVo(); everyRowData.setNickName("用户-" + i); - everyRowData.setUserStatus(UserStatus.OK.getCode()); + everyRowData.setUserStatus(SystemConstants.NORMAL); everyRowData.setGender("1"); everyRowData.setPhoneNumber(String.format("175%08d", i)); everyRowData.setEmail(String.format("175%08d", i) + "@163.com"); diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysDeptController.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysDeptController.java index 968bbe906..45b841850 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysDeptController.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysDeptController.java @@ -3,7 +3,7 @@ package org.dromara.system.controller.system; import cn.dev33.satoken.annotation.SaCheckPermission; import cn.hutool.core.convert.Convert; import lombok.RequiredArgsConstructor; -import org.dromara.common.core.constant.UserConstants; +import org.dromara.common.core.constant.SystemConstants; import org.dromara.common.core.domain.R; import org.dromara.common.core.utils.StringUtils; import org.dromara.common.log.annotation.Log; @@ -94,7 +94,7 @@ public class SysDeptController extends BaseController { return R.fail("修改部门'" + dept.getDeptName() + "'失败,部门名称已存在"); } else if (dept.getParentId().equals(deptId)) { return R.fail("修改部门'" + dept.getDeptName() + "'失败,上级部门不能是自己"); - } else if (StringUtils.equals(UserConstants.DEPT_DISABLE, dept.getStatus())) { + } else if (StringUtils.equals(SystemConstants.DISABLE, dept.getStatus())) { if (deptService.selectNormalChildrenDeptById(deptId) > 0) { return R.fail("该部门包含未停用的子部门!"); } else if (deptService.checkDeptExistUser(deptId)) { diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysMenuController.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysMenuController.java index e5daa0e12..d8cd335ce 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysMenuController.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysMenuController.java @@ -4,8 +4,9 @@ import cn.dev33.satoken.annotation.SaCheckPermission; import cn.dev33.satoken.annotation.SaCheckRole; import cn.dev33.satoken.annotation.SaMode; import cn.hutool.core.lang.tree.Tree; +import lombok.RequiredArgsConstructor; +import org.dromara.common.core.constant.SystemConstants; import org.dromara.common.core.constant.TenantConstants; -import org.dromara.common.core.constant.UserConstants; import org.dromara.common.core.domain.R; import org.dromara.common.core.utils.StringUtils; import org.dromara.common.log.annotation.Log; @@ -18,7 +19,6 @@ import org.dromara.system.domain.vo.MenuTreeSelectVo; import org.dromara.system.domain.vo.RouterVo; import org.dromara.system.domain.vo.SysMenuVo; import org.dromara.system.service.ISysMenuService; -import lombok.RequiredArgsConstructor; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; @@ -128,7 +128,7 @@ public class SysMenuController extends BaseController { public R add(@Validated @RequestBody SysMenuBo menu) { if (!menuService.checkMenuNameUnique(menu)) { return R.fail("新增菜单'" + menu.getMenuName() + "'失败,菜单名称已存在"); - } else if (UserConstants.YES_FRAME.equals(menu.getIsFrame()) && !StringUtils.ishttp(menu.getPath())) { + } else if (SystemConstants.YES_FRAME.equals(menu.getIsFrame()) && !StringUtils.ishttp(menu.getPath())) { return R.fail("新增菜单'" + menu.getMenuName() + "'失败,地址必须以http(s)://开头"); } return toAjax(menuService.insertMenu(menu)); @@ -144,7 +144,7 @@ public class SysMenuController extends BaseController { public R edit(@Validated @RequestBody SysMenuBo menu) { if (!menuService.checkMenuNameUnique(menu)) { return R.fail("修改菜单'" + menu.getMenuName() + "'失败,菜单名称已存在"); - } else if (UserConstants.YES_FRAME.equals(menu.getIsFrame()) && !StringUtils.ishttp(menu.getPath())) { + } else if (SystemConstants.YES_FRAME.equals(menu.getIsFrame()) && !StringUtils.ishttp(menu.getPath())) { return R.fail("修改菜单'" + menu.getMenuName() + "'失败,地址必须以http(s)://开头"); } else if (menu.getMenuId().equals(menu.getParentId())) { return R.fail("修改菜单'" + menu.getMenuName() + "'失败,上级菜单不能选择自己"); diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysPostController.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysPostController.java index 782bcfc55..5333a4aef 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysPostController.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysPostController.java @@ -4,7 +4,7 @@ import cn.dev33.satoken.annotation.SaCheckPermission; import cn.hutool.core.util.ObjectUtil; import jakarta.servlet.http.HttpServletResponse; import lombok.RequiredArgsConstructor; -import org.dromara.common.core.constant.UserConstants; +import org.dromara.common.core.constant.SystemConstants; import org.dromara.common.core.domain.R; import org.dromara.common.excel.utils.ExcelUtil; import org.dromara.common.log.annotation.Log; @@ -91,7 +91,7 @@ public class SysPostController extends BaseController { return R.fail("修改岗位'" + post.getPostName() + "'失败,岗位名称已存在"); } else if (!postService.checkPostCodeUnique(post)) { return R.fail("修改岗位'" + post.getPostName() + "'失败,岗位编码已存在"); - } else if (UserConstants.POST_DISABLE.equals(post.getStatus()) + } else if (SystemConstants.DISABLE.equals(post.getStatus()) && postService.countUserPostById(post.getPostId()) > 0) { return R.fail("该岗位下存在已分配用户,不能禁用!"); } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysUserController.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysUserController.java index 025800de9..d4cecbe14 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysUserController.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysUserController.java @@ -8,7 +8,7 @@ import cn.hutool.core.util.ObjectUtil; import jakarta.servlet.http.HttpServletResponse; import jakarta.validation.constraints.NotNull; import lombok.RequiredArgsConstructor; -import org.dromara.common.core.constant.UserConstants; +import org.dromara.common.core.constant.SystemConstants; import org.dromara.common.core.domain.R; import org.dromara.common.core.domain.model.LoginUser; import org.dromara.common.core.utils.StreamUtils; @@ -143,7 +143,7 @@ public class SysUserController extends BaseController { } } SysRoleBo roleBo = new SysRoleBo(); - roleBo.setStatus(UserConstants.ROLE_NORMAL); + roleBo.setStatus(SystemConstants.NORMAL); List roles = roleService.selectRoleList(roleBo); userInfoVo.setRoles(LoginHelper.isSuperAdmin(userId) ? roles : StreamUtils.filter(roles, r -> !r.isSuperAdmin())); return R.ok(userInfoVo); diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysDictData.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysDictData.java index 6884fc2db..9d83736e5 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysDictData.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysDictData.java @@ -2,10 +2,10 @@ package org.dromara.system.domain; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; -import org.dromara.common.core.constant.UserConstants; -import org.dromara.common.tenant.core.TenantEntity; import lombok.Data; import lombok.EqualsAndHashCode; +import org.dromara.common.core.constant.SystemConstants; +import org.dromara.common.tenant.core.TenantEntity; /** * 字典数据表 sys_dict_data @@ -65,7 +65,7 @@ public class SysDictData extends TenantEntity { private String remark; public boolean getDefault() { - return UserConstants.YES.equals(this.isDefault); + return SystemConstants.YES.equals(this.isDefault); } } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysMenu.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysMenu.java index 6b498a38e..2df55962b 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysMenu.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysMenu.java @@ -3,12 +3,12 @@ package org.dromara.system.domain; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import lombok.EqualsAndHashCode; import org.dromara.common.core.constant.Constants; -import org.dromara.common.core.constant.UserConstants; +import org.dromara.common.core.constant.SystemConstants; import org.dromara.common.core.utils.StringUtils; import org.dromara.common.mybatis.core.domain.BaseEntity; -import lombok.Data; -import lombok.EqualsAndHashCode; import java.util.ArrayList; import java.util.List; @@ -134,8 +134,8 @@ public class SysMenu extends BaseEntity { routerPath = innerLinkReplaceEach(routerPath); } // 非外链并且是一级目录(类型为目录) - if (0L == getParentId() && UserConstants.TYPE_DIR.equals(getMenuType()) - && UserConstants.NO_FRAME.equals(getIsFrame())) { + if (0L == getParentId() && SystemConstants.TYPE_DIR.equals(getMenuType()) + && SystemConstants.NO_FRAME.equals(getIsFrame())) { routerPath = "/" + this.path; } // 非外链并且是一级目录(类型为菜单) @@ -149,13 +149,13 @@ public class SysMenu extends BaseEntity { * 获取组件信息 */ public String getComponentInfo() { - String component = UserConstants.LAYOUT; + String component = SystemConstants.LAYOUT; if (StringUtils.isNotEmpty(this.component) && !isMenuFrame()) { component = this.component; } else if (StringUtils.isEmpty(this.component) && getParentId() != 0L && isInnerLink()) { - component = UserConstants.INNER_LINK; + component = SystemConstants.INNER_LINK; } else if (StringUtils.isEmpty(this.component) && isParentView()) { - component = UserConstants.PARENT_VIEW; + component = SystemConstants.PARENT_VIEW; } return component; } @@ -164,21 +164,21 @@ public class SysMenu extends BaseEntity { * 是否为菜单内部跳转 */ public boolean isMenuFrame() { - return getParentId() == 0L && UserConstants.TYPE_MENU.equals(menuType) && isFrame.equals(UserConstants.NO_FRAME); + return getParentId() == 0L && SystemConstants.TYPE_MENU.equals(menuType) && isFrame.equals(SystemConstants.NO_FRAME); } /** * 是否为内链组件 */ public boolean isInnerLink() { - return isFrame.equals(UserConstants.NO_FRAME) && StringUtils.ishttp(path); + return isFrame.equals(SystemConstants.NO_FRAME) && StringUtils.ishttp(path); } /** * 是否为parent_view组件 */ public boolean isParentView() { - return getParentId() != 0L && UserConstants.TYPE_DIR.equals(menuType); + return getParentId() != 0L && SystemConstants.TYPE_DIR.equals(menuType); } /** diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysUser.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysUser.java index 8dde40b35..4e603e551 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysUser.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysUser.java @@ -1,11 +1,11 @@ package org.dromara.system.domain; import com.baomidou.mybatisplus.annotation.*; -import org.dromara.common.core.constant.UserConstants; -import org.dromara.common.tenant.core.TenantEntity; import lombok.Data; import lombok.EqualsAndHashCode; import lombok.NoArgsConstructor; +import org.dromara.common.core.constant.SystemConstants; +import org.dromara.common.tenant.core.TenantEntity; import java.util.Date; @@ -109,7 +109,7 @@ public class SysUser extends TenantEntity { } public boolean isSuperAdmin() { - return UserConstants.SUPER_ADMIN_ID.equals(this.userId); + return SystemConstants.SUPER_ADMIN_ID.equals(this.userId); } } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysRoleBo.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysRoleBo.java index 0c8b4dca9..3207bad1e 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysRoleBo.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysRoleBo.java @@ -7,7 +7,7 @@ import jakarta.validation.constraints.Size; import lombok.Data; import lombok.EqualsAndHashCode; import lombok.NoArgsConstructor; -import org.dromara.common.core.constant.UserConstants; +import org.dromara.common.core.constant.SystemConstants; import org.dromara.common.mybatis.core.domain.BaseEntity; import org.dromara.system.domain.SysRole; @@ -88,7 +88,7 @@ public class SysRoleBo extends BaseEntity { } public boolean isSuperAdmin() { - return UserConstants.SUPER_ADMIN_ID.equals(this.roleId); + return SystemConstants.SUPER_ADMIN_ID.equals(this.roleId); } } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysUserBo.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysUserBo.java index 7ad2759b2..2669a8179 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysUserBo.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysUserBo.java @@ -7,7 +7,7 @@ import jakarta.validation.constraints.Size; import lombok.Data; import lombok.EqualsAndHashCode; import lombok.NoArgsConstructor; -import org.dromara.common.core.constant.UserConstants; +import org.dromara.common.core.constant.SystemConstants; import org.dromara.common.core.xss.Xss; import org.dromara.common.mybatis.core.domain.BaseEntity; import org.dromara.system.domain.SysUser; @@ -113,7 +113,7 @@ public class SysUserBo extends BaseEntity { } public boolean isSuperAdmin() { - return UserConstants.SUPER_ADMIN_ID.equals(this.userId); + return SystemConstants.SUPER_ADMIN_ID.equals(this.userId); } } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysRoleVo.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysRoleVo.java index 1e5cd9ee6..ffb2c6d5a 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysRoleVo.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysRoleVo.java @@ -2,12 +2,12 @@ package org.dromara.system.domain.vo; import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; import com.alibaba.excel.annotation.ExcelProperty; -import org.dromara.common.core.constant.UserConstants; +import io.github.linpeilie.annotations.AutoMapper; +import lombok.Data; +import org.dromara.common.core.constant.SystemConstants; import org.dromara.common.excel.annotation.ExcelDictFormat; import org.dromara.common.excel.convert.ExcelDictConvert; import org.dromara.system.domain.SysRole; -import io.github.linpeilie.annotations.AutoMapper; -import lombok.Data; import java.io.Serial; import java.io.Serializable; @@ -94,7 +94,7 @@ public class SysRoleVo implements Serializable { private boolean flag = false; public boolean isSuperAdmin() { - return UserConstants.SUPER_ADMIN_ID.equals(this.roleId); + return SystemConstants.SUPER_ADMIN_ID.equals(this.roleId); } } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysMenuMapper.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysMenuMapper.java index ac646c096..205413b3f 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysMenuMapper.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysMenuMapper.java @@ -3,11 +3,11 @@ package org.dromara.system.mapper; import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Constants; -import org.dromara.common.core.constant.UserConstants; -import org.dromara.system.domain.SysMenu; +import org.apache.ibatis.annotations.Param; +import org.dromara.common.core.constant.SystemConstants; import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; +import org.dromara.system.domain.SysMenu; import org.dromara.system.domain.vo.SysMenuVo; -import org.apache.ibatis.annotations.Param; import java.util.List; @@ -49,8 +49,8 @@ public interface SysMenuMapper extends BaseMapperPlus { */ default List selectMenuTreeAll() { LambdaQueryWrapper lqw = new LambdaQueryWrapper() - .in(SysMenu::getMenuType, UserConstants.TYPE_DIR, UserConstants.TYPE_MENU) - .eq(SysMenu::getStatus, UserConstants.MENU_NORMAL) + .in(SysMenu::getMenuType, SystemConstants.TYPE_DIR, SystemConstants.TYPE_MENU) + .eq(SysMenu::getStatus, SystemConstants.NORMAL) .orderByAsc(SysMenu::getParentId) .orderByAsc(SysMenu::getOrderNum); return this.selectList(lqw); diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysConfigServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysConfigServiceImpl.java index 46526bd98..e8f64ec9b 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysConfigServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysConfigServiceImpl.java @@ -7,7 +7,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import org.dromara.common.core.constant.CacheNames; -import org.dromara.common.core.constant.UserConstants; +import org.dromara.common.core.constant.SystemConstants; import org.dromara.common.core.exception.ServiceException; import org.dromara.common.core.service.ConfigService; import org.dromara.common.core.utils.MapstructUtils; @@ -173,7 +173,7 @@ public class SysConfigServiceImpl implements ISysConfigService, ConfigService { public void deleteConfigByIds(Long[] configIds) { for (Long configId : configIds) { SysConfig config = baseMapper.selectById(configId); - if (StringUtils.equals(UserConstants.YES, config.getConfigType())) { + if (StringUtils.equals(SystemConstants.YES, config.getConfigType())) { throw new ServiceException(String.format("内置参数【%1$s】不能删除 ", config.getConfigKey())); } CacheUtils.evict(CacheNames.SYS_CONFIG, config.getConfigKey()); diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java index c17391674..44ff90e9c 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java @@ -9,14 +9,10 @@ import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import lombok.RequiredArgsConstructor; import org.dromara.common.core.constant.CacheNames; -import org.dromara.common.core.constant.UserConstants; +import org.dromara.common.core.constant.SystemConstants; import org.dromara.common.core.exception.ServiceException; import org.dromara.common.core.service.DeptService; -import org.dromara.common.core.utils.MapstructUtils; -import org.dromara.common.core.utils.SpringUtils; -import org.dromara.common.core.utils.StringUtils; -import org.dromara.common.core.utils.StreamUtils; -import org.dromara.common.core.utils.TreeBuildUtils; +import org.dromara.common.core.utils.*; import org.dromara.common.mybatis.helper.DataBaseHelper; import org.dromara.common.redis.utils.CacheUtils; import org.dromara.common.satoken.utils.LoginHelper; @@ -71,7 +67,7 @@ public class SysDeptServiceImpl implements ISysDeptService, DeptService { @Override public List> selectDeptTreeList(SysDeptBo bo) { // 只查询未禁用部门 - bo.setStatus(UserConstants.DEPT_NORMAL); + bo.setStatus(SystemConstants.NORMAL); LambdaQueryWrapper lqw = buildQueryWrapper(bo); List depts = baseMapper.selectDeptList(lqw); return buildDeptTreeSelect(depts); @@ -79,7 +75,7 @@ public class SysDeptServiceImpl implements ISysDeptService, DeptService { private LambdaQueryWrapper buildQueryWrapper(SysDeptBo bo) { LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); - lqw.eq(SysDept::getDelFlag, UserConstants.DEL_FLAG_NORMAL); + lqw.eq(SysDept::getDelFlag, SystemConstants.NORMAL); lqw.eq(ObjectUtil.isNotNull(bo.getDeptId()), SysDept::getDeptId, bo.getDeptId()); lqw.eq(ObjectUtil.isNotNull(bo.getParentId()), SysDept::getParentId, bo.getParentId()); lqw.like(StringUtils.isNotBlank(bo.getDeptName()), SysDept::getDeptName, bo.getDeptName()); @@ -156,7 +152,7 @@ public class SysDeptServiceImpl implements ISysDeptService, DeptService { public List selectDeptByIds(List deptIds) { return baseMapper.selectDeptList(new LambdaQueryWrapper() .select(SysDept::getDeptId, SysDept::getDeptName, SysDept::getLeader) - .eq(SysDept::getStatus, UserConstants.DEPT_NORMAL) + .eq(SysDept::getStatus, SystemConstants.NORMAL) .in(CollUtil.isNotEmpty(deptIds), SysDept::getDeptId, deptIds)); } @@ -187,7 +183,7 @@ public class SysDeptServiceImpl implements ISysDeptService, DeptService { @Override public long selectNormalChildrenDeptById(Long deptId) { return baseMapper.selectCount(new LambdaQueryWrapper() - .eq(SysDept::getStatus, UserConstants.DEPT_NORMAL) + .eq(SysDept::getStatus, SystemConstants.NORMAL) .apply(DataBaseHelper.findInSet(deptId, "ancestors"))); } @@ -258,7 +254,7 @@ public class SysDeptServiceImpl implements ISysDeptService, DeptService { public int insertDept(SysDeptBo bo) { SysDept info = baseMapper.selectById(bo.getParentId()); // 如果父节点不为正常状态,则不允许新增子节点 - if (!UserConstants.DEPT_NORMAL.equals(info.getStatus())) { + if (!SystemConstants.NORMAL.equals(info.getStatus())) { throw new ServiceException("部门停用,不允许新增"); } SysDept dept = MapstructUtils.convert(bo, SysDept.class); @@ -294,8 +290,8 @@ public class SysDeptServiceImpl implements ISysDeptService, DeptService { dept.setAncestors(oldDept.getAncestors()); } int result = baseMapper.updateById(dept); - if (UserConstants.DEPT_NORMAL.equals(dept.getStatus()) && StringUtils.isNotEmpty(dept.getAncestors()) - && !StringUtils.equals(UserConstants.DEPT_NORMAL, dept.getAncestors())) { + if (SystemConstants.NORMAL.equals(dept.getStatus()) && StringUtils.isNotEmpty(dept.getAncestors()) + && !StringUtils.equals(SystemConstants.NORMAL, dept.getAncestors())) { // 如果该部门是启用状态,则启用该部门的所有上级部门 updateParentDeptStatusNormal(dept); } @@ -311,7 +307,7 @@ public class SysDeptServiceImpl implements ISysDeptService, DeptService { String ancestors = dept.getAncestors(); Long[] deptIds = Convert.toLongArray(ancestors); baseMapper.update(null, new LambdaUpdateWrapper() - .set(SysDept::getStatus, UserConstants.DEPT_NORMAL) + .set(SysDept::getStatus, SystemConstants.NORMAL) .in(SysDept::getDeptId, Arrays.asList(deptIds))); } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysMenuServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysMenuServiceImpl.java index af844c9bd..354d4b4d9 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysMenuServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysMenuServiceImpl.java @@ -8,7 +8,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import lombok.RequiredArgsConstructor; -import org.dromara.common.core.constant.UserConstants; +import org.dromara.common.core.constant.SystemConstants; import org.dromara.common.core.utils.MapstructUtils; import org.dromara.common.core.utils.StreamUtils; import org.dromara.common.core.utils.StringUtils; @@ -196,7 +196,7 @@ public class SysMenuServiceImpl implements ISysMenuService { router.setQuery(menu.getQueryParam()); router.setMeta(new MetaVo(menu.getMenuName(), menu.getIcon(), StringUtils.equals("1", menu.getIsCache()), menu.getPath())); List cMenus = menu.getChildren(); - if (CollUtil.isNotEmpty(cMenus) && UserConstants.TYPE_DIR.equals(menu.getMenuType())) { + if (CollUtil.isNotEmpty(cMenus) && SystemConstants.TYPE_DIR.equals(menu.getMenuType())) { router.setAlwaysShow(true); router.setRedirect("noRedirect"); router.setChildren(buildMenus(cMenus)); @@ -220,7 +220,7 @@ public class SysMenuServiceImpl implements ISysMenuService { String routerPath = SysMenu.innerLinkReplaceEach(menu.getPath()); String innerLinkName = StringUtils.capitalize(routerPath) + menu.getMenuId(); children.setPath(routerPath); - children.setComponent(UserConstants.INNER_LINK); + children.setComponent(SystemConstants.INNER_LINK); children.setName(innerLinkName); children.setMeta(new MetaVo(menu.getMenuName(), menu.getIcon(), menu.getPath())); childrenList.add(children); diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysPostServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysPostServiceImpl.java index e3f4145b4..8643f0d92 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysPostServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysPostServiceImpl.java @@ -6,7 +6,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import lombok.RequiredArgsConstructor; -import org.dromara.common.core.constant.UserConstants; +import org.dromara.common.core.constant.SystemConstants; import org.dromara.common.core.exception.ServiceException; import org.dromara.common.core.utils.MapstructUtils; import org.dromara.common.core.utils.StreamUtils; @@ -128,7 +128,7 @@ public class SysPostServiceImpl implements ISysPostService { public List selectPostByIds(List postIds) { return baseMapper.selectVoList(new LambdaQueryWrapper() .select(SysPost::getPostId, SysPost::getPostName, SysPost::getPostCode) - .eq(SysPost::getStatus, UserConstants.POST_NORMAL) + .eq(SysPost::getStatus, SystemConstants.NORMAL) .in(CollUtil.isNotEmpty(postIds), SysPost::getPostId, postIds)); } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysRoleServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysRoleServiceImpl.java index fee0a5b77..4148b7308 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysRoleServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysRoleServiceImpl.java @@ -12,8 +12,8 @@ import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import lombok.RequiredArgsConstructor; +import org.dromara.common.core.constant.SystemConstants; import org.dromara.common.core.constant.TenantConstants; -import org.dromara.common.core.constant.UserConstants; import org.dromara.common.core.domain.model.LoginUser; import org.dromara.common.core.exception.ServiceException; import org.dromara.common.core.utils.MapstructUtils; @@ -72,7 +72,7 @@ public class SysRoleServiceImpl implements ISysRoleService { private Wrapper buildQueryWrapper(SysRoleBo bo) { Map params = bo.getParams(); QueryWrapper wrapper = Wrappers.query(); - wrapper.eq("r.del_flag", UserConstants.ROLE_NORMAL) + wrapper.eq("r.del_flag", SystemConstants.NORMAL) .eq(ObjectUtil.isNotNull(bo.getRoleId()), "r.role_id", bo.getRoleId()) .like(StringUtils.isNotBlank(bo.getRoleName()), "r.role_name", bo.getRoleName()) .eq(StringUtils.isNotBlank(bo.getStatus()), "r.status", bo.getStatus()) @@ -174,7 +174,7 @@ public class SysRoleServiceImpl implements ISysRoleService { @Override public List selectRoleByIds(List roleIds) { return baseMapper.selectRoleList(new QueryWrapper() - .eq("r.status", UserConstants.ROLE_NORMAL) + .eq("r.status", SystemConstants.NORMAL) .in(CollUtil.isNotEmpty(roleIds), "r.role_id", roleIds)); } @@ -294,7 +294,7 @@ public class SysRoleServiceImpl implements ISysRoleService { public int updateRole(SysRoleBo bo) { SysRole role = MapstructUtils.convert(bo, SysRole.class); - if (UserConstants.ROLE_DISABLE.equals(role.getStatus()) && this.countUserRoleByRoleId(role.getRoleId()) > 0) { + if (SystemConstants.DISABLE.equals(role.getStatus()) && this.countUserRoleByRoleId(role.getRoleId()) > 0) { throw new ServiceException("角色已分配,不能禁用!"); } // 修改角色信息 @@ -313,7 +313,7 @@ public class SysRoleServiceImpl implements ISysRoleService { */ @Override public int updateRoleStatus(Long roleId, String status) { - if (UserConstants.ROLE_DISABLE.equals(status) && this.countUserRoleByRoleId(roleId) > 0) { + if (SystemConstants.DISABLE.equals(status) && this.countUserRoleByRoleId(roleId) > 0) { throw new ServiceException("角色已分配,不能禁用!"); } return baseMapper.update(null, diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantPackageServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantPackageServiceImpl.java index d2a72f611..8d69e96ea 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantPackageServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantPackageServiceImpl.java @@ -6,7 +6,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import lombok.RequiredArgsConstructor; -import org.dromara.common.core.constant.TenantConstants; +import org.dromara.common.core.constant.SystemConstants; import org.dromara.common.core.exception.ServiceException; import org.dromara.common.core.utils.MapstructUtils; import org.dromara.common.core.utils.StringUtils; @@ -59,7 +59,7 @@ public class SysTenantPackageServiceImpl implements ISysTenantPackageService { @Override public List selectList() { return baseMapper.selectVoList(new LambdaQueryWrapper() - .eq(SysTenantPackage::getStatus, TenantConstants.NORMAL)); + .eq(SysTenantPackage::getStatus, SystemConstants.NORMAL)); } /** diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java index 747654982..7bfe989b9 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java @@ -12,6 +12,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import lombok.RequiredArgsConstructor; import org.dromara.common.core.constant.CacheNames; import org.dromara.common.core.constant.Constants; +import org.dromara.common.core.constant.SystemConstants; import org.dromara.common.core.constant.TenantConstants; import org.dromara.common.core.exception.ServiceException; import org.dromara.common.core.utils.MapstructUtils; @@ -231,7 +232,7 @@ public class SysTenantServiceImpl implements ISysTenantService { role.setRoleName(TenantConstants.TENANT_ADMIN_ROLE_NAME); role.setRoleKey(TenantConstants.TENANT_ADMIN_ROLE_KEY); role.setRoleSort(1); - role.setStatus(TenantConstants.NORMAL); + role.setStatus(SystemConstants.NORMAL); roleMapper.insert(role); Long roleId = role.getRoleId(); @@ -398,7 +399,7 @@ public class SysTenantServiceImpl implements ISysTenantService { // 获取所有租户编号 List tenantIds = baseMapper.selectObjs( new LambdaQueryWrapper().select(SysTenant::getTenantId) - .eq(SysTenant::getStatus, TenantConstants.NORMAL), x -> {return Convert.toStr(x);}); + .eq(SysTenant::getStatus, SystemConstants.NORMAL), x -> {return Convert.toStr(x);}); List saveTypeList = new ArrayList<>(); List saveDataList = new ArrayList<>(); Set set = new HashSet<>(); diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java index cd69767cc..abb814c19 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java @@ -14,7 +14,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.dromara.common.core.constant.CacheNames; -import org.dromara.common.core.constant.UserConstants; +import org.dromara.common.core.constant.SystemConstants; import org.dromara.common.core.domain.dto.UserDTO; import org.dromara.common.core.exception.ServiceException; import org.dromara.common.core.service.UserService; @@ -80,7 +80,7 @@ public class SysUserServiceImpl implements ISysUserService, UserService { private Wrapper buildQueryWrapper(SysUserBo user) { Map params = user.getParams(); QueryWrapper wrapper = Wrappers.query(); - wrapper.eq("u.del_flag", UserConstants.USER_NORMAL) + wrapper.eq("u.del_flag", SystemConstants.NORMAL) .eq(ObjectUtil.isNotNull(user.getUserId()), "u.user_id", user.getUserId()) .like(StringUtils.isNotBlank(user.getUserName()), "u.user_name", user.getUserName()) .eq(StringUtils.isNotBlank(user.getStatus()), "u.status", user.getStatus()) @@ -108,7 +108,7 @@ public class SysUserServiceImpl implements ISysUserService, UserService { @Override public TableDataInfo selectAllocatedList(SysUserBo user, PageQuery pageQuery) { QueryWrapper wrapper = Wrappers.query(); - wrapper.eq("u.del_flag", UserConstants.USER_NORMAL) + wrapper.eq("u.del_flag", SystemConstants.NORMAL) .eq(ObjectUtil.isNotNull(user.getRoleId()), "r.role_id", user.getRoleId()) .like(StringUtils.isNotBlank(user.getUserName()), "u.user_name", user.getUserName()) .eq(StringUtils.isNotBlank(user.getStatus()), "u.status", user.getStatus()) @@ -128,7 +128,7 @@ public class SysUserServiceImpl implements ISysUserService, UserService { public TableDataInfo selectUnallocatedList(SysUserBo user, PageQuery pageQuery) { List userIds = userRoleMapper.selectUserIdsByRoleId(user.getRoleId()); QueryWrapper wrapper = Wrappers.query(); - wrapper.eq("u.del_flag", UserConstants.USER_NORMAL) + wrapper.eq("u.del_flag", SystemConstants.NORMAL) .and(w -> w.ne("r.role_id", user.getRoleId()).or().isNull("r.role_id")) .notIn(CollUtil.isNotEmpty(userIds), "u.user_id", userIds) .like(StringUtils.isNotBlank(user.getUserName()), "u.user_name", user.getUserName()) @@ -187,7 +187,7 @@ public class SysUserServiceImpl implements ISysUserService, UserService { public List selectUserByIds(List userIds, Long deptId) { return baseMapper.selectUserList(new LambdaQueryWrapper() .select(SysUser::getUserId, SysUser::getUserName, SysUser::getNickName) - .eq(SysUser::getStatus, UserConstants.USER_NORMAL) + .eq(SysUser::getStatus, SystemConstants.NORMAL) .eq(ObjectUtil.isNotNull(deptId), SysUser::getDeptId, deptId) .in(CollUtil.isNotEmpty(userIds), SysUser::getUserId, userIds)); } @@ -470,7 +470,7 @@ public class SysUserServiceImpl implements ISysUserService, UserService { if (ArrayUtil.isNotEmpty(roleIds)) { List roleList = new ArrayList<>(List.of(roleIds)); if (!LoginHelper.isSuperAdmin(userId)) { - roleList.remove(UserConstants.SUPER_ADMIN_ID); + roleList.remove(SystemConstants.SUPER_ADMIN_ID); } // 判断是否具有此角色的操作权限 List roles = roleMapper.selectRoleList( @@ -639,7 +639,7 @@ public class SysUserServiceImpl implements ISysUserService, UserService { } List list = baseMapper.selectVoList(new LambdaQueryWrapper() .select(SysUser::getUserId, SysUser::getUserName, SysUser::getNickName, SysUser::getEmail, SysUser::getPhonenumber) - .eq(SysUser::getStatus, UserConstants.USER_NORMAL) + .eq(SysUser::getStatus, SystemConstants.NORMAL) .in(SysUser::getUserId, userIds)); return BeanUtil.copyToList(list, UserDTO.class); } @@ -695,7 +695,7 @@ public class SysUserServiceImpl implements ISysUserService, UserService { } List list = baseMapper.selectVoList(new LambdaQueryWrapper() .select(SysUser::getUserId, SysUser::getUserName, SysUser::getNickName, SysUser::getEmail, SysUser::getPhonenumber) - .eq(SysUser::getStatus, UserConstants.USER_NORMAL) + .eq(SysUser::getStatus, SystemConstants.NORMAL) .in(SysUser::getDeptId, deptIds)); return BeanUtil.copyToList(list, UserDTO.class); } -- Gitee From 90328ae79b8b09865857475d5bfb6229908f3a79 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Mon, 11 Nov 2024 10:26:24 +0800 Subject: [PATCH 250/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E9=80=BB?= =?UTF-8?q?=E8=BE=91=E5=88=A0=E9=99=A4=E7=8A=B6=E6=80=81=E6=94=B9=E4=B8=BA?= =?UTF-8?q?1=20=E9=81=BF=E5=85=8D=E8=AF=AF=E8=A7=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/resources/common-mybatis.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/resources/common-mybatis.yml b/ruoyi-common/ruoyi-common-mybatis/src/main/resources/common-mybatis.yml index f5dc63758..14662e16a 100644 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/resources/common-mybatis.yml +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/resources/common-mybatis.yml @@ -24,8 +24,8 @@ mybatis-plus: # 主键类型 # AUTO 自增 NONE 空 INPUT 用户输入 ASSIGN_ID 雪花 ASSIGN_UUID 唯一 UUID idType: ASSIGN_ID - # 逻辑已删除值(框架表均使用此值 禁止随意修改) - logicDeleteValue: 2 + # 逻辑已删除值(可按需求随意修改) + logicDeleteValue: 1 # 逻辑未删除值 logicNotDeleteValue: 0 insertStrategy: NOT_NULL -- Gitee From 1b8c9fdaa98d2c28445f58d694a10359199526a5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Mon, 11 Nov 2024 10:45:00 +0800 Subject: [PATCH 251/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E4=BB=A3?= =?UTF-8?q?=E7=A0=81=E7=94=9F=E6=88=90=E5=99=A8=E6=95=B0=E5=AD=97=E7=B1=BB?= =?UTF-8?q?=E5=88=AB=E5=88=A4=E6=96=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/dromara/generator/util/GenUtils.java | 23 +++---------------- 1 file changed, 3 insertions(+), 20 deletions(-) diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/util/GenUtils.java b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/util/GenUtils.java index c9357c0c4..676896250 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/util/GenUtils.java +++ b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/util/GenUtils.java @@ -37,8 +37,6 @@ public class GenUtils { public static void initColumnField(GenTableColumn column, GenTable table) { String dataType = getDbType(column.getColumnType()); String columnName = column.getColumnName(); - column.setTableId(table.getTableId()); - column.setCreateBy(table.getCreateBy()); // 设置java字段名 column.setJavaField(StringUtils.toCamelCase(columnName)); // 设置默认类型 @@ -55,20 +53,9 @@ public class GenUtils { column.setHtmlType(GenConstants.HTML_DATETIME); } else if (arraysContains(GenConstants.COLUMNTYPE_NUMBER, dataType)) { column.setHtmlType(GenConstants.HTML_INPUT); - - // 如果是浮点型 统一用BigDecimal - String[] str = StringUtils.split(StringUtils.substringBetween(column.getColumnType(), "(", ")"), StringUtils.SEPARATOR); - if (str != null && str.length == 2 && Integer.parseInt(str[1]) > 0) { - column.setJavaType(GenConstants.TYPE_BIGDECIMAL); - } - // 如果是整形 - else if (str != null && str.length == 1 && Integer.parseInt(str[0]) <= 10) { - column.setJavaType(GenConstants.TYPE_INTEGER); - } - // 长整形 - else { - column.setJavaType(GenConstants.TYPE_LONG); - } + // 数据库的数字字段与java不匹配 且很多数据库的数字字段很模糊 例如oracle只有number没有细分 + // 所以默认数字类型全为Long可在界面上自行编辑想要的类型 有什么特殊需求也可以在这里特殊处理 + column.setJavaType(GenConstants.TYPE_LONG); } // BO对象 默认插入勾选 @@ -79,10 +66,6 @@ public class GenUtils { if (!arraysContains(GenConstants.COLUMNNAME_NOT_EDIT, columnName)) { column.setIsEdit(GenConstants.REQUIRE); } - // BO对象 默认是否必填勾选 - if (!arraysContains(GenConstants.COLUMNNAME_NOT_EDIT, columnName)) { - column.setIsRequired(GenConstants.REQUIRE); - } // VO对象 默认返回勾选 if (!arraysContains(GenConstants.COLUMNNAME_NOT_LIST, columnName)) { column.setIsList(GenConstants.REQUIRE); -- Gitee From 5d61782a6c1441723c3fc44f97b074b6635fd3a9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=A7=8B=E8=BE=9E=E6=9C=AA=E5=AF=92?= <545073804@qq.com> Date: Mon, 11 Nov 2024 03:40:48 +0000 Subject: [PATCH 252/540] =?UTF-8?q?add=20=E6=96=B0=E5=A2=9E=20=E5=AF=B9?= =?UTF-8?q?=E8=B1=A1=E5=B7=A5=E5=85=B7=E7=B1=BB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 秋辞未寒 <545073804@qq.com> --- .../common/core/utils/ObjectUtils.java | 42 +++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/ObjectUtils.java diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/ObjectUtils.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/ObjectUtils.java new file mode 100644 index 000000000..e0de69a98 --- /dev/null +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/ObjectUtils.java @@ -0,0 +1,42 @@ +package org.dromara.common.core.utils; + +import cn.hutool.core.util.ObjectUtil; +import lombok.AccessLevel; +import lombok.NoArgsConstructor; + +import java.util.function.Function; + +/** + * 对象工具类 + * + * @author 秋辞未寒 + */ +@NoArgsConstructor(access = AccessLevel.PRIVATE) +public class ObjectUtils extends ObjectUtil { + + /** + * 如果对象不为空,则获取对象中的某个字段 + *

+ * 例: + * + *

public class User { + *

private String name; + *

// 省略 getter/setter + *

} + * + * + *

User user = userService.queryById(userId); + *

String name = ObjectUtils.notNullGetter(user,User::getName); + * + * @param obj 对象 + * @param func 获取方法 + * @return 对象字段 + */ + public static E notNullGetter(T obj, Function func) { + if (isNotNull(obj) && isNotNull(func)) { + return func.apply(obj); + } + return null; + } + +} -- Gitee From a82ed1e9ddf3763108e37864c400250e8bc75ef6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Mon, 11 Nov 2024 13:30:58 +0800 Subject: [PATCH 253/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E6=9D=83=E9=99=90=E6=9F=A5=E8=AF=A2=E5=A2=9E=E5=8A=A0?= =?UTF-8?q?=E7=BC=93=E5=AD=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/core/constant/CacheNames.java | 10 ++++++ .../common/core/utils/ObjectUtils.java | 32 +++++++++++-------- .../service/impl/SysDataScopeServiceImpl.java | 4 +++ .../service/impl/SysDeptServiceImpl.java | 12 +++++-- .../service/impl/SysRoleServiceImpl.java | 4 +++ 5 files changed, 46 insertions(+), 16 deletions(-) diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/CacheNames.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/CacheNames.java index 28ba17739..bf8efc550 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/CacheNames.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/CacheNames.java @@ -60,6 +60,16 @@ public interface CacheNames { */ String SYS_OSS = "sys_oss#30d"; + /** + * 角色自定义权限 + */ + String SYS_ROLE_CUSTOM = "sys_role_custom#30d"; + + /** + * 部门及以下权限 + */ + String SYS_DEPT_AND_CHILD = "sys_dept_and_child#30d"; + /** * OSS配置 */ diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/ObjectUtils.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/ObjectUtils.java index e0de69a98..c86b55b71 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/ObjectUtils.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/ObjectUtils.java @@ -15,28 +15,32 @@ import java.util.function.Function; public class ObjectUtils extends ObjectUtil { /** - * 如果对象不为空,则获取对象中的某个字段 - *

- * 例: - * - *

public class User { - *

private String name; - *

// 省略 getter/setter - *

} - * - * - *

User user = userService.queryById(userId); - *

String name = ObjectUtils.notNullGetter(user,User::getName); - * + * 如果对象不为空,则获取对象中的某个字段 ObjectUtils.notNullGetter(user, User::getName); + * * @param obj 对象 * @param func 获取方法 * @return 对象字段 */ - public static E notNullGetter(T obj, Function func) { + public static E notNullGetter(T obj, Function func) { if (isNotNull(obj) && isNotNull(func)) { return func.apply(obj); } return null; } + /** + * 如果对象不为空,则获取对象中的某个字段 ObjectUtils.notNullGetter(user, User::getName, ""); + * + * @param obj 对象 + * @param func 获取方法 + * @param defaultValue 默认值 + * @return 对象字段 + */ + public static E notNullGetter(T obj, Function func, E defaultValue) { + if (isNotNull(obj) && isNotNull(func)) { + return func.apply(obj); + } + return defaultValue; + } + } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDataScopeServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDataScopeServiceImpl.java index 0c07f7f67..470646f35 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDataScopeServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDataScopeServiceImpl.java @@ -5,12 +5,14 @@ import cn.hutool.core.convert.Convert; import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import lombok.RequiredArgsConstructor; +import org.dromara.common.core.constant.CacheNames; import org.dromara.common.core.utils.StreamUtils; import org.dromara.system.domain.SysDept; import org.dromara.system.domain.SysRoleDept; import org.dromara.system.mapper.SysDeptMapper; import org.dromara.system.mapper.SysRoleDeptMapper; import org.dromara.system.service.ISysDataScopeService; +import org.springframework.cache.annotation.Cacheable; import org.springframework.stereotype.Service; import java.util.List; @@ -36,6 +38,7 @@ public class SysDataScopeServiceImpl implements ISysDataScopeService { * @param roleId 角色Id * @return 部门Id组 */ + @Cacheable(cacheNames = CacheNames.SYS_ROLE_CUSTOM, key = "#roleId") @Override public String getRoleCustom(Long roleId) { if (ObjectUtil.isNull(roleId)) { @@ -57,6 +60,7 @@ public class SysDataScopeServiceImpl implements ISysDataScopeService { * @param deptId 部门Id * @return 部门Id组 */ + @Cacheable(cacheNames = CacheNames.SYS_DEPT_AND_CHILD, key = "#deptId") @Override public String getDeptAndChild(Long deptId) { if (ObjectUtil.isNull(deptId)) { diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java index 44ff90e9c..3c7bf5e36 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java @@ -27,6 +27,7 @@ import org.dromara.system.mapper.SysUserMapper; import org.dromara.system.service.ISysDeptService; import org.springframework.cache.annotation.CacheEvict; import org.springframework.cache.annotation.Cacheable; +import org.springframework.cache.annotation.Caching; import org.springframework.stereotype.Service; import java.util.ArrayList; @@ -250,6 +251,7 @@ public class SysDeptServiceImpl implements ISysDeptService, DeptService { * @param bo 部门信息 * @return 结果 */ + @CacheEvict(cacheNames = CacheNames.SYS_DEPT_AND_CHILD, allEntries = true) @Override public int insertDept(SysDeptBo bo) { SysDept info = baseMapper.selectById(bo.getParentId()); @@ -268,7 +270,10 @@ public class SysDeptServiceImpl implements ISysDeptService, DeptService { * @param bo 部门信息 * @return 结果 */ - @CacheEvict(cacheNames = CacheNames.SYS_DEPT, key = "#bo.deptId") + @Caching(evict = { + @CacheEvict(cacheNames = CacheNames.SYS_DEPT, key = "#bo.deptId"), + @CacheEvict(cacheNames = CacheNames.SYS_DEPT_AND_CHILD, allEntries = true) + }) @Override public int updateDept(SysDeptBo bo) { SysDept dept = MapstructUtils.convert(bo, SysDept.class); @@ -341,7 +346,10 @@ public class SysDeptServiceImpl implements ISysDeptService, DeptService { * @param deptId 部门ID * @return 结果 */ - @CacheEvict(cacheNames = CacheNames.SYS_DEPT, key = "#deptId") + @Caching(evict = { + @CacheEvict(cacheNames = CacheNames.SYS_DEPT, key = "#deptId"), + @CacheEvict(cacheNames = CacheNames.SYS_DEPT_AND_CHILD, key = "#deptId") + }) @Override public int deleteDeptById(Long deptId) { return baseMapper.deleteById(deptId); diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysRoleServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysRoleServiceImpl.java index 4148b7308..c11b1ac1b 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysRoleServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysRoleServiceImpl.java @@ -12,6 +12,7 @@ import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import lombok.RequiredArgsConstructor; +import org.dromara.common.core.constant.CacheNames; import org.dromara.common.core.constant.SystemConstants; import org.dromara.common.core.constant.TenantConstants; import org.dromara.common.core.domain.model.LoginUser; @@ -33,6 +34,7 @@ import org.dromara.system.mapper.SysRoleMapper; import org.dromara.system.mapper.SysRoleMenuMapper; import org.dromara.system.mapper.SysUserRoleMapper; import org.dromara.system.service.ISysRoleService; +import org.springframework.cache.annotation.CacheEvict; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -328,6 +330,7 @@ public class SysRoleServiceImpl implements ISysRoleService { * @param bo 角色信息 * @return 结果 */ + @CacheEvict(cacheNames = CacheNames.SYS_ROLE_CUSTOM, key = "#bo.roleId") @Override @Transactional(rollbackFor = Exception.class) public int authDataScope(SysRoleBo bo) { @@ -404,6 +407,7 @@ public class SysRoleServiceImpl implements ISysRoleService { * @param roleIds 需要删除的角色ID * @return 结果 */ + @CacheEvict(cacheNames = CacheNames.SYS_ROLE_CUSTOM, allEntries = true) @Override @Transactional(rollbackFor = Exception.class) public int deleteRoleByIds(Long[] roleIds) { -- Gitee From b4678b74ab4de1f42580993985c1dfade485fe41 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Mon, 11 Nov 2024 13:52:16 +0800 Subject: [PATCH 254/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E4=BD=BF?= =?UTF-8?q?=E7=94=A8ObjectUtils=E6=96=B0=E5=A2=9E=E6=96=B9=E6=B3=95?= =?UTF-8?q?=E5=B0=81=E8=A3=85=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/core/utils/ObjectUtils.java | 29 ++++++++++++++++++- .../common/encrypt/core/EncryptorManager.java | 7 ++--- .../handler/InjectionMetaObjectHandler.java | 12 +++----- .../service/impl/SysConfigServiceImpl.java | 8 ++--- .../service/impl/SysDeptServiceImpl.java | 2 +- .../service/impl/SysDictDataServiceImpl.java | 3 +- .../service/impl/SysNoticeServiceImpl.java | 4 +-- .../service/impl/SysOssConfigServiceImpl.java | 3 +- .../service/impl/SysUserServiceImpl.java | 13 ++++----- 9 files changed, 49 insertions(+), 32 deletions(-) diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/ObjectUtils.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/ObjectUtils.java index c86b55b71..82faf2c57 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/ObjectUtils.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/ObjectUtils.java @@ -29,7 +29,7 @@ public class ObjectUtils extends ObjectUtil { } /** - * 如果对象不为空,则获取对象中的某个字段 ObjectUtils.notNullGetter(user, User::getName, ""); + * 如果对象不为空,则获取对象中的某个字段,否则返回默认值 * * @param obj 对象 * @param func 获取方法 @@ -43,4 +43,31 @@ public class ObjectUtils extends ObjectUtil { return defaultValue; } + /** + * 如果值不为空,则返回值 + * + * @param obj 对象 + * @return 对象字段 + */ + public static T notNull(T obj) { + if (isNotNull(obj)) { + return obj; + } + return null; + } + + /** + * 如果值不为空,则返回值,否则返回默认值 + * + * @param obj 对象 + * @param defaultValue 默认值 + * @return 对象字段 + */ + public static T notNull(T obj, T defaultValue) { + if (isNotNull(obj)) { + return obj; + } + return defaultValue; + } + } diff --git a/ruoyi-common/ruoyi-common-encrypt/src/main/java/org/dromara/common/encrypt/core/EncryptorManager.java b/ruoyi-common/ruoyi-common-encrypt/src/main/java/org/dromara/common/encrypt/core/EncryptorManager.java index 2d795e074..b5f194d76 100644 --- a/ruoyi-common/ruoyi-common-encrypt/src/main/java/org/dromara/common/encrypt/core/EncryptorManager.java +++ b/ruoyi-common/ruoyi-common-encrypt/src/main/java/org/dromara/common/encrypt/core/EncryptorManager.java @@ -1,11 +1,11 @@ package org.dromara.common.encrypt.core; import cn.hutool.core.collection.CollUtil; -import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.ReflectUtil; import lombok.NoArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.apache.ibatis.io.Resources; +import org.dromara.common.core.utils.ObjectUtils; import org.dromara.common.core.utils.StringUtils; import org.dromara.common.encrypt.annotation.EncryptField; import org.springframework.context.ConfigurableApplicationContext; @@ -58,10 +58,7 @@ public class EncryptorManager { * 获取类加密字段缓存 */ public Set getFieldCache(Class sourceClazz) { - if (ObjectUtil.isNotNull(fieldCache)) { - return fieldCache.get(sourceClazz); - } - return null; + return ObjectUtils.notNullGetter(fieldCache, f -> f.get(sourceClazz)); } /** diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/InjectionMetaObjectHandler.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/InjectionMetaObjectHandler.java index 7d44d2648..85ef2e97a 100644 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/InjectionMetaObjectHandler.java +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/InjectionMetaObjectHandler.java @@ -7,6 +7,7 @@ import lombok.extern.slf4j.Slf4j; import org.apache.ibatis.reflection.MetaObject; import org.dromara.common.core.domain.model.LoginUser; import org.dromara.common.core.exception.ServiceException; +import org.dromara.common.core.utils.ObjectUtils; import org.dromara.common.mybatis.core.domain.BaseEntity; import org.dromara.common.satoken.utils.LoginHelper; @@ -31,8 +32,7 @@ public class InjectionMetaObjectHandler implements MetaObjectHandler { try { if (ObjectUtil.isNotNull(metaObject) && metaObject.getOriginalObject() instanceof BaseEntity baseEntity) { // 获取当前时间作为创建时间和更新时间,如果创建时间不为空,则使用创建时间,否则使用当前时间 - Date current = ObjectUtil.isNotNull(baseEntity.getCreateTime()) - ? baseEntity.getCreateTime() : new Date(); + Date current = ObjectUtils.notNull(baseEntity.getCreateTime(), new Date()); baseEntity.setCreateTime(current); baseEntity.setUpdateTime(current); @@ -44,8 +44,7 @@ public class InjectionMetaObjectHandler implements MetaObjectHandler { // 填充创建人、更新人和创建部门信息 baseEntity.setCreateBy(userId); baseEntity.setUpdateBy(userId); - baseEntity.setCreateDept(ObjectUtil.isNotNull(baseEntity.getCreateDept()) - ? baseEntity.getCreateDept() : loginUser.getDeptId()); + baseEntity.setCreateDept(ObjectUtils.notNull(baseEntity.getCreateDept(), loginUser.getDeptId())); } } } else { @@ -72,10 +71,7 @@ public class InjectionMetaObjectHandler implements MetaObjectHandler { baseEntity.setUpdateTime(current); // 获取当前登录用户的ID,并填充更新人信息 - Long userId = LoginHelper.getUserId(); - if (ObjectUtil.isNotNull(userId)) { - baseEntity.setUpdateBy(userId); - } + baseEntity.setUpdateBy(ObjectUtils.notNull(LoginHelper.getUserId())); } else { this.strictUpdateFill(metaObject, "updateTime", Date.class, new Date()); } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysConfigServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysConfigServiceImpl.java index e8f64ec9b..d92647c44 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysConfigServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysConfigServiceImpl.java @@ -11,6 +11,7 @@ import org.dromara.common.core.constant.SystemConstants; import org.dromara.common.core.exception.ServiceException; import org.dromara.common.core.service.ConfigService; import org.dromara.common.core.utils.MapstructUtils; +import org.dromara.common.core.utils.ObjectUtils; import org.dromara.common.core.utils.SpringUtils; import org.dromara.common.core.utils.StringUtils; import org.dromara.common.mybatis.core.page.PageQuery; @@ -72,10 +73,7 @@ public class SysConfigServiceImpl implements ISysConfigService, ConfigService { public String selectConfigByKey(String configKey) { SysConfig retConfig = baseMapper.selectOne(new LambdaQueryWrapper() .eq(SysConfig::getConfigKey, configKey)); - if (ObjectUtil.isNotNull(retConfig)) { - return retConfig.getConfigValue(); - } - return StringUtils.EMPTY; + return ObjectUtils.notNullGetter(retConfig, SysConfig::getConfigValue, StringUtils.EMPTY); } /** @@ -197,7 +195,7 @@ public class SysConfigServiceImpl implements ISysConfigService, ConfigService { */ @Override public boolean checkConfigKeyUnique(SysConfigBo config) { - long configId = ObjectUtil.isNull(config.getConfigId()) ? -1L : config.getConfigId(); + long configId = ObjectUtils.notNull(config.getConfigId(), -1L); SysConfig info = baseMapper.selectOne(new LambdaQueryWrapper().eq(SysConfig::getConfigKey, config.getConfigKey())); if (ObjectUtil.isNotNull(info) && info.getConfigId() != configId) { return false; diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java index 3c7bf5e36..a3f0b6ffc 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java @@ -145,7 +145,7 @@ public class SysDeptServiceImpl implements ISysDeptService, DeptService { } SysDeptVo parentDept = baseMapper.selectVoOne(new LambdaQueryWrapper() .select(SysDept::getDeptName).eq(SysDept::getDeptId, dept.getParentId())); - dept.setParentName(ObjectUtil.isNotNull(parentDept) ? parentDept.getDeptName() : null); + dept.setParentName(ObjectUtils.notNullGetter(parentDept, SysDeptVo::getDeptName)); return dept; } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDictDataServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDictDataServiceImpl.java index 1ab0fafd1..e44fdbc29 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDictDataServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDictDataServiceImpl.java @@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import org.dromara.common.core.constant.CacheNames; import org.dromara.common.core.utils.MapstructUtils; +import org.dromara.common.core.utils.ObjectUtils; import org.dromara.common.mybatis.core.page.PageQuery; import org.dromara.system.domain.SysDictData; import org.dromara.common.mybatis.core.page.TableDataInfo; @@ -144,7 +145,7 @@ public class SysDictDataServiceImpl implements ISysDictDataService { */ @Override public boolean checkDictDataUnique(SysDictDataBo dict) { - Long dictCode = ObjectUtil.isNull(dict.getDictCode()) ? -1L : dict.getDictCode(); + Long dictCode = ObjectUtils.notNull(dict.getDictCode(), -1L); SysDictData entity = baseMapper.selectOne(new LambdaQueryWrapper() .eq(SysDictData::getDictType, dict.getDictType()).eq(SysDictData::getDictValue, dict.getDictValue())); if (ObjectUtil.isNotNull(entity) && !dictCode.equals(entity.getDictCode())) { diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysNoticeServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysNoticeServiceImpl.java index db63e61d0..19a3ff59a 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysNoticeServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysNoticeServiceImpl.java @@ -1,10 +1,10 @@ package org.dromara.system.service.impl; -import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import org.dromara.common.core.utils.MapstructUtils; +import org.dromara.common.core.utils.ObjectUtils; import org.dromara.common.core.utils.StringUtils; import org.dromara.common.mybatis.core.page.PageQuery; import org.dromara.common.mybatis.core.page.TableDataInfo; @@ -70,7 +70,7 @@ public class SysNoticeServiceImpl implements ISysNoticeService { lqw.eq(StringUtils.isNotBlank(bo.getNoticeType()), SysNotice::getNoticeType, bo.getNoticeType()); if (StringUtils.isNotBlank(bo.getCreateByName())) { SysUserVo sysUser = userMapper.selectVoOne(new LambdaQueryWrapper().eq(SysUser::getUserName, bo.getCreateByName())); - lqw.eq(SysNotice::getCreateBy, ObjectUtil.isNotNull(sysUser) ? sysUser.getUserId() : null); + lqw.eq(SysNotice::getCreateBy, ObjectUtils.notNullGetter(sysUser, SysUserVo::getUserId)); } lqw.orderByAsc(SysNotice::getNoticeId); return lqw; diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssConfigServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssConfigServiceImpl.java index a1eefcefd..a67b04ea9 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssConfigServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssConfigServiceImpl.java @@ -11,6 +11,7 @@ import lombok.extern.slf4j.Slf4j; import org.dromara.common.core.constant.CacheNames; import org.dromara.common.core.exception.ServiceException; import org.dromara.common.core.utils.MapstructUtils; +import org.dromara.common.core.utils.ObjectUtils; import org.dromara.common.core.utils.StringUtils; import org.dromara.common.json.utils.JsonUtils; import org.dromara.common.mybatis.core.page.PageQuery; @@ -147,7 +148,7 @@ public class SysOssConfigServiceImpl implements ISysOssConfigService { * 判断configKey是否唯一 */ private boolean checkConfigKeyUnique(SysOssConfig sysOssConfig) { - long ossConfigId = ObjectUtil.isNull(sysOssConfig.getOssConfigId()) ? -1L : sysOssConfig.getOssConfigId(); + long ossConfigId = ObjectUtils.notNull(sysOssConfig.getOssConfigId(), -1L); SysOssConfig info = baseMapper.selectOne(new LambdaQueryWrapper() .select(SysOssConfig::getOssConfigId, SysOssConfig::getConfigKey) .eq(SysOssConfig::getConfigKey, sysOssConfig.getConfigKey())); diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java index abb814c19..4b5758763 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java @@ -18,10 +18,7 @@ import org.dromara.common.core.constant.SystemConstants; import org.dromara.common.core.domain.dto.UserDTO; import org.dromara.common.core.exception.ServiceException; import org.dromara.common.core.service.UserService; -import org.dromara.common.core.utils.MapstructUtils; -import org.dromara.common.core.utils.SpringUtils; -import org.dromara.common.core.utils.StreamUtils; -import org.dromara.common.core.utils.StringUtils; +import org.dromara.common.core.utils.*; import org.dromara.common.mybatis.core.page.PageQuery; import org.dromara.common.mybatis.core.page.TableDataInfo; import org.dromara.common.satoken.utils.LoginHelper; @@ -565,7 +562,7 @@ public class SysUserServiceImpl implements ISysUserService, UserService { public String selectUserNameById(Long userId) { SysUser sysUser = baseMapper.selectOne(new LambdaQueryWrapper() .select(SysUser::getUserName).eq(SysUser::getUserId, userId)); - return ObjectUtil.isNull(sysUser) ? null : sysUser.getUserName(); + return ObjectUtils.notNullGetter(sysUser, SysUser::getUserName); } /** @@ -579,7 +576,7 @@ public class SysUserServiceImpl implements ISysUserService, UserService { public String selectNicknameById(Long userId) { SysUser sysUser = baseMapper.selectOne(new LambdaQueryWrapper() .select(SysUser::getNickName).eq(SysUser::getUserId, userId)); - return ObjectUtil.isNull(sysUser) ? null : sysUser.getNickName(); + return ObjectUtils.notNullGetter(sysUser, SysUser::getNickName); } /** @@ -610,7 +607,7 @@ public class SysUserServiceImpl implements ISysUserService, UserService { public String selectPhonenumberById(Long userId) { SysUser sysUser = baseMapper.selectOne(new LambdaQueryWrapper() .select(SysUser::getPhonenumber).eq(SysUser::getUserId, userId)); - return ObjectUtil.isNull(sysUser) ? null : sysUser.getPhonenumber(); + return ObjectUtils.notNullGetter(sysUser, SysUser::getPhonenumber); } /** @@ -623,7 +620,7 @@ public class SysUserServiceImpl implements ISysUserService, UserService { public String selectEmailById(Long userId) { SysUser sysUser = baseMapper.selectOne(new LambdaQueryWrapper() .select(SysUser::getEmail).eq(SysUser::getUserId, userId)); - return ObjectUtil.isNull(sysUser) ? null : sysUser.getEmail(); + return ObjectUtils.notNullGetter(sysUser, SysUser::getEmail); } /** -- Gitee From 63d22b9b3386e397284f62cdca4d98804b03b2ea Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Mon, 11 Nov 2024 13:58:29 +0800 Subject: [PATCH 255/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E8=A7=92?= =?UTF-8?q?=E8=89=B2=E5=88=A0=E9=99=A4=E6=B8=85=E7=90=86=E7=BC=93=E5=AD=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/org/dromara/system/service/impl/SysRoleServiceImpl.java | 1 + 1 file changed, 1 insertion(+) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysRoleServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysRoleServiceImpl.java index c11b1ac1b..cbca57e5d 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysRoleServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysRoleServiceImpl.java @@ -391,6 +391,7 @@ public class SysRoleServiceImpl implements ISysRoleService { * @param roleId 角色ID * @return 结果 */ + @CacheEvict(cacheNames = CacheNames.SYS_ROLE_CUSTOM, key = "#roleId") @Override @Transactional(rollbackFor = Exception.class) public int deleteRoleById(Long roleId) { -- Gitee From 5c66f3b90c6cd9411f78fe28990175c2102fa0b5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Tue, 12 Nov 2024 10:37:51 +0800 Subject: [PATCH 256/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E6=94=AF?= =?UTF-8?q?=E6=8C=81=E8=84=B1=E6=95=8F=E4=BC=A0=E5=A4=9A=E8=A7=92=E8=89=B2?= =?UTF-8?q?=E5=A4=9A=E6=9D=83=E9=99=90=E6=A0=87=E8=AF=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/sensitive/annotation/Sensitive.java | 10 ++++++++-- .../common/sensitive/core/SensitiveService.java | 2 +- .../common/sensitive/handler/SensitiveHandler.java | 4 ++-- .../service/impl/SysSensitiveServiceImpl.java | 14 +++++++------- 4 files changed, 18 insertions(+), 12 deletions(-) diff --git a/ruoyi-common/ruoyi-common-sensitive/src/main/java/org/dromara/common/sensitive/annotation/Sensitive.java b/ruoyi-common/ruoyi-common-sensitive/src/main/java/org/dromara/common/sensitive/annotation/Sensitive.java index 1dfc896ff..6940966b5 100644 --- a/ruoyi-common/ruoyi-common-sensitive/src/main/java/org/dromara/common/sensitive/annotation/Sensitive.java +++ b/ruoyi-common/ruoyi-common-sensitive/src/main/java/org/dromara/common/sensitive/annotation/Sensitive.java @@ -22,7 +22,13 @@ import java.lang.annotation.Target; public @interface Sensitive { SensitiveStrategy strategy(); - String roleKey() default ""; + /** + * 角色标识符 多个角色满足一个即可 + */ + String[] roleKey(); - String perms() default ""; + /** + * 权限标识符 多个权限满足一个即可 + */ + String[] perms(); } diff --git a/ruoyi-common/ruoyi-common-sensitive/src/main/java/org/dromara/common/sensitive/core/SensitiveService.java b/ruoyi-common/ruoyi-common-sensitive/src/main/java/org/dromara/common/sensitive/core/SensitiveService.java index 7b5264b87..03a7f9c75 100644 --- a/ruoyi-common/ruoyi-common-sensitive/src/main/java/org/dromara/common/sensitive/core/SensitiveService.java +++ b/ruoyi-common/ruoyi-common-sensitive/src/main/java/org/dromara/common/sensitive/core/SensitiveService.java @@ -13,6 +13,6 @@ public interface SensitiveService { /** * 是否脱敏 */ - boolean isSensitive(String roleKey, String perms); + boolean isSensitive(String[] roleKey, String[] perms); } diff --git a/ruoyi-common/ruoyi-common-sensitive/src/main/java/org/dromara/common/sensitive/handler/SensitiveHandler.java b/ruoyi-common/ruoyi-common-sensitive/src/main/java/org/dromara/common/sensitive/handler/SensitiveHandler.java index c76c83a98..d454724d7 100644 --- a/ruoyi-common/ruoyi-common-sensitive/src/main/java/org/dromara/common/sensitive/handler/SensitiveHandler.java +++ b/ruoyi-common/ruoyi-common-sensitive/src/main/java/org/dromara/common/sensitive/handler/SensitiveHandler.java @@ -26,8 +26,8 @@ import java.util.Objects; public class SensitiveHandler extends JsonSerializer implements ContextualSerializer { private SensitiveStrategy strategy; - private String roleKey; - private String perms; + private String[] roleKey; + private String[] perms; @Override public void serialize(String value, JsonGenerator gen, SerializerProvider serializers) throws IOException { diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysSensitiveServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysSensitiveServiceImpl.java index 5f4d121b1..8a0d45ef3 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysSensitiveServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysSensitiveServiceImpl.java @@ -1,7 +1,7 @@ package org.dromara.system.service.impl; import cn.dev33.satoken.stp.StpUtil; -import org.dromara.common.core.utils.StringUtils; +import cn.hutool.core.util.ArrayUtil; import org.dromara.common.satoken.utils.LoginHelper; import org.dromara.common.sensitive.core.SensitiveService; import org.dromara.common.tenant.helper.TenantHelper; @@ -22,19 +22,19 @@ public class SysSensitiveServiceImpl implements SensitiveService { * 是否脱敏 */ @Override - public boolean isSensitive(String roleKey, String perms) { + public boolean isSensitive(String[] roleKey, String[] perms) { if (!LoginHelper.isLogin()) { return true; } - boolean roleExist = StringUtils.isNotBlank(roleKey); - boolean permsExist = StringUtils.isNotBlank(perms); + boolean roleExist = ArrayUtil.isNotEmpty(roleKey); + boolean permsExist = ArrayUtil.isNotEmpty(perms); if (roleExist && permsExist) { - if (StpUtil.hasRole(roleKey) && StpUtil.hasPermission(perms)) { + if (StpUtil.hasRoleOr(roleKey) && StpUtil.hasPermissionOr(perms)) { return false; } - } else if (roleExist && StpUtil.hasRole(roleKey)) { + } else if (roleExist && StpUtil.hasRoleOr(roleKey)) { return false; - } else if (permsExist && StpUtil.hasPermission(perms)) { + } else if (permsExist && StpUtil.hasPermissionOr(perms)) { return false; } -- Gitee From 0d5fe5d91e035ec56e3b7fe31ac7a515c939fd56 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Tue, 12 Nov 2024 10:39:41 +0800 Subject: [PATCH 257/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E6=94=AF?= =?UTF-8?q?=E6=8C=81=E8=84=B1=E6=95=8F=E4=BC=A0=E5=A4=9A=E8=A7=92=E8=89=B2?= =?UTF-8?q?=E5=A4=9A=E6=9D=83=E9=99=90=E6=A0=87=E8=AF=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/dromara/common/sensitive/annotation/Sensitive.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ruoyi-common/ruoyi-common-sensitive/src/main/java/org/dromara/common/sensitive/annotation/Sensitive.java b/ruoyi-common/ruoyi-common-sensitive/src/main/java/org/dromara/common/sensitive/annotation/Sensitive.java index 6940966b5..e75dc5bf2 100644 --- a/ruoyi-common/ruoyi-common-sensitive/src/main/java/org/dromara/common/sensitive/annotation/Sensitive.java +++ b/ruoyi-common/ruoyi-common-sensitive/src/main/java/org/dromara/common/sensitive/annotation/Sensitive.java @@ -25,10 +25,10 @@ public @interface Sensitive { /** * 角色标识符 多个角色满足一个即可 */ - String[] roleKey(); + String[] roleKey() default {}; /** * 权限标识符 多个权限满足一个即可 */ - String[] perms(); + String[] perms() default {}; } -- Gitee From a098565c37e6c822076f277ba9674b9f307862a4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Tue, 12 Nov 2024 10:48:28 +0800 Subject: [PATCH 258/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20=E8=AF=AF?= =?UTF-8?q?=E5=88=A0=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/org/dromara/generator/util/GenUtils.java | 1 + 1 file changed, 1 insertion(+) diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/util/GenUtils.java b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/util/GenUtils.java index 676896250..0981997d8 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/util/GenUtils.java +++ b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/util/GenUtils.java @@ -37,6 +37,7 @@ public class GenUtils { public static void initColumnField(GenTableColumn column, GenTable table) { String dataType = getDbType(column.getColumnType()); String columnName = column.getColumnName(); + column.setTableId(table.getTableId()); // 设置java字段名 column.setJavaField(StringUtils.toCamelCase(columnName)); // 设置默认类型 -- Gitee From 4f92c0317ea77262999bd31a11e9556890d4b932 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Tue, 12 Nov 2024 10:50:10 +0800 Subject: [PATCH 259/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E5=88=A0?= =?UTF-8?q?=E9=99=A4=E6=97=A0=E6=84=8F=E4=B9=89=E7=9A=84=E6=96=B9=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/dromara/common/core/utils/ObjectUtils.java | 13 ------------- .../mybatis/handler/InjectionMetaObjectHandler.java | 5 ++++- 2 files changed, 4 insertions(+), 14 deletions(-) diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/ObjectUtils.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/ObjectUtils.java index 82faf2c57..93617b018 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/ObjectUtils.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/ObjectUtils.java @@ -43,19 +43,6 @@ public class ObjectUtils extends ObjectUtil { return defaultValue; } - /** - * 如果值不为空,则返回值 - * - * @param obj 对象 - * @return 对象字段 - */ - public static T notNull(T obj) { - if (isNotNull(obj)) { - return obj; - } - return null; - } - /** * 如果值不为空,则返回值,否则返回默认值 * diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/InjectionMetaObjectHandler.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/InjectionMetaObjectHandler.java index 85ef2e97a..fec25792a 100644 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/InjectionMetaObjectHandler.java +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/InjectionMetaObjectHandler.java @@ -71,7 +71,10 @@ public class InjectionMetaObjectHandler implements MetaObjectHandler { baseEntity.setUpdateTime(current); // 获取当前登录用户的ID,并填充更新人信息 - baseEntity.setUpdateBy(ObjectUtils.notNull(LoginHelper.getUserId())); + Long userId = LoginHelper.getUserId(); + if (ObjectUtil.isNotNull(userId)) { + baseEntity.setUpdateBy(userId); + } } else { this.strictUpdateFill(metaObject, "updateTime", Date.class, new Date()); } -- Gitee From d3b5220dc3c472deb7b4d51b50aa6b5c633dcc6d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Tue, 12 Nov 2024 15:10:04 +0800 Subject: [PATCH 260/540] =?UTF-8?q?update=20=E6=8E=92=E9=99=A4=20websocket?= =?UTF-8?q?=E5=8C=85=E5=86=85=E5=8C=85=E5=90=AB=E7=9A=84tomcat=E4=BE=9D?= =?UTF-8?q?=E8=B5=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ruoyi-common/ruoyi-common-websocket/pom.xml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/ruoyi-common/ruoyi-common-websocket/pom.xml b/ruoyi-common/ruoyi-common-websocket/pom.xml index db86dcbe4..0587cd79a 100644 --- a/ruoyi-common/ruoyi-common-websocket/pom.xml +++ b/ruoyi-common/ruoyi-common-websocket/pom.xml @@ -35,6 +35,12 @@ org.springframework.boot spring-boot-starter-websocket + + + org.springframework.boot + spring-boot-starter-tomcat + + -- Gitee From 1a993a7899c2128e78975754502fba0993a8079e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Tue, 12 Nov 2024 18:17:47 +0800 Subject: [PATCH 261/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20xss?= =?UTF-8?q?=E5=8C=85=E8=A3=85=E5=99=A8=20Parameter=20=E5=A4=84=E7=90=86=20?= =?UTF-8?q?=E5=85=BC=E5=AE=B9=E6=9F=90=E4=BA=9B=E5=AE=B9=E5=99=A8=E4=B8=8D?= =?UTF-8?q?=E5=85=81=E8=AE=B8=E6=94=B9=E5=8F=82=E6=95=B0=E7=9A=84=E6=83=85?= =?UTF-8?q?=E5=86=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../filter/XssHttpServletRequestWrapper.java | 47 +++++++++++-------- 1 file changed, 28 insertions(+), 19 deletions(-) diff --git a/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/filter/XssHttpServletRequestWrapper.java b/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/filter/XssHttpServletRequestWrapper.java index 190f94eab..914e54995 100644 --- a/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/filter/XssHttpServletRequestWrapper.java +++ b/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/filter/XssHttpServletRequestWrapper.java @@ -1,19 +1,22 @@ package org.dromara.common.web.filter; import cn.hutool.core.io.IoUtil; +import cn.hutool.core.map.MapUtil; +import cn.hutool.core.util.ArrayUtil; import cn.hutool.core.util.StrUtil; import cn.hutool.http.HtmlUtil; -import org.dromara.common.core.utils.StringUtils; -import org.springframework.http.HttpHeaders; -import org.springframework.http.MediaType; - import jakarta.servlet.ReadListener; import jakarta.servlet.ServletInputStream; import jakarta.servlet.http.HttpServletRequest; import jakarta.servlet.http.HttpServletRequestWrapper; +import org.dromara.common.core.utils.StringUtils; +import org.springframework.http.HttpHeaders; +import org.springframework.http.MediaType; + import java.io.ByteArrayInputStream; import java.io.IOException; import java.nio.charset.StandardCharsets; +import java.util.HashMap; import java.util.Map; /** @@ -32,16 +35,22 @@ public class XssHttpServletRequestWrapper extends HttpServletRequestWrapper { @Override public String getParameter(String name) { String value = super.getParameter(name); - if (value != null) { - return HtmlUtil.cleanHtmlTag(value).trim(); + if (value == null) { + return null; } - return value; + return HtmlUtil.cleanHtmlTag(value).trim(); } @Override public Map getParameterMap() { Map valueMap = super.getParameterMap(); - for (Map.Entry entry : valueMap.entrySet()) { + if (MapUtil.isEmpty(valueMap)) { + return valueMap; + } + // 避免某些容器不允许改参数的情况 copy一份重新改 + Map map = new HashMap<>(valueMap.size()); + map.putAll(valueMap); + for (Map.Entry entry : map.entrySet()) { String[] values = entry.getValue(); if (values != null) { int length = values.length; @@ -50,25 +59,25 @@ public class XssHttpServletRequestWrapper extends HttpServletRequestWrapper { // 防xss攻击和过滤前后空格 escapseValues[i] = HtmlUtil.cleanHtmlTag(values[i]).trim(); } - valueMap.put(entry.getKey(), escapseValues); + map.put(entry.getKey(), escapseValues); } } - return valueMap; + return map; } @Override public String[] getParameterValues(String name) { String[] values = super.getParameterValues(name); - if (values != null) { - int length = values.length; - String[] escapseValues = new String[length]; - for (int i = 0; i < length; i++) { - // 防xss攻击和过滤前后空格 - escapseValues[i] = HtmlUtil.cleanHtmlTag(values[i]).trim(); - } - return escapseValues; + if (ArrayUtil.isEmpty(values)) { + return values; + } + int length = values.length; + String[] escapseValues = new String[length]; + for (int i = 0; i < length; i++) { + // 防xss攻击和过滤前后空格 + escapseValues[i] = HtmlUtil.cleanHtmlTag(values[i]).trim(); } - return values; + return escapseValues; } @Override -- Gitee From a18e430056205e995da35531c36dc934aff643f1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 14 Nov 2024 15:56:16 +0800 Subject: [PATCH 262/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=E9=83=A8?= =?UTF-8?q?=E7=BD=B2=E9=85=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .run/ruoyi-server.run.xml | 2 +- ruoyi-admin/Dockerfile | 2 +- ruoyi-extend/ruoyi-monitor-admin/Dockerfile | 2 +- ruoyi-extend/ruoyi-snailjob-server/Dockerfile | 2 +- script/docker/database.yml | 2 -- script/docker/docker-compose.yml | 2 -- 6 files changed, 4 insertions(+), 8 deletions(-) diff --git a/.run/ruoyi-server.run.xml b/.run/ruoyi-server.run.xml index 57b0fb821..f59be88cc 100644 --- a/.run/ruoyi-server.run.xml +++ b/.run/ruoyi-server.run.xml @@ -1,5 +1,5 @@ - +

+ * 主要配置内容包括: + * 1. 配置 WebSocket 部署信息 + * 2. 在虚拟线程模式下使用虚拟线程池 + * 3. 禁用不安全的 HTTP 方法,如 CONNECT、TRACE、TRACK + *

+ * + * @param factory Undertow 的 Web 服务器工厂 + */ @Override public void customize(UndertowServletWebServerFactory factory) { factory.addDeploymentInfoCustomizers(deploymentInfo -> { + // 配置 WebSocket 部署信息,设置 WebSocket 使用的缓冲区池 WebSocketDeploymentInfo webSocketDeploymentInfo = new WebSocketDeploymentInfo(); webSocketDeploymentInfo.setBuffers(new DefaultByteBufferPool(true, 1024)); deploymentInfo.addServletContextAttribute("io.undertow.websockets.jsr.WebSocketDeploymentInfo", webSocketDeploymentInfo); - // 使用虚拟线程 + + // 如果启用了虚拟线程,配置 Undertow 使用虚拟线程池 if (SpringUtils.isVirtual()) { + // 创建虚拟线程池,线程池前缀为 "undertow-" VirtualThreadTaskExecutor executor = new VirtualThreadTaskExecutor("undertow-"); + // 设置虚拟线程池为执行器和异步执行器 deploymentInfo.setExecutor(executor); deploymentInfo.setAsyncExecutor(executor); } + + // 配置禁止某些不安全的 HTTP 方法(如 CONNECT、TRACE、TRACK) deploymentInfo.addInitialHandlerChainWrapper(handler -> { // 禁止三个方法 CONNECT/TRACE/TRACK 也是不安全的 避免爬虫骚扰 HttpString[] disallowedHttpMethods = { @@ -37,6 +54,7 @@ public class UndertowConfig implements WebServerFactoryCustomizer Date: Fri, 15 Nov 2024 15:17:36 +0800 Subject: [PATCH 271/540] =?UTF-8?q?docs=20=E8=A1=A5=E5=85=85=E5=AE=A2?= =?UTF-8?q?=E6=88=B7=E7=AB=AF=E5=B7=A5=E5=85=B7=E7=B1=BB=E6=B3=A8=E9=87=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/core/utils/ServletUtils.java | 99 +++++++++++++++---- 1 file changed, 80 insertions(+), 19 deletions(-) diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/ServletUtils.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/ServletUtils.java index a1316eb85..bd1aab808 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/ServletUtils.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/ServletUtils.java @@ -25,7 +25,7 @@ import java.util.HashMap; import java.util.Map; /** - * 客户端工具类 + * 客户端工具类,提供获取请求参数、响应处理、头部信息等常用操作 * * @author ruoyi */ @@ -33,52 +33,73 @@ import java.util.Map; public class ServletUtils extends JakartaServletUtil { /** - * 获取String参数 + * 获取指定名称的 String 类型的请求参数 + * + * @param name 参数名 + * @return 参数值 */ public static String getParameter(String name) { return getRequest().getParameter(name); } /** - * 获取String参数 + * 获取指定名称的 String 类型的请求参数,若参数不存在,则返回默认值 + * + * @param name 参数名 + * @param defaultValue 默认值 + * @return 参数值或默认值 */ public static String getParameter(String name, String defaultValue) { return Convert.toStr(getRequest().getParameter(name), defaultValue); } /** - * 获取Integer参数 + * 获取指定名称的 Integer 类型的请求参数 + * + * @param name 参数名 + * @return 参数值 */ public static Integer getParameterToInt(String name) { return Convert.toInt(getRequest().getParameter(name)); } /** - * 获取Integer参数 + * 获取指定名称的 Integer 类型的请求参数,若参数不存在,则返回默认值 + * + * @param name 参数名 + * @param defaultValue 默认值 + * @return 参数值或默认值 */ public static Integer getParameterToInt(String name, Integer defaultValue) { return Convert.toInt(getRequest().getParameter(name), defaultValue); } /** - * 获取Boolean参数 + * 获取指定名称的 Boolean 类型的请求参数 + * + * @param name 参数名 + * @return 参数值 */ public static Boolean getParameterToBool(String name) { return Convert.toBool(getRequest().getParameter(name)); } /** - * 获取Boolean参数 + * 获取指定名称的 Boolean 类型的请求参数,若参数不存在,则返回默认值 + * + * @param name 参数名 + * @param defaultValue 默认值 + * @return 参数值或默认值 */ public static Boolean getParameterToBool(String name, Boolean defaultValue) { return Convert.toBool(getRequest().getParameter(name), defaultValue); } /** - * 获得所有请求参数 + * 获取所有请求参数(以 Map 的形式返回) * * @param request 请求对象{@link ServletRequest} - * @return Map + * @return 请求参数的 Map,键为参数名,值为参数值数组 */ public static Map getParams(ServletRequest request) { final Map map = request.getParameterMap(); @@ -86,10 +107,10 @@ public class ServletUtils extends JakartaServletUtil { } /** - * 获得所有请求参数 + * 获取所有请求参数(以 Map 的形式返回,值为字符串形式的拼接) * * @param request 请求对象{@link ServletRequest} - * @return Map + * @return 请求参数的 Map,键为参数名,值为拼接后的字符串 */ public static Map getParamMap(ServletRequest request) { Map params = new HashMap<>(); @@ -100,7 +121,9 @@ public class ServletUtils extends JakartaServletUtil { } /** - * 获取request + * 获取当前 HTTP 请求对象 + * + * @return 当前 HTTP 请求对象 */ public static HttpServletRequest getRequest() { try { @@ -111,7 +134,9 @@ public class ServletUtils extends JakartaServletUtil { } /** - * 获取response + * 获取当前 HTTP 响应对象 + * + * @return 当前 HTTP 响应对象 */ public static HttpServletResponse getResponse() { try { @@ -122,12 +147,25 @@ public class ServletUtils extends JakartaServletUtil { } /** - * 获取session + * 获取当前请求的 HttpSession 对象 + *

+ * 如果当前请求已经关联了一个会话(即已经存在有效的 session ID), + * 则返回该会话对象;如果没有关联会话,则会创建一个新的会话对象并返回。 + *

+ * HttpSession 用于存储会话级别的数据,如用户登录信息、购物车内容等, + * 可以在多个请求之间共享会话数据 + * + * @return 当前请求的 HttpSession 对象 */ public static HttpSession getSession() { return getRequest().getSession(); } + /** + * 获取当前请求的请求属性 + * + * @return {@link ServletRequestAttributes} 请求属性对象 + */ public static ServletRequestAttributes getRequestAttributes() { try { RequestAttributes attributes = RequestContextHolder.getRequestAttributes(); @@ -137,6 +175,13 @@ public class ServletUtils extends JakartaServletUtil { } } + /** + * 获取指定请求头的值,如果头部为空则返回空字符串 + * + * @param request 请求对象 + * @param name 头部名称 + * @return 头部值 + */ public static String getHeader(HttpServletRequest request, String name) { String value = request.getHeader(name); if (StringUtils.isEmpty(value)) { @@ -145,6 +190,12 @@ public class ServletUtils extends JakartaServletUtil { return urlDecode(value); } + /** + * 获取所有请求头的 Map,键为头部名称,值为头部值 + * + * @param request 请求对象 + * @return 请求头的 Map + */ public static Map getHeaders(HttpServletRequest request) { Map map = new LinkedCaseInsensitiveMap<>(); Enumeration enumeration = request.getHeaderNames(); @@ -159,7 +210,7 @@ public class ServletUtils extends JakartaServletUtil { } /** - * 将字符串渲染到客户端 + * 将字符串渲染到客户端(以 JSON 格式返回) * * @param response 渲染对象 * @param string 待渲染的字符串 @@ -176,37 +227,47 @@ public class ServletUtils extends JakartaServletUtil { } /** - * 是否是Ajax异步请求 + * 判断当前请求是否为 Ajax 异步请求 * - * @param request + * @param request 请求对象 + * @return 是否为 Ajax 请求 */ public static boolean isAjaxRequest(HttpServletRequest request) { + // 判断 Accept 头部是否包含 application/json String accept = request.getHeader("accept"); if (accept != null && accept.contains(MediaType.APPLICATION_JSON_VALUE)) { return true; } + // 判断 X-Requested-With 头部是否包含 XMLHttpRequest String xRequestedWith = request.getHeader("X-Requested-With"); if (xRequestedWith != null && xRequestedWith.contains("XMLHttpRequest")) { return true; } + // 判断 URI 后缀是否为 .json 或 .xml String uri = request.getRequestURI(); if (StringUtils.equalsAnyIgnoreCase(uri, ".json", ".xml")) { return true; } + // 判断请求参数 __ajax 是否为 json 或 xml String ajax = request.getParameter("__ajax"); return StringUtils.equalsAnyIgnoreCase(ajax, "json", "xml"); } + /** + * 获取客户端 IP 地址 + * + * @return 客户端 IP 地址 + */ public static String getClientIP() { return getClientIP(getRequest()); } /** - * 内容编码 + * 对内容进行 URL 编码 * * @param str 内容 * @return 编码后的内容 @@ -216,7 +277,7 @@ public class ServletUtils extends JakartaServletUtil { } /** - * 内容解码 + * 对内容进行 URL 解码 * * @param str 内容 * @return 解码后的内容 -- Gitee From 6d4519959269418ae939ff1ff530f08f32c32827 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 15 Nov 2024 16:28:33 +0800 Subject: [PATCH 272/540] =?UTF-8?q?update=20=E4=BF=AE=E6=94=B9=20readme=20?= =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E6=88=90=E5=91=98=E9=A1=B9=E7=9B=AE=E8=AF=B4?= =?UTF-8?q?=E6=98=8E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 40636ab94..b37eaf91f 100644 --- a/README.md +++ b/README.md @@ -22,7 +22,9 @@ > 系统演示: [传送门](https://plus-doc.dromara.org/#/common/demo_system) -> 前端项目地址: [plus-ui](https://gitee.com/JavaLionLi/plus-ui) +> 官方前端项目地址: [plus-ui](https://gitee.com/JavaLionLi/plus-ui)
+> 成员前端项目地址: 基于vben [ruoyi-plus-vben](https://gitee.com/dapppp/ruoyi-plus-vben)
+> 成员前端项目地址: 基于vben5 [ruoyi-plus-vben5](https://gitee.com/dapppp/ruoyi-plus-vben5) > 文档地址: [plus-doc](https://plus-doc.dromara.org) -- Gitee From e94fccc784d4e2fbf6f225cac2e4818bd95fb01a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Wed, 20 Nov 2024 11:03:55 +0800 Subject: [PATCH 273/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20Dockerfil?= =?UTF-8?q?e=20=E6=B6=88=E9=99=A4warn=E8=AD=A6=E5=91=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ruoyi-admin/Dockerfile | 2 ++ ruoyi-extend/ruoyi-monitor-admin/Dockerfile | 2 ++ ruoyi-extend/ruoyi-snailjob-server/Dockerfile | 2 ++ 3 files changed, 6 insertions(+) diff --git a/ruoyi-admin/Dockerfile b/ruoyi-admin/Dockerfile index 027384298..e0be8aeef 100644 --- a/ruoyi-admin/Dockerfile +++ b/ruoyi-admin/Dockerfile @@ -17,6 +17,8 @@ EXPOSE ${SERVER_PORT} ADD ./target/ruoyi-admin.jar ./app.jar +SHELL ["/bin/bash", "-c"] + ENTRYPOINT java -Djava.security.egd=file:/dev/./urandom -Dserver.port=${SERVER_PORT} \ # 应用名称 如果想区分集群节点监控 改成不同的名称即可 #-Dskywalking.agent.service_name=ruoyi-server \ diff --git a/ruoyi-extend/ruoyi-monitor-admin/Dockerfile b/ruoyi-extend/ruoyi-monitor-admin/Dockerfile index 8e31e78a8..d55b95627 100644 --- a/ruoyi-extend/ruoyi-monitor-admin/Dockerfile +++ b/ruoyi-extend/ruoyi-monitor-admin/Dockerfile @@ -15,6 +15,8 @@ EXPOSE 9090 ADD ./target/ruoyi-monitor-admin.jar ./app.jar +SHELL ["/bin/bash", "-c"] + ENTRYPOINT java -Djava.security.egd=file:/dev/./urandom \ -XX:+HeapDumpOnOutOfMemoryError -XX:+UseZGC ${JAVA_OPTS} \ -jar app.jar diff --git a/ruoyi-extend/ruoyi-snailjob-server/Dockerfile b/ruoyi-extend/ruoyi-snailjob-server/Dockerfile index 29bde41f7..6f4484d33 100644 --- a/ruoyi-extend/ruoyi-snailjob-server/Dockerfile +++ b/ruoyi-extend/ruoyi-snailjob-server/Dockerfile @@ -16,6 +16,8 @@ EXPOSE 17888 ADD ./target/ruoyi-snailjob-server.jar ./app.jar +SHELL ["/bin/bash", "-c"] + ENTRYPOINT java -Djava.security.egd=file:/dev/./urandom \ -XX:+HeapDumpOnOutOfMemoryError -XX:+UseZGC ${JAVA_OPTS} \ -jar app.jar -- Gitee From bf515042d06ebeb7ca1022d2c05d9a2b56034711 Mon Sep 17 00:00:00 2001 From: dhb52 Date: Wed, 20 Nov 2024 12:44:22 +0800 Subject: [PATCH 274/540] =?UTF-8?q?update=20=E5=8D=87=E7=BA=A7SnailJob?= =?UTF-8?q?=E7=89=88=E6=9C=AC=E5=88=B01.2.0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 9c9abd0ed..1591c0cb0 100644 --- a/pom.xml +++ b/pom.xml @@ -31,7 +31,7 @@ 3.37.0 2.2.7 4.3.1 - 1.1.2 + 1.2.0 1.4.5 0.2.0 1.18.34 -- Gitee From dd2abd95c951f8e037e78c421a37ffb5aa999e57 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 22 Nov 2024 10:43:44 +0800 Subject: [PATCH 275/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20aop=20?= =?UTF-8?q?=E6=97=A0=E6=B3=95=E6=8B=A6=E6=88=AAmapper=E6=8E=A5=E5=8F=A3?= =?UTF-8?q?=E4=B8=8A=E7=9A=84=E6=B3=A8=E8=A7=A3=E5=AF=BC=E8=87=B4=E7=9A=84?= =?UTF-8?q?=E9=97=AE=E9=A2=98=20=E7=B1=BB=E4=B8=8A=E4=BE=9D=E6=97=A7?= =?UTF-8?q?=E4=BD=BF=E7=94=A8=E6=89=AB=E6=8F=8F=E5=A4=84=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mybatis/config/MybatisPlusConfig.java | 2 +- .../handler/PlusDataPermissionHandler.java | 87 ++++++++++++++++++- .../PlusDataPermissionInterceptor.java | 10 ++- 3 files changed, 91 insertions(+), 8 deletions(-) diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/config/MybatisPlusConfig.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/config/MybatisPlusConfig.java index f7d14ee97..1e8d619fa 100644 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/config/MybatisPlusConfig.java +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/config/MybatisPlusConfig.java @@ -52,7 +52,7 @@ public class MybatisPlusConfig { * 数据权限拦截器 */ public PlusDataPermissionInterceptor dataPermissionInterceptor() { - return new PlusDataPermissionInterceptor(); + return new PlusDataPermissionInterceptor(SpringUtils.getProperty("mybatis-plus.mapperPackage")); } /** diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/PlusDataPermissionHandler.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/PlusDataPermissionHandler.java index 236538af4..4ae67429f 100644 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/PlusDataPermissionHandler.java +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/PlusDataPermissionHandler.java @@ -1,5 +1,6 @@ package org.dromara.common.mybatis.handler; +import cn.hutool.core.annotation.AnnotationUtil; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.util.ObjectUtil; import lombok.extern.slf4j.Slf4j; @@ -8,6 +9,7 @@ import net.sf.jsqlparser.expression.Expression; import net.sf.jsqlparser.expression.operators.conditional.AndExpression; import net.sf.jsqlparser.expression.operators.relational.ParenthesedExpressionList; import net.sf.jsqlparser.parser.CCJSqlParserUtil; +import org.apache.ibatis.io.Resources; import org.dromara.common.core.domain.dto.RoleDTO; import org.dromara.common.core.domain.model.LoginUser; import org.dromara.common.core.exception.ServiceException; @@ -19,17 +21,26 @@ import org.dromara.common.mybatis.annotation.DataPermission; import org.dromara.common.mybatis.enums.DataScopeType; import org.dromara.common.mybatis.helper.DataPermissionHelper; import org.dromara.common.satoken.utils.LoginHelper; +import org.springframework.context.ConfigurableApplicationContext; import org.springframework.context.expression.BeanFactoryResolver; +import org.springframework.core.io.Resource; +import org.springframework.core.io.support.PathMatchingResourcePatternResolver; +import org.springframework.core.io.support.ResourcePatternResolver; +import org.springframework.core.type.ClassMetadata; +import org.springframework.core.type.classreading.CachingMetadataReaderFactory; import org.springframework.expression.BeanResolver; import org.springframework.expression.ExpressionParser; import org.springframework.expression.ParserContext; import org.springframework.expression.common.TemplateParserContext; import org.springframework.expression.spel.standard.SpelExpressionParser; import org.springframework.expression.spel.support.StandardEvaluationContext; +import org.springframework.util.ClassUtils; import java.util.Arrays; import java.util.HashSet; +import java.util.Map; import java.util.Set; +import java.util.concurrent.ConcurrentHashMap; import java.util.function.Function; /** @@ -41,6 +52,11 @@ import java.util.function.Function; @Slf4j public class PlusDataPermissionHandler { + /** + * 类名称与注解的映射关系缓存(由于aop无法拦截mybatis接口类上的注解 只能通过启动预扫描的方式进行) + */ + private final Map dataPermissionCacheMap = new ConcurrentHashMap<>(); + /** * spel 解析器 */ @@ -51,6 +67,15 @@ public class PlusDataPermissionHandler { */ private final BeanResolver beanResolver = new BeanFactoryResolver(SpringUtils.getBeanFactory()); + /** + * 构造方法,扫描指定包下的 Mapper 类并初始化缓存 + * + * @param mapperPackage Mapper 类所在的包路径 + */ + public PlusDataPermissionHandler(String mapperPackage) { + scanMapperClasses(mapperPackage); + } + /** * 获取数据过滤条件的 SQL 片段 * @@ -62,7 +87,7 @@ public class PlusDataPermissionHandler { public Expression getSqlSegment(Expression where, String mappedStatementId, boolean isSelect) { try { // 获取数据权限配置 - DataPermission dataPermission = DataPermissionHelper.getPermission(); + DataPermission dataPermission = getDataPermission(mappedStatementId); // 获取当前登录用户信息 LoginUser currentUser = DataPermissionHelper.getVariable("user"); if (ObjectUtil.isNull(currentUser)) { @@ -169,12 +194,68 @@ public class PlusDataPermissionHandler { return ""; } + /** + * 扫描指定包下的 Mapper 类,并查找其中带有特定注解的方法或类 + * + * @param mapperPackage Mapper 类所在的包路径 + */ + private void scanMapperClasses(String mapperPackage) { + // 创建资源解析器和元数据读取工厂 + PathMatchingResourcePatternResolver resolver = new PathMatchingResourcePatternResolver(); + CachingMetadataReaderFactory factory = new CachingMetadataReaderFactory(); + // 将 Mapper 包路径按分隔符拆分为数组 + String[] packagePatternArray = StringUtils.splitPreserveAllTokens(mapperPackage, ConfigurableApplicationContext.CONFIG_LOCATION_DELIMITERS); + String classpath = ResourcePatternResolver.CLASSPATH_ALL_URL_PREFIX; + try { + for (String packagePattern : packagePatternArray) { + // 将包路径转换为资源路径 + String path = ClassUtils.convertClassNameToResourcePath(packagePattern); + // 获取指定路径下的所有 .class 文件资源 + Resource[] resources = resolver.getResources(classpath + path + "/*.class"); + for (Resource resource : resources) { + // 获取资源的类元数据 + ClassMetadata classMetadata = factory.getMetadataReader(resource).getClassMetadata(); + // 获取资源对应的类对象 + Class clazz = Resources.classForName(classMetadata.getClassName()); + // 查找类中的特定注解 + if (AnnotationUtil.hasAnnotation(clazz, DataPermission.class)) { + DataPermission dataPermission = AnnotationUtil.getAnnotation(clazz, DataPermission.class); + dataPermissionCacheMap.put(clazz.getName(), dataPermission); + } + } + } + } catch (Exception e) { + log.error("初始化数据安全缓存时出错:{}", e.getMessage()); + } + } + + /** + * 根据映射语句 ID 或类名获取对应的 DataPermission 注解对象 + * + * @param mapperId 映射语句 ID + * @return DataPermission 注解对象,如果不存在则返回 null + */ + public DataPermission getDataPermission(String mapperId) { + // 检查上下文中是否包含映射语句 ID 对应的 DataPermission 注解对象 + if (DataPermissionHelper.getPermission() != null) { + return DataPermissionHelper.getPermission(); + } + // 如果缓存中不包含映射语句 ID 对应的 DataPermission 注解对象,则尝试使用类名作为键查找 + String clazzName = mapperId.substring(0, mapperId.lastIndexOf(".")); + if (dataPermissionCacheMap.containsKey(clazzName)) { + return dataPermissionCacheMap.get(clazzName); + } + return null; + } + /** * 检查给定的映射语句 ID 是否有效,即是否能够找到对应的 DataPermission 注解对象 * + * @param mapperId 映射语句 ID * @return 如果找到对应的 DataPermission 注解对象,则返回 false;否则返回 true */ - public boolean invalid() { - return DataPermissionHelper.getPermission() == null; + public boolean invalid(String mapperId) { + return getDataPermission(mapperId) == null; } + } diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/interceptor/PlusDataPermissionInterceptor.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/interceptor/PlusDataPermissionInterceptor.java index 587a99886..85a4d0abc 100644 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/interceptor/PlusDataPermissionInterceptor.java +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/interceptor/PlusDataPermissionInterceptor.java @@ -39,9 +39,11 @@ public class PlusDataPermissionInterceptor extends BaseMultiTableInnerIntercepto /** * 构造函数,初始化 PlusDataPermissionHandler 实例 + * + * @param mapperPackage 扫描的映射器包 */ - public PlusDataPermissionInterceptor() { - this.dataPermissionHandler = new PlusDataPermissionHandler(); + public PlusDataPermissionInterceptor(String mapperPackage) { + this.dataPermissionHandler = new PlusDataPermissionHandler(mapperPackage); } /** @@ -62,7 +64,7 @@ public class PlusDataPermissionInterceptor extends BaseMultiTableInnerIntercepto return; } // 检查是否缺少有效的数据权限注解 - if (dataPermissionHandler.invalid()) { + if (dataPermissionHandler.invalid(ms.getId())) { return; } // 解析 sql 分配对应方法 @@ -90,7 +92,7 @@ public class PlusDataPermissionInterceptor extends BaseMultiTableInnerIntercepto return; } // 检查是否缺少有效的数据权限注解 - if (dataPermissionHandler.invalid()) { + if (dataPermissionHandler.invalid(ms.getId())) { return; } PluginUtils.MPBoundSql mpBs = mpSh.mPBoundSql(); -- Gitee From 847b158283a495d6d42980e5b2475bd20dfb9002 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 22 Nov 2024 15:59:40 +0800 Subject: [PATCH 276/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E4=B8=AA?= =?UTF-8?q?=E4=BA=BA=E4=B8=AD=E5=BF=83=E5=BC=BA=E9=80=80=E8=AE=BE=E5=A4=87?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3=E8=B7=AF=E5=BE=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../system/controller/monitor/SysUserOnlineController.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/monitor/SysUserOnlineController.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/monitor/SysUserOnlineController.java index 9b08c2d2c..95439a266 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/monitor/SysUserOnlineController.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/monitor/SysUserOnlineController.java @@ -113,7 +113,7 @@ public class SysUserOnlineController extends BaseController { * @param tokenId token值 */ @Log(title = "在线设备", businessType = BusinessType.FORCE) - @PostMapping("/{tokenId}") + @DeleteMapping("/myself/{tokenId}") public R remove(@PathVariable("tokenId") String tokenId) { try { // 获取指定账号 id 的 token 集合 -- Gitee From ef919b9f3d069f775625332b152f9792243d34b2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 22 Nov 2024 17:01:05 +0800 Subject: [PATCH 277/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E4=BB=A3?= =?UTF-8?q?=E7=A0=81=E7=94=9F=E6=88=90=E5=99=A8=E7=B1=BB=E5=9E=8B=E8=8E=B7?= =?UTF-8?q?=E5=8F=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/org/dromara/generator/service/GenTableServiceImpl.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java index 3f9ef1920..cf4e81377 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java +++ b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java @@ -310,7 +310,7 @@ public class GenTableServiceImpl implements IGenTableService { tableColumn.setIsPk(String.valueOf(column.isPrimaryKey())); tableColumn.setColumnName(column.getName()); tableColumn.setColumnComment(column.getComment()); - tableColumn.setColumnType(column.getTypeName().toLowerCase()); + tableColumn.setColumnType(column.getOriginType().toLowerCase()); tableColumn.setSort(column.getPosition()); tableColumn.setIsRequired(column.isNullable() == 0 ? "1" : "0"); tableColumn.setIsIncrement(column.isAutoIncrement() == -1 ? "0" : "1"); -- Gitee From cd08f66c597dea41fa5254f24e1d5d9dd1079aea Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 22 Nov 2024 17:18:27 +0800 Subject: [PATCH 278/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E4=BB=A3?= =?UTF-8?q?=E7=A0=81=E7=94=9F=E6=88=90=E5=99=A8=20pg=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E5=BA=93=20=E4=B8=BB=E9=94=AE=E8=8E=B7=E5=8F=96=E4=B8=8D?= =?UTF-8?q?=E7=B2=BE=E7=A1=AE=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/dromara/generator/service/GenTableServiceImpl.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java index cf4e81377..d3f4dded3 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java +++ b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java @@ -303,7 +303,11 @@ public class GenTableServiceImpl implements IGenTableService { @DS("#dataName") @Override public List selectDbTableColumnsByName(String tableName, String dataName) { - LinkedHashMap columns = ServiceProxy.metadata().columns(tableName); + Table table = ServiceProxy.metadata().table(tableName); + if (ObjectUtil.isNull(table)) { + return new ArrayList<>(); + } + LinkedHashMap columns = table.getColumns(); List tableColumns = new ArrayList<>(); columns.forEach((columnName, column) -> { GenTableColumn tableColumn = new GenTableColumn(); -- Gitee From d194b39e57e3d6caf5d76749ab1618e524f479a9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 22 Nov 2024 17:54:16 +0800 Subject: [PATCH 279/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20monitor=20?= =?UTF-8?q?=E8=AE=BE=E7=BD=AE=20context-path=20=E5=AF=BC=E8=87=B4=E9=80=80?= =?UTF-8?q?=E5=87=BA=E9=87=8D=E6=96=B0=E7=99=BB=E5=BD=95404=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ruoyi-admin/src/main/resources/application-dev.yml | 2 +- ruoyi-admin/src/main/resources/application-prod.yml | 2 +- .../ruoyi-monitor-admin/src/main/resources/application.yml | 3 +-- .../src/main/resources/application-dev.yml | 2 +- .../src/main/resources/application-prod.yml | 2 +- script/docker/nginx/conf/nginx.conf | 2 +- 6 files changed, 6 insertions(+), 7 deletions(-) diff --git a/ruoyi-admin/src/main/resources/application-dev.yml b/ruoyi-admin/src/main/resources/application-dev.yml index 4410ab59f..283cdad44 100644 --- a/ruoyi-admin/src/main/resources/application-dev.yml +++ b/ruoyi-admin/src/main/resources/application-dev.yml @@ -2,7 +2,7 @@ spring.boot.admin.client: # 增加客户端开关 enabled: true - url: http://localhost:9090/admin + url: http://localhost:9090 instance: service-host-type: IP metadata: diff --git a/ruoyi-admin/src/main/resources/application-prod.yml b/ruoyi-admin/src/main/resources/application-prod.yml index d26111828..2002e9eee 100644 --- a/ruoyi-admin/src/main/resources/application-prod.yml +++ b/ruoyi-admin/src/main/resources/application-prod.yml @@ -5,7 +5,7 @@ spring.servlet.multipart.location: /ruoyi/server/temp spring.boot.admin.client: # 增加客户端开关 enabled: true - url: http://localhost:9090/admin + url: http://localhost:9090 instance: service-host-type: IP metadata: diff --git a/ruoyi-extend/ruoyi-monitor-admin/src/main/resources/application.yml b/ruoyi-extend/ruoyi-monitor-admin/src/main/resources/application.yml index 622c93d3c..b9720cba8 100644 --- a/ruoyi-extend/ruoyi-monitor-admin/src/main/resources/application.yml +++ b/ruoyi-extend/ruoyi-monitor-admin/src/main/resources/application.yml @@ -19,7 +19,6 @@ spring: admin: ui: title: RuoYi-Vue-Plus服务监控中心 - context-path: /admin --- # Actuator 监控端点的配置项 management: @@ -38,7 +37,7 @@ spring.boot.admin.client: # 增加客户端开关 enabled: true # 设置 Spring Boot Admin Server 地址 - url: http://localhost:9090/admin + url: http://localhost:9090 instance: service-host-type: IP metadata: diff --git a/ruoyi-extend/ruoyi-snailjob-server/src/main/resources/application-dev.yml b/ruoyi-extend/ruoyi-snailjob-server/src/main/resources/application-dev.yml index 3ed797cf6..579f376db 100644 --- a/ruoyi-extend/ruoyi-snailjob-server/src/main/resources/application-dev.yml +++ b/ruoyi-extend/ruoyi-snailjob-server/src/main/resources/application-dev.yml @@ -40,7 +40,7 @@ snail-job: spring.boot.admin.client: # 增加客户端开关 enabled: true - url: http://localhost:9090/admin + url: http://localhost:9090 instance: service-host-type: IP metadata: diff --git a/ruoyi-extend/ruoyi-snailjob-server/src/main/resources/application-prod.yml b/ruoyi-extend/ruoyi-snailjob-server/src/main/resources/application-prod.yml index 1d830dbe7..dffe05777 100644 --- a/ruoyi-extend/ruoyi-snailjob-server/src/main/resources/application-prod.yml +++ b/ruoyi-extend/ruoyi-snailjob-server/src/main/resources/application-prod.yml @@ -40,7 +40,7 @@ snail-job: spring.boot.admin.client: # 增加客户端开关 enabled: true - url: http://localhost:9090/admin + url: http://localhost:9090 instance: service-host-type: IP metadata: diff --git a/script/docker/nginx/conf/nginx.conf b/script/docker/nginx/conf/nginx.conf index 3c79d97f6..3df4a722c 100644 --- a/script/docker/nginx/conf/nginx.conf +++ b/script/docker/nginx/conf/nginx.conf @@ -96,7 +96,7 @@ http { proxy_set_header X-Real-IP $remote_addr; proxy_set_header REMOTE-HOST $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; - proxy_pass http://monitor-admin/admin/; + proxy_pass http://monitor-admin/; } location /snail-job/ { -- Gitee From 4af46a604589220b7d1c37dd5ebcdb05081f4132 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=A7=8B=E8=BE=9E=E6=9C=AA=E5=AF=92?= <545073804@qq.com> Date: Sat, 23 Nov 2024 06:57:11 +0000 Subject: [PATCH 280/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E6=A0=A1?= =?UTF-8?q?=E9=AA=8C=E7=A7=9F=E6=88=B7=E5=88=A4=E7=A9=BA=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 秋辞未寒 <545073804@qq.com> --- .../main/java/org/dromara/web/service/SysLoginService.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/ruoyi-admin/src/main/java/org/dromara/web/service/SysLoginService.java b/ruoyi-admin/src/main/java/org/dromara/web/service/SysLoginService.java index 0fdd521a0..2eae90ab7 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/service/SysLoginService.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/service/SysLoginService.java @@ -223,12 +223,12 @@ public class SysLoginService { if (!TenantHelper.isEnable()) { return; } - if (TenantConstants.DEFAULT_TENANT_ID.equals(tenantId)) { - return; - } if (StringUtils.isBlank(tenantId)) { throw new TenantException("tenant.number.not.blank"); } + if (TenantConstants.DEFAULT_TENANT_ID.equals(tenantId)) { + return; + } SysTenantVo tenant = tenantService.queryByTenantId(tenantId); if (ObjectUtil.isNull(tenant)) { log.info("登录租户:{} 不存在.", tenantId); -- Gitee From 71a59d3e5f033f7002e6199e08ed50a91862ffa5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Sat, 23 Nov 2024 07:59:40 +0000 Subject: [PATCH 281/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20=E8=BF=87?= =?UTF-8?q?=E6=BB=A4=E5=99=A8=E6=AD=A3=E5=88=99=E9=94=99=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 疯狂的狮子Li <15040126243@163.com> --- .../aizuda/snailjob/server/starter/filter/SecurityConfig.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ruoyi-extend/ruoyi-snailjob-server/src/main/java/com/aizuda/snailjob/server/starter/filter/SecurityConfig.java b/ruoyi-extend/ruoyi-snailjob-server/src/main/java/com/aizuda/snailjob/server/starter/filter/SecurityConfig.java index 3cae8f58e..5196c77ef 100644 --- a/ruoyi-extend/ruoyi-snailjob-server/src/main/java/com/aizuda/snailjob/server/starter/filter/SecurityConfig.java +++ b/ruoyi-extend/ruoyi-snailjob-server/src/main/java/com/aizuda/snailjob/server/starter/filter/SecurityConfig.java @@ -22,7 +22,7 @@ public class SecurityConfig { public FilterRegistrationBean actuatorFilterRegistrationBean() { FilterRegistrationBean registrationBean = new FilterRegistrationBean<>(); registrationBean.setFilter(new ActuatorAuthFilter(username, password)); - registrationBean.addUrlPatterns("/actuator", "/actuator/**"); + registrationBean.addUrlPatterns("/actuator", "/actuator/*"); return registrationBean; } -- Gitee From 7f359257945699f071488027e727dc392a2aeba9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Mon, 25 Nov 2024 10:33:32 +0800 Subject: [PATCH 282/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0=E9=BB=98=E8=AE=A4=E6=95=B0=E6=8D=AE=E6=9D=83=E9=99=90?= =?UTF-8?q?=20"=E9=83=A8=E9=97=A8=E5=8F=8A=E4=BB=A5=E4=B8=8B=E6=88=96?= =?UTF-8?q?=E6=9C=AC=E4=BA=BA=E6=95=B0=E6=8D=AE=E6=9D=83=E9=99=90"=20?= =?UTF-8?q?=E9=80=89=E9=A1=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/dromara/common/mybatis/enums/DataScopeType.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/enums/DataScopeType.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/enums/DataScopeType.java index 981bd421b..02a5f481f 100644 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/enums/DataScopeType.java +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/enums/DataScopeType.java @@ -48,7 +48,12 @@ public enum DataScopeType { /** * 仅本人数据权限 */ - SELF("5", " #{#userName} = #{#user.userId} ", " 1 = 0 "); + SELF("5", " #{#userName} = #{#user.userId} ", " 1 = 0 "), + + /** + * 部门及以下或本人数据权限 + */ + DEPT_AND_CHILD_OR_SELF("6", " #{#deptName} IN ( #{@sdss.getDeptAndChild( #user.deptId )} ) OR #{#userName} = #{#user.userId} ", " 1 = 0 "); private final String code; -- Gitee From e78684886d9c3d8e955b7e647bd1ed5ce7d10b34 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Mon, 25 Nov 2024 11:58:39 +0800 Subject: [PATCH 283/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E6=9D=83=E9=99=90=E5=A4=84=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../handler/PlusDataPermissionHandler.java | 21 +++++++++---------- 1 file changed, 10 insertions(+), 11 deletions(-) diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/PlusDataPermissionHandler.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/PlusDataPermissionHandler.java index 4ae67429f..c529c5332 100644 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/PlusDataPermissionHandler.java +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/PlusDataPermissionHandler.java @@ -36,10 +36,7 @@ import org.springframework.expression.spel.standard.SpelExpressionParser; import org.springframework.expression.spel.support.StandardEvaluationContext; import org.springframework.util.ClassUtils; -import java.util.Arrays; -import java.util.HashSet; -import java.util.Map; -import java.util.Set; +import java.util.*; import java.util.concurrent.ConcurrentHashMap; import java.util.function.Function; @@ -149,14 +146,20 @@ public class PlusDataPermissionHandler { return ""; } boolean isSuccess = false; + List keys = new ArrayList<>(); for (DataColumn dataColumn : dataPermission.value()) { if (dataColumn.key().length != dataColumn.value().length) { throw new ServiceException("角色数据范围异常 => key与value长度不匹配"); } + // 设置注解变量 key 为表达式变量 value 为变量值 + for (int i = 0; i < dataColumn.key().length; i++) { + context.setVariable(dataColumn.key()[i], dataColumn.value()[i]); + } + keys.addAll(Arrays.stream(dataColumn.key()).map(key -> "#" + key).toList()); + } + for (DataColumn dataColumn : dataPermission.value()) { // 不包含 key 变量 则不处理 - if (!StringUtils.containsAny(type.getSqlTemplate(), - Arrays.stream(dataColumn.key()).map(key -> "#" + key).toArray(String[]::new) - )) { + if (!StringUtils.containsAny(type.getSqlTemplate(), keys.toArray(String[]::new))) { continue; } // 包含权限标识符 这直接跳过 @@ -168,10 +171,6 @@ public class PlusDataPermissionHandler { isSuccess = true; continue; } - // 设置注解变量 key 为表达式变量 value 为变量值 - for (int i = 0; i < dataColumn.key().length; i++) { - context.setVariable(dataColumn.key()[i], dataColumn.value()[i]); - } // 忽略数据权限 防止spel表达式内有其他sql查询导致死循环调用 String sql = DataPermissionHelper.ignore(() -> -- Gitee From f66e66c8728b4142e5dcb4bb9dd3bb0490e9209c Mon Sep 17 00:00:00 2001 From: hfdy2019 <5463852+hfdy2019@user.noreply.gitee.com> Date: Mon, 25 Nov 2024 23:06:31 +0800 Subject: [PATCH 284/540] =?UTF-8?q?=E9=80=82=E9=85=8D=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: hfdy2019 <5463852+hfdy2019@user.noreply.gitee.com> --- .../web/controller/AuthController.java | 3 +- .../dromara/web/service/SysLoginService.java | 2 +- .../web/service/SysRegisterService.java | 3 +- .../web/service/impl/EmailAuthStrategy.java | 2 - .../src/main/resources/application-dev.yml | 12 ++--- .../src/main/resources/application-prod.yml | 10 ++-- .../src/main/resources/application.yml | 2 +- .../core/utils/reflect/ReflectUtils.java | 46 +------------------ .../common/encrypt/core/EncryptContext.java | 2 +- .../mybatis/config/MybatisFlexConfig.java | 12 ++++- .../handler/PlusDataPermissionHandler.java | 18 -------- .../mybatis/helper/DataPermissionHelper.java | 1 + ...ot.autoconfigure.AutoConfiguration.imports | 1 - .../dromara/system/domain/SysDictData.java | 1 - .../dromara/system/mapper/SysMenuMapper.java | 16 +++---- .../system/mapper/SysTenantPackageMapper.java | 5 +- .../service/impl/SysNoticeServiceImpl.java | 3 +- .../service/impl/SysRoleServiceImpl.java | 4 +- .../impl/SysTenantPackageServiceImpl.java | 4 +- .../service/impl/SysTenantServiceImpl.java | 8 ++-- .../service/impl/TestLeaveServiceImpl.java | 2 +- .../impl/WfDefinitionConfigServiceImpl.java | 2 +- 22 files changed, 54 insertions(+), 105 deletions(-) diff --git a/ruoyi-admin/src/main/java/org/dromara/web/controller/AuthController.java b/ruoyi-admin/src/main/java/org/dromara/web/controller/AuthController.java index 7a128f242..0cb52b708 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/controller/AuthController.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/controller/AuthController.java @@ -13,7 +13,6 @@ import me.zhyd.oauth.model.AuthUser; import me.zhyd.oauth.request.AuthRequest; import me.zhyd.oauth.utils.AuthStateUtils; import org.dromara.common.core.constant.SystemConstants; -import org.dromara.common.core.constant.TenantConstants; import org.dromara.common.core.domain.R; import org.dromara.common.core.domain.model.LoginBody; import org.dromara.common.core.domain.model.RegisterBody; @@ -206,7 +205,7 @@ public class AuthController { } // 查询出来的租户需要状态为启用的 SysTenantBo sysTenantBo = new SysTenantBo(); - sysTenantBo.setStatus(TenantConstants.NORMAL); + sysTenantBo.setStatus(SystemConstants.NORMAL); List tenantList = tenantService.queryList(sysTenantBo); List voList = MapstructUtils.convert(tenantList, TenantListVo.class); try { diff --git a/ruoyi-admin/src/main/java/org/dromara/web/service/SysLoginService.java b/ruoyi-admin/src/main/java/org/dromara/web/service/SysLoginService.java index eae68f37b..d4e0ed3da 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/service/SysLoginService.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/service/SysLoginService.java @@ -178,7 +178,7 @@ public class SysLoginService { sysUser.setLoginDate(DateUtils.getNowDate()); sysUser.setUpdateBy(userId); //todo - // DataPermissionHelper.ignore(() -> userMapper.updateById(sysUser)); + // DataPermissionHelper.ignore(() -> userMapper.updateById(sysUser)); userMapper.update(sysUser); } diff --git a/ruoyi-admin/src/main/java/org/dromara/web/service/SysRegisterService.java b/ruoyi-admin/src/main/java/org/dromara/web/service/SysRegisterService.java index aa2245d39..d496bcdfc 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/service/SysRegisterService.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/service/SysRegisterService.java @@ -62,8 +62,7 @@ public class SysRegisterService { boolean exist = TenantHelper.dynamic(tenantId, () -> userMapper.selectCountByQuery(QueryWrapper.create() .from(SYS_USER) - .and(SYS_USER.USER_NAME.eq(sysUser.getUserName())) - .and(SYS_USER.USER_ID.ne(sysUser.getUserId()))) != 0); + .and(SYS_USER.USER_NAME.eq(sysUser.getUserName()))) != 0); if (exist) { throw new UserException("user.register.save.error", username); } diff --git a/ruoyi-admin/src/main/java/org/dromara/web/service/impl/EmailAuthStrategy.java b/ruoyi-admin/src/main/java/org/dromara/web/service/impl/EmailAuthStrategy.java index d0b47802c..07d3194bc 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/service/impl/EmailAuthStrategy.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/service/impl/EmailAuthStrategy.java @@ -21,8 +21,6 @@ import org.dromara.common.json.utils.JsonUtils; import org.dromara.common.redis.utils.RedisUtils; import org.dromara.common.satoken.utils.LoginHelper; import org.dromara.common.tenant.helper.TenantHelper; -import org.dromara.system.domain.SysClient; -import org.dromara.system.domain.SysUser; import org.dromara.system.domain.vo.SysClientVo; import org.dromara.system.domain.vo.SysUserVo; import org.dromara.system.mapper.SysUserMapper; diff --git a/ruoyi-admin/src/main/resources/application-dev.yml b/ruoyi-admin/src/main/resources/application-dev.yml index 3115b0a66..aa53d1c1b 100644 --- a/ruoyi-admin/src/main/resources/application-dev.yml +++ b/ruoyi-admin/src/main/resources/application-dev.yml @@ -61,13 +61,13 @@ mybatis-flex: # jdbc 所有参数配置参考 https://lionli.blog.csdn.net/article/details/122018562 # rewriteBatchedStatements=true 批处理优化 大幅提升批量插入更新删除性能(对数据库有性能损耗 使用批量操作应考虑性能问题) url: jdbc:mysql://localhost:3306/ry-vue?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&autoReconnect=true&rewriteBatchedStatements=true&allowPublicKeyRetrieval=true - username: root - password: 905303 + username: + password: # 从库数据源 - slave: - url: jdbc:postgresql://localhost:5432/ry-vue?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&autoReconnect=true&rewriteBatchedStatements=true&allowPublicKeyRetrieval=true - username: postgres - password: postgres +# slave: +# url: jdbc:postgresql://localhost:5432/ry-vue?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&autoReconnect=true&rewriteBatchedStatements=true&allowPublicKeyRetrieval=true +# username: postgres +# password: postgres # oracle: # type: ${spring.datasource.type} # driverClassName: oracle.jdbc.OracleDriver diff --git a/ruoyi-admin/src/main/resources/application-prod.yml b/ruoyi-admin/src/main/resources/application-prod.yml index 3a9769313..bb4312155 100644 --- a/ruoyi-admin/src/main/resources/application-prod.yml +++ b/ruoyi-admin/src/main/resources/application-prod.yml @@ -63,14 +63,14 @@ mybatis-flex: master: # jdbc 所有参数配置参考 https://lionli.blog.csdn.net/article/details/122018562 # rewriteBatchedStatements=true 批处理优化 大幅提升批量插入更新删除性能(对数据库有性能损耗 使用批量操作应考虑性能问题) - url: jdbc:mysql://localhost:3306/ry-vue?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&autoReconnect=true&rewriteBatchedStatements=true&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true - username: root - password: 123456 + url: jdbc:mysql://localhost:3306/ry-vue?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&autoReconnect=true&rewriteBatchedStatements=true&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true + username: + password: # 从库数据源 slave: url: jdbc:mysql://localhost:3306/ry-vue?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&autoReconnect=true&rewriteBatchedStatements=true&allowPublicKeyRetrieval=true - username: root - password: 123456 + username: + password: # oracle: # type: ${spring.datasource.type} # driverClassName: oracle.jdbc.OracleDriver diff --git a/ruoyi-admin/src/main/resources/application.yml b/ruoyi-admin/src/main/resources/application.yml index da7dfaa5b..b44cd6fb7 100644 --- a/ruoyi-admin/src/main/resources/application.yml +++ b/ruoyi-admin/src/main/resources/application.yml @@ -287,7 +287,7 @@ websocket: --- #flowable配置 flowable: # 开关 用于启动/停用工作流 - enabled: true + enabled: false process.enabled: ${flowable.enabled} eventregistry.enabled: ${flowable.enabled} async-executor-activate: false #关闭定时任务JOB diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/reflect/ReflectUtils.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/reflect/ReflectUtils.java index aa94f9601..367e8c98c 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/reflect/ReflectUtils.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/reflect/ReflectUtils.java @@ -1,16 +1,11 @@ package org.dromara.common.core.utils.reflect; import cn.hutool.core.util.ReflectUtil; +import org.dromara.common.core.utils.StringUtils; import lombok.AccessLevel; import lombok.NoArgsConstructor; -import lombok.extern.slf4j.Slf4j; -import org.dromara.common.core.utils.StringUtils; -import org.springframework.core.GenericTypeResolver; -import org.springframework.util.ClassUtils; import java.lang.reflect.Method; -import java.lang.reflect.ParameterizedType; -import java.lang.reflect.Type; /** * 反射工具类. 提供调用getter/setter方法, 访问私有变量, 调用私有方法, 获取泛型类型Class, 被AOP过的真实类等工具函数. @@ -18,7 +13,6 @@ import java.lang.reflect.Type; * @author Lion Li */ @SuppressWarnings("rawtypes") -@Slf4j @NoArgsConstructor(access = AccessLevel.PRIVATE) public class ReflectUtils extends ReflectUtil { @@ -59,42 +53,4 @@ public class ReflectUtils extends ReflectUtil { } } - - public static Class getSuperClassGenericType(final Class clazz, final int index) { - Type genType = clazz.getGenericSuperclass(); - if (!(genType instanceof ParameterizedType)) { - log.warn(String.format("Warn: %s's superclass not ParameterizedType", clazz.getSimpleName())); - return Object.class; - } - Type[] params = ((ParameterizedType) genType).getActualTypeArguments(); - if (index >= params.length || index < 0) { - log.warn(String.format("Warn: Index: %s, Size of %s's Parameterized Type: %s .", index, - clazz.getSimpleName(), params.length)); - return Object.class; - } - if (!(params[index] instanceof Class)) { - log.warn(String.format("Warn: %s not set the actual class on superclass generic parameter", - clazz.getSimpleName())); - return Object.class; - } - return (Class) params[index]; - } - - /** - *

- * 反射对象获取泛型 - *

- * - * @param clazz 对象 - * @param genericIfc 所属泛型父类 - * @param index 泛型所在位置 - * @return Class - */ - public static Class getSuperClassGenericType(final Class clazz, final Class genericIfc, final int index) { - Class[] typeArguments = GenericTypeResolver.resolveTypeArguments(ClassUtils.getUserClass(clazz), genericIfc); - return null == typeArguments ? null : typeArguments[index]; - } - - - } diff --git a/ruoyi-common/ruoyi-common-encrypt/src/main/java/org/dromara/common/encrypt/core/EncryptContext.java b/ruoyi-common/ruoyi-common-encrypt/src/main/java/org/dromara/common/encrypt/core/EncryptContext.java index 35b6b6c62..2f02eaf3a 100644 --- a/ruoyi-common/ruoyi-common-encrypt/src/main/java/org/dromara/common/encrypt/core/EncryptContext.java +++ b/ruoyi-common/ruoyi-common-encrypt/src/main/java/org/dromara/common/encrypt/core/EncryptContext.java @@ -1,8 +1,8 @@ package org.dromara.common.encrypt.core; -import lombok.Data; import org.dromara.common.encrypt.enumd.AlgorithmType; import org.dromara.common.encrypt.enumd.EncodeType; +import lombok.Data; /** * 加密上下文 用于encryptor传递必要的参数。 diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/config/MybatisFlexConfig.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/config/MybatisFlexConfig.java index 0ce73634d..66dfe83c2 100644 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/config/MybatisFlexConfig.java +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/config/MybatisFlexConfig.java @@ -15,10 +15,12 @@ import org.dromara.common.core.domain.model.LoginUser; import org.dromara.common.core.exception.ServiceException; import org.dromara.common.core.factory.YmlPropertySourceFactory; import org.dromara.common.mybatis.core.domain.BaseEntity; +import org.dromara.common.mybatis.handler.PlusDataPermissionHandler; import org.dromara.common.satoken.utils.LoginHelper; import org.mybatis.spring.annotation.MapperScan; import org.springframework.beans.factory.annotation.Value; import org.springframework.boot.autoconfigure.AutoConfiguration; +import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.PropertySource; import org.springframework.transaction.annotation.EnableTransactionManagement; @@ -121,6 +123,14 @@ public class MybatisFlexConfig implements MyBatisFlexCustomizer { } return loginUser; } - + + /** + * 异常处理器 + */ + @Bean + public PlusDataPermissionHandler plusDataPermissionHandler() { + return new PlusDataPermissionHandler(); + } + } diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/PlusDataPermissionHandler.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/PlusDataPermissionHandler.java index 0d4a2fc2f..baeab6ff2 100644 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/PlusDataPermissionHandler.java +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/PlusDataPermissionHandler.java @@ -1,6 +1,5 @@ package org.dromara.common.mybatis.handler; -import cn.hutool.core.annotation.AnnotationUtil; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.util.ArrayUtil; import cn.hutool.core.util.ObjectUtil; @@ -17,20 +16,13 @@ import org.dromara.common.mybatis.annotation.DataPermission; import org.dromara.common.mybatis.enums.DataScopeType; import org.dromara.common.mybatis.helper.DataPermissionHelper; import org.dromara.common.satoken.utils.LoginHelper; -import org.springframework.context.ConfigurableApplicationContext; import org.springframework.context.expression.BeanFactoryResolver; -import org.springframework.core.io.Resource; -import org.springframework.core.io.support.PathMatchingResourcePatternResolver; -import org.springframework.core.io.support.ResourcePatternResolver; -import org.springframework.core.type.ClassMetadata; -import org.springframework.core.type.classreading.CachingMetadataReaderFactory; import org.springframework.expression.BeanResolver; import org.springframework.expression.ExpressionParser; import org.springframework.expression.ParserContext; import org.springframework.expression.common.TemplateParserContext; import org.springframework.expression.spel.standard.SpelExpressionParser; import org.springframework.expression.spel.support.StandardEvaluationContext; -import org.springframework.stereotype.Component; import java.util.Arrays; import java.util.HashSet; @@ -46,7 +38,6 @@ import java.util.function.Function; * @see 参考 */ @Slf4j -@Component public class PlusDataPermissionHandler { /** @@ -64,15 +55,6 @@ public class PlusDataPermissionHandler { */ private final BeanResolver beanResolver = new BeanFactoryResolver(SpringUtils.getBeanFactory()); - /** - * 构造方法,扫描指定包下的 Mapper 类并初始化缓存 - * - * @param mapperPackage Mapper 类所在的包路径 - */ - public PlusDataPermissionHandler(String mapperPackage) { - scanMapperClasses(mapperPackage); - } - /** * 处理数据权限 * diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/helper/DataPermissionHelper.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/helper/DataPermissionHelper.java index dae46792b..f444139d2 100644 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/helper/DataPermissionHelper.java +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/helper/DataPermissionHelper.java @@ -9,6 +9,7 @@ import org.dromara.common.mybatis.annotation.DataPermission; import java.util.HashMap; import java.util.Map; +import java.util.Stack; import java.util.function.Supplier; /** diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports b/ruoyi-common/ruoyi-common-mybatis/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports index c262e7013..f854d373b 100644 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports @@ -1,2 +1 @@ org.dromara.common.mybatis.config.MybatisFlexConfig -org.dromara.common.mybatis.handler.PlusDataPermissionHandler diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysDictData.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysDictData.java index 57112a602..00e642a2a 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysDictData.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysDictData.java @@ -2,7 +2,6 @@ package org.dromara.system.domain; import com.mybatisflex.annotation.Id; import com.mybatisflex.annotation.Table; -import org.dromara.common.core.constant.UserConstants; import org.dromara.common.tenant.core.TenantEntity; import lombok.Data; import lombok.EqualsAndHashCode; diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysMenuMapper.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysMenuMapper.java index 3eddfce63..97271d7a7 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysMenuMapper.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysMenuMapper.java @@ -31,8 +31,8 @@ public interface SysMenuMapper extends BaseMapperPlus { return selectListByQueryAs(QueryWrapper.create().select(distinct(SYS_MENU.PERMS)) .from(SYS_MENU) .leftJoin(SYS_ROLE_MENU).on(SYS_MENU.MENU_ID.eq(SYS_ROLE_MENU.MENU_ID)) - .leftJoin(SYS_ROLE).on(SYS_ROLE_MENU.ROLE_ID.eq(SYS_ROLE.ROLE_ID)).and(SYS_ROLE.STATUS.eq(UserConstants.ROLE_NORMAL)) - .where(SYS_MENU.STATUS.eq(UserConstants.MENU_NORMAL)) + .leftJoin(SYS_ROLE).on(SYS_ROLE_MENU.ROLE_ID.eq(SYS_ROLE.ROLE_ID)).and(SYS_ROLE.STATUS.eq(SystemConstants.NORMAL)) + .where(SYS_MENU.STATUS.eq(SystemConstants.NORMAL)) .and(exists(select(SYS_USER_ROLE.ROLE_ID) .from(SYS_USER_ROLE) .where(SYS_USER_ROLE.ROLE_ID.eq(SYS_ROLE.ROLE_ID)) @@ -50,7 +50,7 @@ public interface SysMenuMapper extends BaseMapperPlus { return selectListByQueryAs(QueryWrapper.create().select(distinct(SYS_MENU.PERMS)) .from(SYS_MENU) .leftJoin(SYS_ROLE_MENU).on(SYS_MENU.MENU_ID.eq(SYS_ROLE_MENU.MENU_ID)) - .where(SYS_MENU.STATUS.eq(UserConstants.MENU_NORMAL)) + .where(SYS_MENU.STATUS.eq(SystemConstants.NORMAL)) .and(SYS_ROLE_MENU.ROLE_ID.eq(roleId)), String.class); } @@ -62,7 +62,7 @@ public interface SysMenuMapper extends BaseMapperPlus { default List selectMenuTreeAll() { return selectListByQuery(QueryWrapper.create().from(SYS_MENU) .where(SYS_MENU.MENU_TYPE.in(SystemConstants.TYPE_DIR, SystemConstants.TYPE_MENU)) - .and(SYS_MENU.STATUS.eq(SystemConstants.MENU_NORMAL)) + .and(SYS_MENU.STATUS.eq(SystemConstants.NORMAL)) .orderBy(SYS_MENU.PARENT_ID, true) .orderBy(SYS_MENU.ORDER_NUM, true) ); @@ -80,9 +80,9 @@ public interface SysMenuMapper extends BaseMapperPlus { SYS_MENU.IS_FRAME, SYS_MENU.IS_CACHE, SYS_MENU.MENU_TYPE, SYS_MENU.ICON, SYS_MENU.ORDER_NUM, SYS_MENU.CREATE_TIME)) .from(SYS_MENU) .leftJoin(SYS_ROLE_MENU).on(SYS_MENU.MENU_ID.eq(SYS_ROLE_MENU.MENU_ID)) - .leftJoin(SYS_ROLE).on(SYS_ROLE_MENU.ROLE_ID.eq(SYS_ROLE.ROLE_ID)).and(SYS_ROLE.STATUS.eq(UserConstants.ROLE_NORMAL)) - .where(SYS_MENU.MENU_TYPE.in(UserConstants.TYPE_DIR, UserConstants.TYPE_MENU)) - .and(SYS_MENU.STATUS.eq(UserConstants.MENU_NORMAL)) + .leftJoin(SYS_ROLE).on(SYS_ROLE_MENU.ROLE_ID.eq(SYS_ROLE.ROLE_ID)).and(SYS_ROLE.STATUS.eq(SystemConstants.NORMAL)) + .where(SYS_MENU.MENU_TYPE.in(SystemConstants.TYPE_DIR, SystemConstants.TYPE_MENU)) + .and(SYS_MENU.STATUS.eq(SystemConstants.NORMAL)) .and(exists(select(distinct(SYS_USER_ROLE.ROLE_ID)) .from(SYS_USER_ROLE) .where(SYS_USER_ROLE.ROLE_ID.eq(SYS_ROLE.ROLE_ID)) @@ -103,7 +103,7 @@ public interface SysMenuMapper extends BaseMapperPlus { return selectListByQueryAs(QueryWrapper.create().select(distinct(SYS_MENU.MENU_ID)) .from(SYS_MENU) .leftJoin(SYS_ROLE_MENU).on(SYS_MENU.MENU_ID.eq(SYS_ROLE_MENU.MENU_ID)) - .where(SYS_MENU.STATUS.eq(UserConstants.MENU_NORMAL)) + .where(SYS_MENU.STATUS.eq(SystemConstants.NORMAL)) .and(SYS_ROLE_MENU.ROLE_ID.eq(roleId)) .and(SYS_MENU.MENU_ID.notIn( select(distinct(SYS_MENU.PARENT_ID)) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysTenantPackageMapper.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysTenantPackageMapper.java index c9c6bcd5c..4731f96e3 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysTenantPackageMapper.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysTenantPackageMapper.java @@ -2,6 +2,7 @@ package org.dromara.system.mapper; import cn.hutool.core.convert.Convert; import com.mybatisflex.core.query.QueryWrapper; +import org.dromara.common.core.constant.SystemConstants; import org.dromara.common.core.constant.TenantConstants; import org.dromara.common.core.exception.ServiceException; import org.dromara.common.core.utils.StringUtils; @@ -40,14 +41,14 @@ public interface SysTenantPackageMapper extends BaseMapperPlus .from(SYS_TENANT_PACKAGE.as("stp")) .leftJoin(SYS_TENANT.as("st")) .on(SYS_TENANT.PACKAGE_ID.eq(SYS_TENANT_PACKAGE.PACKAGE_ID)) - .and(SYS_TENANT.STATUS.eq(TenantConstants.NORMAL)) + .and(SYS_TENANT.STATUS.eq(SystemConstants.NORMAL)) .where(SYS_TENANT.TENANT_ID.eq(tenantId)), SysTenantPackageVo.class)) // 获取不到记录,则判断为查不到tenantId对应的租户,及绑定租户套餐(DEFAULT_TENANT未绑定租户套餐,上面已做处理),即判定为租户已禁用/不存在 .orElseThrow(() -> new ServiceException(String.format("租户ID %s 对应租户已禁用或不存在", tenantId))); // 通过该方式,避免编写if-else // 三目表达式中判定租户套餐的status字段是否为禁用,如果是,则返回null,由Optional orElseThrow来抛出异常 - Optional.ofNullable(TenantConstants.DISABLE.equals(sysTenantPackageVo.getStatus()) ? null : sysTenantPackageVo.getStatus()) + Optional.ofNullable(SystemConstants.DISABLE.equals(sysTenantPackageVo.getStatus()) ? null : sysTenantPackageVo.getStatus()) .orElseThrow(() -> new ServiceException(String.format("租户套餐 %s 已禁用", sysTenantPackageVo.getPackageName()))); return StringUtils.splitTo(sysTenantPackageVo.getMenuIds(), Convert::toLong); } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysNoticeServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysNoticeServiceImpl.java index c5eb724a6..b9578d73e 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysNoticeServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysNoticeServiceImpl.java @@ -22,8 +22,9 @@ import org.springframework.stereotype.Service; import java.util.Arrays; import java.util.List; -import static org.dromara.common.core.constant.UserConstants.SYS_USER; import static org.dromara.system.domain.table.SysNoticeTableDef.SYS_NOTICE; +import static org.dromara.system.domain.table.SysUserTableDef.SYS_USER; + /** * 公告 服务层实现 diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysRoleServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysRoleServiceImpl.java index 1e5327a36..5298108d3 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysRoleServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysRoleServiceImpl.java @@ -11,6 +11,7 @@ import com.mybatisflex.core.query.QueryWrapper; import com.mybatisflex.core.row.Db; import com.mybatisflex.core.update.UpdateChain; import lombok.RequiredArgsConstructor; +import org.apache.commons.compress.utils.Lists; import org.dromara.common.core.constant.CacheNames; import org.dromara.common.core.constant.SystemConstants; import org.dromara.common.core.constant.TenantConstants; @@ -473,9 +474,10 @@ public class SysRoleServiceImpl implements ISysRoleService { */ @Override public int deleteAuthUsers(Long roleId, Long[] userIds) { + List ids = List.of(userIds); int rows = userRoleMapper.deleteByQuery(QueryWrapper.create().from(SYS_USER_ROLE) .where(SYS_USER_ROLE.ROLE_ID.eq(roleId)) - .and(SYS_USER_ROLE.USER_ID.in(Arrays.asList(userIds))) + .and(SYS_USER_ROLE.USER_ID.in(ids)) ); if (rows > 0) { cleanOnlineUser(ids); diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantPackageServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantPackageServiceImpl.java index 5bf92410e..f4492420e 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantPackageServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantPackageServiceImpl.java @@ -61,7 +61,7 @@ public class SysTenantPackageServiceImpl implements ISysTenantPackageService { @Override public List selectList() { return baseMapper.selectListByQueryAs(QueryWrapper.create().from(SYS_TENANT_PACKAGE) - .where(SYS_TENANT_PACKAGE.STATUS.eq(TenantConstants.NORMAL)), SysTenantPackageVo.class); + .where(SYS_TENANT_PACKAGE.STATUS.eq(SystemConstants.NORMAL)), SysTenantPackageVo.class); } /** @@ -139,7 +139,7 @@ public class SysTenantPackageServiceImpl implements ISysTenantPackageService { */ @Override public int updatePackageStatus(SysTenantPackageBo bo) { - if (TenantConstants.DISABLE.equals(bo.getStatus())) { + if (SystemConstants.DISABLE.equals(bo.getStatus())) { // 如果修改状态为禁用,则需判定该租户套餐是否绑定租户,如果绑定,则不可禁用 checkTenantPackageIdsInUse(List.of(bo.getPackageId())); } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java index 090e0ac98..45ec2fa3e 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java @@ -1,6 +1,8 @@ package org.dromara.system.service.impl; import cn.dev33.satoken.secure.BCrypt; +import cn.dev33.satoken.stp.StpUtil; +import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.convert.Convert; import cn.hutool.core.util.ObjectUtil; @@ -251,7 +253,7 @@ public class SysTenantServiceImpl implements ISysTenantService { role.setRoleName(TenantConstants.TENANT_ADMIN_ROLE_NAME); role.setRoleKey(TenantConstants.TENANT_ADMIN_ROLE_KEY); role.setRoleSort(1); - role.setStatus(TenantConstants.NORMAL); + role.setStatus(SystemConstants.NORMAL); roleMapper.insert(role, true); Long roleId = role.getRoleId(); @@ -289,7 +291,7 @@ public class SysTenantServiceImpl implements ISysTenantService { @CacheEvict(cacheNames = CacheNames.SYS_TENANT, key = "#bo.tenantId") @Override public int updateTenantStatus(SysTenantBo bo) { - if (TenantConstants.DISABLE.equals(bo.getStatus())) { + if (SystemConstants.DISABLE.equals(bo.getStatus())) { // 如果修改状态为禁用,则需判定该租户是否存在登录用户,如果存在,则不可禁用 Optional anyOnlineUser = getAnyOnlineUserOpt(bo); if (anyOnlineUser.isPresent()) { @@ -452,7 +454,7 @@ public class SysTenantServiceImpl implements ISysTenantService { // 获取所有租户编号 List tenantIds = baseMapper.selectListByQueryAs( QueryWrapper.create().select(SysTenant::getTenantId).from(SysTenant.class) - .eq(SysTenant::getStatus, TenantConstants.NORMAL), String.class); + .eq(SysTenant::getStatus, SystemConstants.NORMAL), String.class); List saveTypeList = new ArrayList<>(); List saveDataList = new ArrayList<>(); Set set = new HashSet<>(); diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/TestLeaveServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/TestLeaveServiceImpl.java index ca125fb30..166fc495b 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/TestLeaveServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/TestLeaveServiceImpl.java @@ -153,7 +153,7 @@ public class TestLeaveServiceImpl implements ITestLeaveService { log.info("当前任务执行了{}", processTaskEvent.toString()); TestLeave testLeave = baseMapper.selectOneById(Long.valueOf(processTaskEvent.getBusinessKey())); testLeave.setStatus(BusinessStatusEnum.WAITING.getStatus()); - baseMapper.updateById(testLeave); + baseMapper.update(testLeave); } } } diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WfDefinitionConfigServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WfDefinitionConfigServiceImpl.java index 9ac03f9c7..1b365643c 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WfDefinitionConfigServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WfDefinitionConfigServiceImpl.java @@ -95,7 +95,7 @@ public class WfDefinitionConfigServiceImpl implements IWfDefinitionConfigService WfDefinitionConfig add = MapstructUtils.convert(bo, WfDefinitionConfig.class); baseMapper.deleteByQuery(QueryWrapper.create().eq(WfDefinitionConfig::getTableName, bo.getTableName())); add.setTableName(add.getTableName().toLowerCase()); - boolean flag = baseMapper.insertOrUpdate(add); + boolean flag = baseMapper.insertOrUpdate(add) > 0; if (flag) { bo.setId(add.getId()); } -- Gitee From 1aff46bc1c17f5481d08a80573f6a5089a5e4abf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Tue, 26 Nov 2024 15:38:22 +0800 Subject: [PATCH 285/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20=E5=AD=97?= =?UTF-8?q?=E6=AE=B5=E9=95=BF=E5=BA=A6=E8=B6=85=E5=87=BA=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E5=BA=93=E9=99=90=E5=88=B6=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/org/dromara/common/log/aspect/LogAspect.java | 8 ++++---- script/sql/oracle/oracle_ry_vue_5.X.sql | 6 +++--- script/sql/postgres/postgres_ry_vue_5.X.sql | 8 ++++---- script/sql/ry_vue_5.X.sql | 8 ++++---- script/sql/sqlserver/sqlserver_ry_vue_5.X.sql | 6 +++--- 5 files changed, 18 insertions(+), 18 deletions(-) diff --git a/ruoyi-common/ruoyi-common-log/src/main/java/org/dromara/common/log/aspect/LogAspect.java b/ruoyi-common/ruoyi-common-log/src/main/java/org/dromara/common/log/aspect/LogAspect.java index df9e0677d..71b3790b7 100644 --- a/ruoyi-common/ruoyi-common-log/src/main/java/org/dromara/common/log/aspect/LogAspect.java +++ b/ruoyi-common/ruoyi-common-log/src/main/java/org/dromara/common/log/aspect/LogAspect.java @@ -100,7 +100,7 @@ public class LogAspect { if (e != null) { operLog.setStatus(BusinessStatus.FAIL.ordinal()); - operLog.setErrorMsg(StringUtils.substring(e.getMessage(), 0, 5000)); + operLog.setErrorMsg(StringUtils.substring(e.getMessage(), 0, 3800)); } // 设置方法名称 String className = joinPoint.getTarget().getClass().getName(); @@ -146,7 +146,7 @@ public class LogAspect { } // 是否需要保存response,参数和值 if (log.isSaveResponseData() && ObjectUtil.isNotNull(jsonResult)) { - operLog.setJsonResult(StringUtils.substring(JsonUtils.toJsonString(jsonResult), 0, 5000)); + operLog.setJsonResult(StringUtils.substring(JsonUtils.toJsonString(jsonResult), 0, 3800)); } } @@ -161,11 +161,11 @@ public class LogAspect { String requestMethod = operLog.getRequestMethod(); if (MapUtil.isEmpty(paramsMap) && StringUtils.equalsAny(requestMethod, HttpMethod.PUT.name(), HttpMethod.POST.name(), HttpMethod.DELETE.name())) { String params = argsArrayToString(joinPoint.getArgs(), excludeParamNames); - operLog.setOperParam(StringUtils.substring(params, 0, 5000)); + operLog.setOperParam(StringUtils.substring(params, 0, 3800)); } else { MapUtil.removeAny(paramsMap, EXCLUDE_PROPERTIES); MapUtil.removeAny(paramsMap, excludeParamNames); - operLog.setOperParam(StringUtils.substring(JsonUtils.toJsonString(paramsMap), 0, 5000)); + operLog.setOperParam(StringUtils.substring(JsonUtils.toJsonString(paramsMap), 0, 3800)); } } diff --git a/script/sql/oracle/oracle_ry_vue_5.X.sql b/script/sql/oracle/oracle_ry_vue_5.X.sql index 08f609e5c..6171b8d31 100644 --- a/script/sql/oracle/oracle_ry_vue_5.X.sql +++ b/script/sql/oracle/oracle_ry_vue_5.X.sql @@ -738,10 +738,10 @@ create table sys_oper_log ( oper_url varchar2(255) default '', oper_ip varchar2(128) default '', oper_location varchar2(255) default '', - oper_param varchar2(5500) default '', - json_result varchar2(5500) default '', + oper_param varchar2(4000) default '', + json_result varchar2(4000) default '', status number(1) default 0, - error_msg varchar2(5500) default '', + error_msg varchar2(4000) default '', oper_time date, cost_time number(20) default 0 ); diff --git a/script/sql/postgres/postgres_ry_vue_5.X.sql b/script/sql/postgres/postgres_ry_vue_5.X.sql index 414350f80..af97ac7dc 100644 --- a/script/sql/postgres/postgres_ry_vue_5.X.sql +++ b/script/sql/postgres/postgres_ry_vue_5.X.sql @@ -741,10 +741,10 @@ create table if not exists sys_oper_log oper_url varchar(255) default ''::varchar, oper_ip varchar(128) default ''::varchar, oper_location varchar(255) default ''::varchar, - oper_param varchar(5000) default ''::varchar, - json_result varchar(5000) default ''::varchar, + oper_param varchar(4000) default ''::varchar, + json_result varchar(4000) default ''::varchar, status int4 default 0, - error_msg varchar(5000) default ''::varchar, + error_msg varchar(4000) default ''::varchar, oper_time timestamp, cost_time int8 default 0, constraint sys_oper_log_pk primary key (oper_id) @@ -1209,7 +1209,7 @@ comment on column sys_oss_config.remark is '备注'; insert into sys_oss_config values (1, '000000', 'minio', 'ruoyi', 'ruoyi123', 'ruoyi', '', '127.0.0.1:9000', '','N', '', '1', '0', '', 103, 1, now(), 1, now(), null); insert into sys_oss_config values (2, '000000', 'qiniu', 'XXXXXXXXXXXXXXX', 'XXXXXXXXXXXXXXX', 'ruoyi', '', 's3-cn-north-1.qiniucs.com', '','N', '', '1', '1', '', 103, 1, now(), 1, now(), null); insert into sys_oss_config values (3, '000000', 'aliyun', 'XXXXXXXXXXXXXXX', 'XXXXXXXXXXXXXXX', 'ruoyi', '', 'oss-cn-beijing.aliyuncs.com', '','N', '', '1', '1', '', 103, 1, now(), 1, now(), null); -insert into sys_oss_config values (4, '000000', 'qcloud', 'XXXXXXXXXXXXXXX', 'XXXXXXXXXXXXXXX', 'ruoyi-1250000000', '', 'cos.ap-beijing.myqcloud.com', '','N', 'ap-beijing', '1', '1', '', 103, 1, now(), 1, now(), null); +insert into sys_oss_config values (4, '000000', 'qcloud', 'XXXXXXXXXXXXXXX', 'XXXXXXXXXXXXXXX', 'ruoyi-1240000000', '', 'cos.ap-beijing.myqcloud.com', '','N', 'ap-beijing', '1', '1', '', 103, 1, now(), 1, now(), null); insert into sys_oss_config values (5, '000000', 'image', 'ruoyi', 'ruoyi123', 'ruoyi', 'image', '127.0.0.1:9000', '','N', '', '1', '1', '', 103, 1, now(), 1, now(), NULL); -- ---------------------------- diff --git a/script/sql/ry_vue_5.X.sql b/script/sql/ry_vue_5.X.sql index 301eee7c7..d73369617 100644 --- a/script/sql/ry_vue_5.X.sql +++ b/script/sql/ry_vue_5.X.sql @@ -554,10 +554,10 @@ create table sys_oper_log ( oper_url varchar(255) default '' comment '请求URL', oper_ip varchar(128) default '' comment '主机地址', oper_location varchar(255) default '' comment '操作地点', - oper_param varchar(5000) default '' comment '请求参数', - json_result varchar(5000) default '' comment '返回参数', + oper_param varchar(4000) default '' comment '请求参数', + json_result varchar(4000) default '' comment '返回参数', status int(1) default 0 comment '操作状态(0正常 1异常)', - error_msg varchar(5000) default '' comment '错误消息', + error_msg varchar(4000) default '' comment '错误消息', oper_time datetime comment '操作时间', cost_time bigint(20) default 0 comment '消耗时间', primary key (oper_id), @@ -840,7 +840,7 @@ create table sys_oss_config ( insert into sys_oss_config values (1, '000000', 'minio', 'ruoyi', 'ruoyi123', 'ruoyi', '', '127.0.0.1:9000', '','N', '', '1' ,'0', '', 103, 1, sysdate(), 1, sysdate(), null); insert into sys_oss_config values (2, '000000', 'qiniu', 'XXXXXXXXXXXXXXX', 'XXXXXXXXXXXXXXX', 'ruoyi', '', 's3-cn-north-1.qiniucs.com', '','N', '', '1' ,'1', '', 103, 1, sysdate(), 1, sysdate(), null); insert into sys_oss_config values (3, '000000', 'aliyun', 'XXXXXXXXXXXXXXX', 'XXXXXXXXXXXXXXX', 'ruoyi', '', 'oss-cn-beijing.aliyuncs.com', '','N', '', '1' ,'1', '', 103, 1, sysdate(), 1, sysdate(), null); -insert into sys_oss_config values (4, '000000', 'qcloud', 'XXXXXXXXXXXXXXX', 'XXXXXXXXXXXXXXX', 'ruoyi-1250000000', '', 'cos.ap-beijing.myqcloud.com', '','N', 'ap-beijing', '1' ,'1', '', 103, 1, sysdate(), 1, sysdate(), null); +insert into sys_oss_config values (4, '000000', 'qcloud', 'XXXXXXXXXXXXXXX', 'XXXXXXXXXXXXXXX', 'ruoyi-1240000000', '', 'cos.ap-beijing.myqcloud.com', '','N', 'ap-beijing', '1' ,'1', '', 103, 1, sysdate(), 1, sysdate(), null); insert into sys_oss_config values (5, '000000', 'image', 'ruoyi', 'ruoyi123', 'ruoyi', 'image', '127.0.0.1:9000', '','N', '', '1' ,'1', '', 103, 1, sysdate(), 1, sysdate(), null); -- ---------------------------- diff --git a/script/sql/sqlserver/sqlserver_ry_vue_5.X.sql b/script/sql/sqlserver/sqlserver_ry_vue_5.X.sql index 7d5ff68a6..bf8661514 100644 --- a/script/sql/sqlserver/sqlserver_ry_vue_5.X.sql +++ b/script/sql/sqlserver/sqlserver_ry_vue_5.X.sql @@ -2002,10 +2002,10 @@ CREATE TABLE sys_oper_log oper_url nvarchar(255) DEFAULT '' NULL, oper_ip nvarchar(128) DEFAULT '' NULL, oper_location nvarchar(255) DEFAULT '' NULL, - oper_param nvarchar(5000) DEFAULT '' NULL, - json_result nvarchar(5000) DEFAULT '' NULL, + oper_param nvarchar(4000) DEFAULT '' NULL, + json_result nvarchar(4000) DEFAULT '' NULL, status int DEFAULT ((0)) NULL, - error_msg nvarchar(5000) DEFAULT '' NULL, + error_msg nvarchar(4000) DEFAULT '' NULL, oper_time datetime2(7) NULL, cost_time bigint DEFAULT ((0)) NULL, CONSTRAINT PK__sys_oper__34723BF9BD954573 PRIMARY KEY CLUSTERED (oper_id) -- Gitee From eba6b48daf43912df11128cc1e40ecf661cde2bb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Tue, 26 Nov 2024 16:29:26 +0800 Subject: [PATCH 286/540] update springdoc 2.6.0 => 2.7.0 update redisson 3.37.0 => 3.39.0 --- pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index 1591c0cb0..8186079bc 100644 --- a/pom.xml +++ b/pom.xml @@ -19,7 +19,7 @@ UTF-8 17 3.5.16 - 2.6.0 + 2.7.0 0.15.0 4.0.3 2.3 @@ -28,7 +28,7 @@ 3.9.1 5.8.31 3.3.4 - 3.37.0 + 3.39.0 2.2.7 4.3.1 1.2.0 -- Gitee From 8dc4b5cf6b45bc9044ea7ef2330eba2e8d943422 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Wed, 27 Nov 2024 15:22:05 +0800 Subject: [PATCH 287/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E7=A7=9F?= =?UTF-8?q?=E6=88=B7=E6=97=A5=E5=BF=97=E6=A8=A1=E5=9D=97=E5=90=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/system/SysTenantController.java | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysTenantController.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysTenantController.java index 10c6777e7..66c1b7ddf 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysTenantController.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysTenantController.java @@ -59,7 +59,7 @@ public class SysTenantController extends BaseController { */ @SaCheckRole(TenantConstants.SUPER_ADMIN_ROLE_KEY) @SaCheckPermission("system:tenant:export") - @Log(title = "租户", businessType = BusinessType.EXPORT) + @Log(title = "租户管理", businessType = BusinessType.EXPORT) @PostMapping("/export") public void export(SysTenantBo bo, HttpServletResponse response) { List list = tenantService.queryList(bo); @@ -85,7 +85,7 @@ public class SysTenantController extends BaseController { @ApiEncrypt @SaCheckRole(TenantConstants.SUPER_ADMIN_ROLE_KEY) @SaCheckPermission("system:tenant:add") - @Log(title = "租户", businessType = BusinessType.INSERT) + @Log(title = "租户管理", businessType = BusinessType.INSERT) @Lock4j @RepeatSubmit() @PostMapping() @@ -101,7 +101,7 @@ public class SysTenantController extends BaseController { */ @SaCheckRole(TenantConstants.SUPER_ADMIN_ROLE_KEY) @SaCheckPermission("system:tenant:edit") - @Log(title = "租户", businessType = BusinessType.UPDATE) + @Log(title = "租户管理", businessType = BusinessType.UPDATE) @RepeatSubmit() @PutMapping() public R edit(@Validated(EditGroup.class) @RequestBody SysTenantBo bo) { @@ -117,7 +117,7 @@ public class SysTenantController extends BaseController { */ @SaCheckRole(TenantConstants.SUPER_ADMIN_ROLE_KEY) @SaCheckPermission("system:tenant:edit") - @Log(title = "租户", businessType = BusinessType.UPDATE) + @Log(title = "租户管理", businessType = BusinessType.UPDATE) @PutMapping("/changeStatus") public R changeStatus(@RequestBody SysTenantBo bo) { tenantService.checkTenantAllowed(bo.getTenantId()); @@ -131,7 +131,7 @@ public class SysTenantController extends BaseController { */ @SaCheckRole(TenantConstants.SUPER_ADMIN_ROLE_KEY) @SaCheckPermission("system:tenant:remove") - @Log(title = "租户", businessType = BusinessType.DELETE) + @Log(title = "租户管理", businessType = BusinessType.DELETE) @DeleteMapping("/{ids}") public R remove(@NotEmpty(message = "主键不能为空") @PathVariable Long[] ids) { @@ -169,7 +169,7 @@ public class SysTenantController extends BaseController { */ @SaCheckRole(TenantConstants.SUPER_ADMIN_ROLE_KEY) @SaCheckPermission("system:tenant:edit") - @Log(title = "租户", businessType = BusinessType.UPDATE) + @Log(title = "租户管理", businessType = BusinessType.UPDATE) @GetMapping("/syncTenantPackage") public R syncTenantPackage(@NotBlank(message = "租户ID不能为空") String tenantId, @NotNull(message = "套餐ID不能为空") Long packageId) { @@ -180,7 +180,7 @@ public class SysTenantController extends BaseController { * 同步租户字典 */ @SaCheckRole(TenantConstants.SUPER_ADMIN_ROLE_KEY) - @Log(title = "同步租户字典", businessType = BusinessType.INSERT) + @Log(title = "租户管理", businessType = BusinessType.INSERT) @GetMapping("/syncTenantDict") public R syncTenantDict() { if (!TenantHelper.isEnable()) { -- Gitee From 476c7a77c8e45f9a51d26e077dc9ddbd8045fae5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Wed, 27 Nov 2024 18:23:10 +0800 Subject: [PATCH 288/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20redis?= =?UTF-8?q?=E5=BA=8F=E5=88=97=E5=8C=96=20=E6=94=AF=E6=8C=81=E6=9B=B4?= =?UTF-8?q?=E5=BF=AB=E7=9A=84apache=E4=BA=8C=E8=BF=9B=E5=88=B6=E8=B7=A8?= =?UTF-8?q?=E8=AF=AD=E8=A8=80=E5=BA=8F=E5=88=97=E5=8C=96=E6=96=B9=E6=A1=88?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ruoyi-admin/src/main/resources/application.yml | 1 + ruoyi-common/ruoyi-common-redis/pom.xml | 12 ++++++++++++ .../org/dromara/common/redis/config/RedisConfig.java | 3 +++ 3 files changed, 16 insertions(+) diff --git a/ruoyi-admin/src/main/resources/application.yml b/ruoyi-admin/src/main/resources/application.yml index f05bdaf85..33fbcb7ab 100644 --- a/ruoyi-admin/src/main/resources/application.yml +++ b/ruoyi-admin/src/main/resources/application.yml @@ -47,6 +47,7 @@ logging: org.dromara: @logging.level@ org.springframework: warn org.mybatis.spring.mapper: error + org.apache.fury: warn config: classpath:logback-plus.xml # 用户配置 diff --git a/ruoyi-common/ruoyi-common-redis/pom.xml b/ruoyi-common/ruoyi-common-redis/pom.xml index f56f8aad3..d7d99cacc 100644 --- a/ruoyi-common/ruoyi-common-redis/pom.xml +++ b/ruoyi-common/ruoyi-common-redis/pom.xml @@ -42,6 +42,18 @@ com.fasterxml.jackson.datatype jackson-datatype-jsr310 + + + + + + + + + + + + diff --git a/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/config/RedisConfig.java b/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/config/RedisConfig.java index f8fe79a8c..7ba94751a 100644 --- a/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/config/RedisConfig.java +++ b/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/config/RedisConfig.java @@ -53,6 +53,9 @@ public class RedisConfig { om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY); // 指定序列化输入的类型,类必须是非final修饰的。序列化时将对象全类名一起保存下来 om.activateDefaultTyping(LaissezFaireSubTypeValidator.instance, ObjectMapper.DefaultTyping.NON_FINAL); +// LoggerFactory.useSlf4jLogging(true); +// FuryCodec furyCodec = new FuryCodec(); +// CompositeCodec codec = new CompositeCodec(StringCodec.INSTANCE, furyCodec, furyCodec); TypedJsonJacksonCodec jsonCodec = new TypedJsonJacksonCodec(Object.class, om); // 组合序列化 key 使用 String 内容使用通用 json 格式 CompositeCodec codec = new CompositeCodec(StringCodec.INSTANCE, jsonCodec, jsonCodec); -- Gitee From 99d9c516fc12ee4b12f38eb4fdbb0c8143586649 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 29 Nov 2024 16:21:19 +0800 Subject: [PATCH 289/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E9=94=80?= =?UTF-8?q?=E6=AF=81=E7=AD=96=E7=95=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/org/dromara/common/redis/utils/QueueUtils.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/utils/QueueUtils.java b/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/utils/QueueUtils.java index e436a467f..ebef0ad72 100644 --- a/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/utils/QueueUtils.java +++ b/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/utils/QueueUtils.java @@ -174,11 +174,11 @@ public class QueueUtils { * * @param queueName 队列名 * @param capacity 容量 - * @param destroy 已存在是否销毁 + * @param destroy 是否销毁 */ public static boolean trySetBoundedQueueCapacity(String queueName, int capacity, boolean destroy) { RBoundedBlockingQueue boundedBlockingQueue = CLIENT.getBoundedBlockingQueue(queueName); - if (boundedBlockingQueue.isExists() && destroy) { + if (destroy) { destroyQueue(queueName); } return boundedBlockingQueue.trySetCapacity(capacity); -- Gitee From 87294b41affcfbd990af235c7f85f08e43d31654 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 29 Nov 2024 16:26:56 +0800 Subject: [PATCH 290/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E6=9C=89?= =?UTF-8?q?=E7=95=8C=E9=98=9F=E5=88=97=E9=94=80=E6=AF=81=E6=96=B9=E5=BC=8F?= =?UTF-8?q?=20=E5=BA=94=E8=AF=A5=E4=BD=BF=E7=94=A8=E7=89=B9=E6=AE=8A?= =?UTF-8?q?=E9=94=80=E6=AF=81=E6=96=B9=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/org/dromara/common/redis/utils/QueueUtils.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/utils/QueueUtils.java b/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/utils/QueueUtils.java index ebef0ad72..7c09e3138 100644 --- a/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/utils/QueueUtils.java +++ b/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/utils/QueueUtils.java @@ -179,7 +179,7 @@ public class QueueUtils { public static boolean trySetBoundedQueueCapacity(String queueName, int capacity, boolean destroy) { RBoundedBlockingQueue boundedBlockingQueue = CLIENT.getBoundedBlockingQueue(queueName); if (destroy) { - destroyQueue(queueName); + boundedBlockingQueue.delete(); } return boundedBlockingQueue.trySetCapacity(capacity); } -- Gitee From fef2d5207b88212bff6fb8d518d4776c2e3af28a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Mon, 2 Dec 2024 09:36:46 +0800 Subject: [PATCH 291/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E7=94=B1?= =?UTF-8?q?=E4=BA=8Esse=E9=87=8D=E8=AF=95=E6=9C=BA=E5=88=B6=E5=AF=BC?= =?UTF-8?q?=E8=87=B4=E7=BB=8F=E5=B8=B8=E8=BE=93=E5=87=BA=E8=AE=A4=E8=AF=81?= =?UTF-8?q?=E5=A4=B1=E8=B4=A5=E6=97=A5=E5=BF=97=E8=BF=87=E5=A4=9A=20?= =?UTF-8?q?=E5=B0=86sse=E5=A4=B1=E8=B4=A5=E6=94=B9=E4=B8=BAdebug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/dromara/common/web/handler/GlobalExceptionHandler.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/handler/GlobalExceptionHandler.java b/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/handler/GlobalExceptionHandler.java index 321c22615..0a60fbcc7 100644 --- a/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/handler/GlobalExceptionHandler.java +++ b/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/handler/GlobalExceptionHandler.java @@ -63,7 +63,7 @@ public class GlobalExceptionHandler { @ExceptionHandler(SseException.class) public String handleNotLoginException(SseException e, HttpServletRequest request) { String requestURI = request.getRequestURI(); - log.error("请求地址'{}',认证失败'{}',无法访问系统资源", requestURI, e.getMessage()); + log.debug("请求地址'{}',认证失败'{}',无法访问系统资源", requestURI, e.getMessage()); return JsonUtils.toJsonString(R.fail(HttpStatus.HTTP_UNAUTHORIZED, "认证失败,无法访问系统资源")); } -- Gitee From eda67dd5724dee940737859ad82f4356b2feb6a8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Mon, 2 Dec 2024 10:05:25 +0800 Subject: [PATCH 292/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E4=BB=A3?= =?UTF-8?q?=E7=A0=81=E7=94=9F=E6=88=90=E5=99=A8=20=E5=B0=86=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E5=BA=93=E5=AD=97=E6=AE=B5=E9=BB=98=E8=AE=A4=E8=BD=AC?= =?UTF-8?q?=E4=B8=BA=E5=B0=8F=E5=86=99=20=E9=81=BF=E5=85=8D=E6=9F=90?= =?UTF-8?q?=E4=BA=9B=E6=95=B0=E6=8D=AE=E5=BA=93=E5=A4=A7=E5=86=99=E5=87=BA?= =?UTF-8?q?=E7=8E=B0=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/org/dromara/generator/util/GenUtils.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/util/GenUtils.java b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/util/GenUtils.java index 0981997d8..53b433502 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/util/GenUtils.java +++ b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/util/GenUtils.java @@ -36,7 +36,8 @@ public class GenUtils { */ public static void initColumnField(GenTableColumn column, GenTable table) { String dataType = getDbType(column.getColumnType()); - String columnName = column.getColumnName(); + // 统一转小写 避免有些数据库默认大写问题 如果需要特别书写方式 请在实体类增加注解标注别名 + String columnName = column.getColumnName().toLowerCase(); column.setTableId(table.getTableId()); // 设置java字段名 column.setJavaField(StringUtils.toCamelCase(columnName)); -- Gitee From eed929b9fef6eae14dfa19e2c57aa26caa1b9104 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Mon, 2 Dec 2024 23:24:16 +0800 Subject: [PATCH 293/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20=E4=BB=A3?= =?UTF-8?q?=E7=A0=81=E7=94=9F=E6=88=90=20=E8=A1=A8=E5=90=8D=E4=B8=AD?= =?UTF-8?q?=E9=97=B4=E5=B8=A6=E6=9C=89=E7=89=B9=E6=AE=8A=E5=AD=97=E7=AC=A6?= =?UTF-8?q?=E8=A2=AB=E8=BF=87=E6=BB=A4=E9=97=AE=E9=A2=98=20=E6=94=B9?= =?UTF-8?q?=E4=B8=BA=E5=BC=80=E5=A4=B4=E8=BF=87=E6=BB=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/org/dromara/generator/service/GenTableServiceImpl.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java index d3f4dded3..ff6a2d8d6 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java +++ b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java @@ -202,7 +202,7 @@ public class GenTableServiceImpl implements IGenTableService { } List> tableList = tablesMap.values().stream() - .filter(x -> !StringUtils.containsAnyIgnoreCase(x.getName(), TABLE_IGNORE)) + .filter(x -> !startWithAnyIgnoreCase(x.getName(), TABLE_IGNORE)) .filter(x -> tableNameSet.contains(x.getName())).toList(); if (CollUtil.isEmpty(tableList)) { -- Gitee From 14c1bde958e72a0e254252a3cf432fcadf1d4e99 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Tue, 3 Dec 2024 11:00:54 +0800 Subject: [PATCH 294/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E7=A7=9F?= =?UTF-8?q?=E6=88=B7=E5=9F=9F=E5=90=8D=E4=BD=BF=E7=94=A8=E5=BF=BD=E7=95=A5?= =?UTF-8?q?=E5=A4=A7=E5=B0=8F=E5=86=99=E5=8C=B9=E9=85=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/org/dromara/web/controller/AuthController.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ruoyi-admin/src/main/java/org/dromara/web/controller/AuthController.java b/ruoyi-admin/src/main/java/org/dromara/web/controller/AuthController.java index 89fe607f6..c1ffef3d3 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/controller/AuthController.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/controller/AuthController.java @@ -226,7 +226,7 @@ public class AuthController { } // 根据域名进行筛选 List list = StreamUtils.filter(voList, vo -> - StringUtils.equals(vo.getDomain(), host)); + StringUtils.equalsIgnoreCase(vo.getDomain(), host)); result.setVoList(CollUtil.isNotEmpty(list) ? list : voList); return R.ok(result); } -- Gitee From 19aed0a1e494edef38e15e7d854b63cc92afd6d4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Wed, 4 Dec 2024 10:11:41 +0800 Subject: [PATCH 295/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E9=A1=B9?= =?UTF-8?q?=E7=9B=AE=E5=90=8D=E5=89=8D=E5=A2=9E=E5=8A=A0=E7=A4=BE=E5=8C=BA?= =?UTF-8?q?=E5=90=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 2 +- pom.xml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index b37eaf91f..5ed7878f1 100644 --- a/README.md +++ b/README.md @@ -15,7 +15,7 @@ [![JDK-17](https://img.shields.io/badge/JDK-17-green.svg)]() [![JDK-21](https://img.shields.io/badge/JDK-21-green.svg)]() -> RuoYi-Vue-Plus 是重写 RuoYi-Vue 针对 `分布式集群与多租户` 场景全方位升级(不兼容原框架) +> Dromara RuoYi-Vue-Plus 是重写 RuoYi-Vue 针对 `分布式集群与多租户` 场景全方位升级(不兼容原框架) > 项目代码、文档 均开源免费可商用 遵循开源协议在项目中保留开源协议文件即可
活到老写到老 为兴趣而开源 为学习而开源 为让大家真正可以学到技术而开源 diff --git a/pom.xml b/pom.xml index 8186079bc..e3b9b8456 100644 --- a/pom.xml +++ b/pom.xml @@ -10,7 +10,7 @@ RuoYi-Vue-Plus https://gitee.com/dromara/RuoYi-Vue-Plus - RuoYi-Vue-Plus多租户管理系统 + Dromara RuoYi-Vue-Plus多租户管理系统 5.2.3 -- Gitee From c17225abb16c5e459e7af34e5f147c15583fa557 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 6 Dec 2024 10:11:38 +0800 Subject: [PATCH 296/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E5=9C=A8?= =?UTF-8?q?=E7=BA=BF=E7=94=A8=E6=88=B7=E6=9F=A5=E8=AF=A2=20=E4=BC=98?= =?UTF-8?q?=E5=85=88=E6=9F=A5=E8=AF=A2=E7=A7=9F=E6=88=B7=E4=B8=8B=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=20=E5=87=8F=E5=B0=91=E6=95=B0=E6=8D=AE=E9=87=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../system/controller/monitor/SysUserOnlineController.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/monitor/SysUserOnlineController.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/monitor/SysUserOnlineController.java index 95439a266..1cab23251 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/monitor/SysUserOnlineController.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/monitor/SysUserOnlineController.java @@ -19,6 +19,7 @@ import org.dromara.system.domain.SysUserOnline; import org.springframework.web.bind.annotation.*; import java.util.ArrayList; +import java.util.Collection; import java.util.Collections; import java.util.List; import java.util.stream.Collectors; @@ -43,7 +44,7 @@ public class SysUserOnlineController extends BaseController { @GetMapping("/list") public TableDataInfo list(String ipaddr, String userName) { // 获取所有未过期的 token - List keys = StpUtil.searchTokenValue("", 0, -1, false); + Collection keys = RedisUtils.keys(CacheConstants.ONLINE_TOKEN_KEY + "*"); List userOnlineDTOList = new ArrayList<>(); for (String key : keys) { String token = StringUtils.substringAfterLast(key, ":"); -- Gitee From e0b0ffcb289a9fc98b3660a0e7e391f8899518f7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 6 Dec 2024 14:02:46 +0800 Subject: [PATCH 297/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E4=B9=A6?= =?UTF-8?q?=E5=86=99=E9=94=99=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index e3b9b8456..58672cae4 100644 --- a/pom.xml +++ b/pom.xml @@ -55,7 +55,7 @@ 3.2.2 3.2.2 - 3.11.0 + 3.11.0 3.1.2 1.3.0 @@ -375,7 +375,7 @@ org.apache.maven.plugins maven-compiler-plugin - ${maven-compiler-plugin.verison} + ${maven-compiler-plugin.version} ${java.version} ${java.version} -- Gitee From 64d574cf06245c6712a3e5a3e73b9f345e446736 Mon Sep 17 00:00:00 2001 From: AprilWind <2100166581@qq.com> Date: Mon, 9 Dec 2024 11:20:05 +0800 Subject: [PATCH 298/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=E4=BB=A3?= =?UTF-8?q?=E7=A0=81=E7=94=9F=E6=88=90=E6=8E=92=E5=BA=8F=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/dromara/generator/service/GenTableServiceImpl.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java index ff6a2d8d6..e8f3a2e50 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java +++ b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java @@ -106,7 +106,7 @@ public class GenTableServiceImpl implements IGenTableService { .like(StringUtils.isNotBlank(genTable.getTableComment()), "lower(table_comment)", StringUtils.lowerCase(genTable.getTableComment())) .between(params.get("beginTime") != null && params.get("endTime") != null, "create_time", params.get("beginTime"), params.get("endTime")) - .orderByAsc("table_id"); + .orderByDesc("update_time", "create_time"); return wrapper; } @@ -165,7 +165,8 @@ public class GenTableServiceImpl implements IGenTableService { gen.setCreateTime(x.getCreateTime()); gen.setUpdateTime(x.getUpdateTime()); return gen; - }).toList(); + }).sorted(Comparator.comparing(GenTable::getCreateTime).reversed()) + .toList(); IPage page = pageQuery.build(); page.setTotal(tables.size()); @@ -274,6 +275,7 @@ public class GenTableServiceImpl implements IGenTableService { String tableName = table.getTableName(); GenUtils.initTable(table); table.setDataName(dataName); + table.setCreateTime(new Date()); int row = baseMapper.insert(table); if (row > 0) { // 保存列信息 -- Gitee From ed6f8262c6e511edd72f87c667b70eb35b01c6f2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Mon, 9 Dec 2024 12:39:27 +0800 Subject: [PATCH 299/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E4=BB=A3?= =?UTF-8?q?=E7=A0=81=E7=94=9F=E6=88=90=20=E5=88=9B=E5=BB=BA=E6=9B=B4?= =?UTF-8?q?=E6=96=B0=E6=97=B6=E9=97=B4=E8=A2=AB=E8=A6=86=E7=9B=96=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/dromara/generator/service/GenTableServiceImpl.java | 3 +-- .../src/main/java/org/dromara/generator/util/GenUtils.java | 4 ++++ 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java index e8f3a2e50..7eb99eb59 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java +++ b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java @@ -106,7 +106,7 @@ public class GenTableServiceImpl implements IGenTableService { .like(StringUtils.isNotBlank(genTable.getTableComment()), "lower(table_comment)", StringUtils.lowerCase(genTable.getTableComment())) .between(params.get("beginTime") != null && params.get("endTime") != null, "create_time", params.get("beginTime"), params.get("endTime")) - .orderByDesc("update_time", "create_time"); + .orderByDesc("update_time"); return wrapper; } @@ -275,7 +275,6 @@ public class GenTableServiceImpl implements IGenTableService { String tableName = table.getTableName(); GenUtils.initTable(table); table.setDataName(dataName); - table.setCreateTime(new Date()); int row = baseMapper.insert(table); if (row > 0) { // 保存列信息 diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/util/GenUtils.java b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/util/GenUtils.java index 53b433502..996cf9b71 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/util/GenUtils.java +++ b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/util/GenUtils.java @@ -29,6 +29,8 @@ public class GenUtils { genTable.setBusinessName(getBusinessName(genTable.getTableName())); genTable.setFunctionName(replaceText(genTable.getTableComment())); genTable.setFunctionAuthor(GenConfig.getAuthor()); + genTable.setCreateTime(null); + genTable.setUpdateTime(null); } /** @@ -39,6 +41,8 @@ public class GenUtils { // 统一转小写 避免有些数据库默认大写问题 如果需要特别书写方式 请在实体类增加注解标注别名 String columnName = column.getColumnName().toLowerCase(); column.setTableId(table.getTableId()); + column.setCreateTime(null); + column.setUpdateTime(null); // 设置java字段名 column.setJavaField(StringUtils.toCamelCase(columnName)); // 设置默认类型 -- Gitee From 2bb787886d23b6bded217a1622c80cbf7180baf3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Mon, 9 Dec 2024 12:42:36 +0800 Subject: [PATCH 300/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E4=BB=A3?= =?UTF-8?q?=E7=A0=81=E7=94=9F=E6=88=90=20=E5=A2=9E=E5=8A=A0buildQueryWrapp?= =?UTF-8?q?er=E9=BB=98=E8=AE=A4=E6=8E=92=E5=BA=8F=E8=A7=84=E5=88=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/resources/vm/java/serviceImpl.java.vm | 3 +++ 1 file changed, 3 insertions(+) diff --git a/ruoyi-modules/ruoyi-generator/src/main/resources/vm/java/serviceImpl.java.vm b/ruoyi-modules/ruoyi-generator/src/main/resources/vm/java/serviceImpl.java.vm index 67690ca6e..0df655bd2 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/resources/vm/java/serviceImpl.java.vm +++ b/ruoyi-modules/ruoyi-generator/src/main/resources/vm/java/serviceImpl.java.vm @@ -95,6 +95,9 @@ public class ${ClassName}ServiceImpl implements I${ClassName}Service { ${ClassName}::get$AttrName ,params.get("begin$AttrName"), params.get("end$AttrName")); #end #end +#if($column.isPk==1) + lqw.orderByAsc(${ClassName}::get$AttrName); +#end #end return lqw; } -- Gitee From 5e6cb0dd3c083ef98642ee02b83e9eeeb7208630 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Mon, 9 Dec 2024 13:31:17 +0800 Subject: [PATCH 301/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E4=BB=A3?= =?UTF-8?q?=E7=A0=81=E7=94=9F=E6=88=90=20=E5=A2=9E=E5=8A=A0buildQueryWrapp?= =?UTF-8?q?er=E9=BB=98=E8=AE=A4=E6=8E=92=E5=BA=8F=E8=A7=84=E5=88=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/resources/vm/java/serviceImpl.java.vm | 1 + 1 file changed, 1 insertion(+) diff --git a/ruoyi-modules/ruoyi-generator/src/main/resources/vm/java/serviceImpl.java.vm b/ruoyi-modules/ruoyi-generator/src/main/resources/vm/java/serviceImpl.java.vm index 0df655bd2..48cc8b15b 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/resources/vm/java/serviceImpl.java.vm +++ b/ruoyi-modules/ruoyi-generator/src/main/resources/vm/java/serviceImpl.java.vm @@ -95,6 +95,7 @@ public class ${ClassName}ServiceImpl implements I${ClassName}Service { ${ClassName}::get$AttrName ,params.get("begin$AttrName"), params.get("end$AttrName")); #end #end +#set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)}) #if($column.isPk==1) lqw.orderByAsc(${ClassName}::get$AttrName); #end -- Gitee From 9e613488f1a01563913b4f6aade062980a315fea Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=A7=8B=E8=BE=9E=E6=9C=AA=E5=AF=92?= <545073804@qq.com> Date: Mon, 9 Dec 2024 09:03:31 +0000 Subject: [PATCH 302/540] =?UTF-8?q?add=20=E6=96=B0=E5=A2=9E=20validation?= =?UTF-8?q?=E6=94=AF=E6=8C=81=E6=9E=9A=E4=B8=BE=E6=A0=A1=E9=AA=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 秋辞未寒 <545073804@qq.com> --- .../core/validate/enumd/EnumPattern.java | 39 +++++++++++++++++ .../validate/enumd/EnumPatternValidator.java | 43 +++++++++++++++++++ .../core/validate/enumd/ValidateEnum.java | 29 +++++++++++++ 3 files changed, 111 insertions(+) create mode 100644 ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/validate/enumd/EnumPattern.java create mode 100644 ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/validate/enumd/EnumPatternValidator.java create mode 100644 ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/validate/enumd/ValidateEnum.java diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/validate/enumd/EnumPattern.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/validate/enumd/EnumPattern.java new file mode 100644 index 000000000..2f7de7550 --- /dev/null +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/validate/enumd/EnumPattern.java @@ -0,0 +1,39 @@ +package org.dromara.common.core.validate.enumd; + +import jakarta.validation.Constraint; +import jakarta.validation.Payload; + +import java.lang.annotation.*; + +import static java.lang.annotation.ElementType.*; +import static java.lang.annotation.RetentionPolicy.RUNTIME; + +/** + * 自定义枚举校验注解 + * + * @author 秋辞未寒 + * @date 2024-12-09 + */ +@Documented +@Target({METHOD, FIELD, ANNOTATION_TYPE, CONSTRUCTOR, PARAMETER, TYPE_USE}) +@Retention(RUNTIME) +@Repeatable(EnumPattern.List.class) // 允许在同一元素上多次使用该注解 +@Constraint(validatedBy = {EnumPatternValidator.class}) +public @interface EnumPattern { + + Class type() default ValidateEnum.class; + + String message() default "输入值不在枚举范围内"; + + Class[] groups() default {}; + + Class[] payload() default {}; + + @Documented + @Target({METHOD, FIELD, ANNOTATION_TYPE, CONSTRUCTOR, PARAMETER, TYPE_USE}) + @Retention(RUNTIME) + @interface List { + EnumPattern[] value(); + } + +} diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/validate/enumd/EnumPatternValidator.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/validate/enumd/EnumPatternValidator.java new file mode 100644 index 000000000..451dc71a7 --- /dev/null +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/validate/enumd/EnumPatternValidator.java @@ -0,0 +1,43 @@ +package org.dromara.common.core.validate.enumd; + +import org.dromara.common.core.utils.StringUtils; +import jakarta.validation.ConstraintValidator; +import jakarta.validation.ConstraintValidatorContext; +import jakarta.validation.ValidationException; +import lombok.extern.slf4j.Slf4j; + +/** + * 自定义枚举校验注解实现 + * + * @author 秋辞未寒 + * @date 2024-12-09 + */ +public class EnumPatternValidator implements ConstraintValidator { + + private EnumPattern annotation;; + + @Override + public void initialize(EnumPattern annotation) { + ConstraintValidator.super.initialize(annotation); + this.annotation = annotation; + } + + @Override + public boolean isValid(String value, ConstraintValidatorContext constraintValidatorContext) { + try { + if (StringUtils.isNotBlank(value)) { + Class type = annotation.type(); + ValidateEnum[] constants = type.getEnumConstants(); + for (ValidateEnum e : constants) { + if (e.validate(value)) { + return true; + } + } + } + return false; + } catch (Exception e) { + throw new ValidationException(e); + } + } + +} \ No newline at end of file diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/validate/enumd/ValidateEnum.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/validate/enumd/ValidateEnum.java new file mode 100644 index 000000000..f3a367c8f --- /dev/null +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/validate/enumd/ValidateEnum.java @@ -0,0 +1,29 @@ +package org.dromara.common.core.validate.enumd; + +import org.dromara.common.core.utils.StringUtils; + +/** + * 枚举类型校验接口 + * + * @author 秋辞未寒 + * @date 2024-12-09 + */ +public interface ValidateEnum { + + /** + * 获取枚举code + *
该code用于匹配
+ * @return 枚举code + */ + String getCode(); + + /** + * 校验枚举code + * @param code 枚举code + * @return 校验结果 + */ + default boolean validate(String code) { + return StringUtils.equals(code, getCode()); + } + +} -- Gitee From fc9c90ad998e53ed6378a21bd1df10fe826fb22d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Mon, 9 Dec 2024 17:35:53 +0800 Subject: [PATCH 303/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20=E4=B8=89?= =?UTF-8?q?=E6=96=B9=E7=BC=BA=E5=A4=B1=E5=8F=82=E6=95=B0=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/org/dromara/common/social/utils/SocialUtils.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ruoyi-common/ruoyi-common-social/src/main/java/org/dromara/common/social/utils/SocialUtils.java b/ruoyi-common/ruoyi-common-social/src/main/java/org/dromara/common/social/utils/SocialUtils.java index 9191fca77..357256d52 100644 --- a/ruoyi-common/ruoyi-common-social/src/main/java/org/dromara/common/social/utils/SocialUtils.java +++ b/ruoyi-common/ruoyi-common-social/src/main/java/org/dromara/common/social/utils/SocialUtils.java @@ -58,9 +58,9 @@ public class SocialUtils { case "linkedin" -> new AuthLinkedinRequest(builder.build(), STATE_CACHE); case "microsoft" -> new AuthMicrosoftRequest(builder.build(), STATE_CACHE); case "renren" -> new AuthRenrenRequest(builder.build(), STATE_CACHE); - case "stack_overflow" -> new AuthStackOverflowRequest(builder.build(), STATE_CACHE); + case "stack_overflow" -> new AuthStackOverflowRequest(builder.stackOverflowKey(obj.getStackOverflowKey()).build(), STATE_CACHE); case "huawei" -> new AuthHuaweiRequest(builder.build(), STATE_CACHE); - case "wechat_enterprise" -> new AuthWeChatEnterpriseQrcodeRequest(builder.build(), STATE_CACHE); + case "wechat_enterprise" -> new AuthWeChatEnterpriseQrcodeRequest(builder.agentId(obj.getAgentId()).build(), STATE_CACHE); case "gitlab" -> new AuthGitlabRequest(builder.build(), STATE_CACHE); case "wechat_mp" -> new AuthWeChatMpRequest(builder.build(), STATE_CACHE); case "aliyun" -> new AuthAliyunRequest(builder.build(), STATE_CACHE); -- Gitee From 9009a90ef27754a81ba86932663d33e176942d4e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=A7=8B=E8=BE=9E=E6=9C=AA=E5=AF=92?= <545073804@qq.com> Date: Mon, 9 Dec 2024 09:41:52 +0000 Subject: [PATCH 304/540] =?UTF-8?q?update=20=E6=9B=B4=E6=96=B0=20=E6=9E=9A?= =?UTF-8?q?=E4=B8=BE=E6=A0=A1=E9=AA=8C=E9=80=9A=E8=BF=87=E8=8E=B7=E5=8F=96?= =?UTF-8?q?=E6=9E=9A=E4=B8=BE=E5=80=BC=EF=BC=8C=E4=B8=8D=E5=86=8D=E9=9C=80?= =?UTF-8?q?=E8=A6=81=E5=AE=9E=E7=8E=B0=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 秋辞未寒 <545073804@qq.com> --- .../common/core/validate/enumd/EnumPattern.java | 10 +++++++++- .../core/validate/enumd/EnumPatternValidator.java | 10 ++++++---- 2 files changed, 15 insertions(+), 5 deletions(-) diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/validate/enumd/EnumPattern.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/validate/enumd/EnumPattern.java index 2f7de7550..35f7ecbe3 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/validate/enumd/EnumPattern.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/validate/enumd/EnumPattern.java @@ -21,7 +21,15 @@ import static java.lang.annotation.RetentionPolicy.RUNTIME; @Constraint(validatedBy = {EnumPatternValidator.class}) public @interface EnumPattern { - Class type() default ValidateEnum.class; + /** + * 需要校验的枚举类型 + */ + Class type() default Enum.class; + + /** + * 枚举类型校验值判断方法 + */ + String method() default "getCode"; String message() default "输入值不在枚举范围内"; diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/validate/enumd/EnumPatternValidator.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/validate/enumd/EnumPatternValidator.java index 451dc71a7..af87225a6 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/validate/enumd/EnumPatternValidator.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/validate/enumd/EnumPatternValidator.java @@ -1,6 +1,7 @@ package org.dromara.common.core.validate.enumd; import org.dromara.common.core.utils.StringUtils; +import org.dromara.common.core.utils.reflect.ReflectUtils; import jakarta.validation.ConstraintValidator; import jakarta.validation.ConstraintValidatorContext; import jakarta.validation.ValidationException; @@ -26,10 +27,11 @@ public class EnumPatternValidator implements ConstraintValidator type = annotation.type(); - ValidateEnum[] constants = type.getEnumConstants(); - for (ValidateEnum e : constants) { - if (e.validate(value)) { + Class type = annotation.type(); + Object[] enumConstants = type.getEnumConstants(); + Method method = ReflectUtils.getMethod(type, annotation.method()); + for (Object e : enumConstants) { + if (value.equals(method.invoke(e))) { return true; } } -- Gitee From a1f82a7d0855db0eb19c66d909bed4c76a77f7a1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=A7=8B=E8=BE=9E=E6=9C=AA=E5=AF=92?= <545073804@qq.com> Date: Mon, 9 Dec 2024 09:43:01 +0000 Subject: [PATCH 305/540] =?UTF-8?q?=E5=88=A0=E9=99=A4=E6=96=87=E4=BB=B6=20?= =?UTF-8?q?ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common?= =?UTF-8?q?/core/validate/enumd/ValidateEnum.java?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../core/validate/enumd/ValidateEnum.java | 29 ------------------- 1 file changed, 29 deletions(-) delete mode 100644 ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/validate/enumd/ValidateEnum.java diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/validate/enumd/ValidateEnum.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/validate/enumd/ValidateEnum.java deleted file mode 100644 index f3a367c8f..000000000 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/validate/enumd/ValidateEnum.java +++ /dev/null @@ -1,29 +0,0 @@ -package org.dromara.common.core.validate.enumd; - -import org.dromara.common.core.utils.StringUtils; - -/** - * 枚举类型校验接口 - * - * @author 秋辞未寒 - * @date 2024-12-09 - */ -public interface ValidateEnum { - - /** - * 获取枚举code - *
该code用于匹配
- * @return 枚举code - */ - String getCode(); - - /** - * 校验枚举code - * @param code 枚举code - * @return 校验结果 - */ - default boolean validate(String code) { - return StringUtils.equals(code, getCode()); - } - -} -- Gitee From 4821902fdc73052b56a0b39ebe60e0c7287b254e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=A7=8B=E8=BE=9E=E6=9C=AA=E5=AF=92?= <545073804@qq.com> Date: Mon, 9 Dec 2024 10:16:49 +0000 Subject: [PATCH 306/540] =?UTF-8?q?update=20=E6=9B=B4=E6=96=B0=20=E6=9E=9A?= =?UTF-8?q?=E4=B8=BE=E6=A0=A1=E9=AA=8C=E9=80=9A=E8=BF=87=E6=9E=9A=E4=B8=BE?= =?UTF-8?q?=E5=AD=97=E6=AE=B5=E7=9A=84getter=E6=96=B9=E6=B3=95=E5=8F=96?= =?UTF-8?q?=E5=80=BC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 秋辞未寒 <545073804@qq.com> --- .../dromara/common/core/validate/enumd/EnumPattern.java | 7 ++++--- .../common/core/validate/enumd/EnumPatternValidator.java | 4 ++-- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/validate/enumd/EnumPattern.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/validate/enumd/EnumPattern.java index 35f7ecbe3..c31c7703c 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/validate/enumd/EnumPattern.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/validate/enumd/EnumPattern.java @@ -9,7 +9,7 @@ import static java.lang.annotation.ElementType.*; import static java.lang.annotation.RetentionPolicy.RUNTIME; /** - * 自定义枚举校验注解 + * 自定义枚举校验 * * @author 秋辞未寒 * @date 2024-12-09 @@ -27,9 +27,10 @@ public @interface EnumPattern { Class type() default Enum.class; /** - * 枚举类型校验值判断方法 + * 枚举类型校验值字段名称 + * TODO 需确保该字段实现了 getter 方法 */ - String method() default "getCode"; + String fieldName() default "code"; String message() default "输入值不在枚举范围内"; diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/validate/enumd/EnumPatternValidator.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/validate/enumd/EnumPatternValidator.java index af87225a6..0e748c0a4 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/validate/enumd/EnumPatternValidator.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/validate/enumd/EnumPatternValidator.java @@ -28,10 +28,10 @@ public class EnumPatternValidator implements ConstraintValidator type = annotation.type(); + String fieldName = annotation.fieldName(); Object[] enumConstants = type.getEnumConstants(); - Method method = ReflectUtils.getMethod(type, annotation.method()); for (Object e : enumConstants) { - if (value.equals(method.invoke(e))) { + if (value.equals(ReflectUtils.invokeGetter(e, fieldName))) { return true; } } -- Gitee From d257de78825ebc812dad1d138035c4b07b8991d1 Mon Sep 17 00:00:00 2001 From: AprilWind <2100166581@qq.com> Date: Tue, 10 Dec 2024 11:47:13 +0800 Subject: [PATCH 307/540] =?UTF-8?q?update=20=E5=85=BC=E5=AE=B9=E4=BA=91?= =?UTF-8?q?=E5=8E=82=E5=95=86=E8=87=AA=E5=AE=9A=E4=B9=89=E5=9F=9F=E5=90=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/org/dromara/common/oss/core/OssClient.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java b/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java index 1261b4777..a37c5a210 100644 --- a/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java +++ b/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java @@ -297,7 +297,7 @@ public class OssClient { .build()) .build()) .url(); - return url.toString(); + return url.toString().replace(url.getProtocol() + "://" + url.getHost(), getDomain()); } /** -- Gitee From 9f34edee4f3b83395b24690ef1fc9b6f8bebfd95 Mon Sep 17 00:00:00 2001 From: AprilWind <2100166581@qq.com> Date: Tue, 10 Dec 2024 12:41:59 +0800 Subject: [PATCH 308/540] =?UTF-8?q?reset=20=E5=9B=9E=E6=BB=9A=E9=94=99?= =?UTF-8?q?=E8=AF=AF=E6=8F=90=E4=BA=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/org/dromara/common/oss/core/OssClient.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java b/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java index a37c5a210..1261b4777 100644 --- a/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java +++ b/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java @@ -297,7 +297,7 @@ public class OssClient { .build()) .build()) .url(); - return url.toString().replace(url.getProtocol() + "://" + url.getHost(), getDomain()); + return url.toString(); } /** -- Gitee From 552e543471984fd37fd5cd70cde0218398258b3e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Tue, 10 Dec 2024 17:46:45 +0800 Subject: [PATCH 309/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20pr?= =?UTF-8?q?=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../core/validate/enumd/EnumPattern.java | 6 ++--- .../validate/enumd/EnumPatternValidator.java | 26 +++++++------------ 2 files changed, 12 insertions(+), 20 deletions(-) diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/validate/enumd/EnumPattern.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/validate/enumd/EnumPattern.java index c31c7703c..d4f1c3d01 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/validate/enumd/EnumPattern.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/validate/enumd/EnumPattern.java @@ -24,13 +24,13 @@ public @interface EnumPattern { /** * 需要校验的枚举类型 */ - Class type() default Enum.class; + Class> type(); /** * 枚举类型校验值字段名称 - * TODO 需确保该字段实现了 getter 方法 + * 需确保该字段实现了 getter 方法 */ - String fieldName() default "code"; + String fieldName(); String message() default "输入值不在枚举范围内"; diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/validate/enumd/EnumPatternValidator.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/validate/enumd/EnumPatternValidator.java index 0e748c0a4..6cfa11a33 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/validate/enumd/EnumPatternValidator.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/validate/enumd/EnumPatternValidator.java @@ -1,11 +1,9 @@ package org.dromara.common.core.validate.enumd; -import org.dromara.common.core.utils.StringUtils; -import org.dromara.common.core.utils.reflect.ReflectUtils; import jakarta.validation.ConstraintValidator; import jakarta.validation.ConstraintValidatorContext; -import jakarta.validation.ValidationException; -import lombok.extern.slf4j.Slf4j; +import org.dromara.common.core.utils.StringUtils; +import org.dromara.common.core.utils.reflect.ReflectUtils; /** * 自定义枚举校验注解实现 @@ -25,21 +23,15 @@ public class EnumPatternValidator implements ConstraintValidator type = annotation.type(); - String fieldName = annotation.fieldName(); - Object[] enumConstants = type.getEnumConstants(); - for (Object e : enumConstants) { - if (value.equals(ReflectUtils.invokeGetter(e, fieldName))) { - return true; - } + if (StringUtils.isNotBlank(value)) { + String fieldName = annotation.fieldName(); + for (Object e : annotation.type().getEnumConstants()) { + if (value.equals(ReflectUtils.invokeGetter(e, fieldName))) { + return true; } } - return false; - } catch (Exception e) { - throw new ValidationException(e); } + return false; } -} \ No newline at end of file +} -- Gitee From 59fd7eeeb3a233c288e2440b65f59d11b16c4620 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=A7=8B=E8=BE=9E=E6=9C=AA=E5=AF=92?= <545073804@qq.com> Date: Tue, 10 Dec 2024 09:55:11 +0000 Subject: [PATCH 310/540] =?UTF-8?q?add=20=E6=96=B0=E5=A2=9E=20=E5=9F=BA?= =?UTF-8?q?=E4=BA=8ERedisson=E7=9A=84=E5=8F=91=E5=8F=B7=E5=99=A8=E5=B7=A5?= =?UTF-8?q?=E5=85=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/redis/utils/SequenceUtils.java | 165 ++++++++++++++++++ 1 file changed, 165 insertions(+) create mode 100644 ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/utils/SequenceUtils.java diff --git a/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/utils/SequenceUtils.java b/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/utils/SequenceUtils.java new file mode 100644 index 000000000..3c2f70329 --- /dev/null +++ b/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/utils/SequenceUtils.java @@ -0,0 +1,165 @@ +package org.dromara.common.redis.utils; + +import cn.hutool.core.date.DatePattern; +import cn.hutool.core.date.DateUtil; +import org.dromara.common.core.utils.SpringUtils; +import org.dromara.common.core.utils.StringUtils; +import lombok.AccessLevel; +import lombok.NoArgsConstructor; +import org.redisson.api.RIdGenerator; +import org.redisson.api.RedissonClient; + +import java.time.Duration; + +/** + * 发号器工具类 + * + * @author 秋辞未寒 + * @date 2024-12-10 + */ +@NoArgsConstructor(access = AccessLevel.PRIVATE) +public class SequenceUtils { + + /** + * 默认初始值 + */ + public static final Long DEFAULT_INIT_VALUE = 1L; + /** + * 默认步长 + */ + public static final Long DEFAULT_STEP_VALUE = 1L; + /** + * 默认过期时间-天 + */ + public static final Duration DEFAULT_EXPIRE_TIME_DAY = Duration.ofDays(1); + /** + * 默认过期时间-分钟 + */ + public static final Duration DEFAULT_EXPIRE_TIME_MINUTE = Duration.ofMinutes(1); + + /** + * 获取Redisson客户端实例 + */ + private static final RedissonClient REDISSON_CLIENT = SpringUtils.getBean(RedissonClient.class); + + /** + * 获取ID生成器 + * + * @param key 业务key + * @param expireTime 过期时间 + * @param initValue ID初始值 + * @param stepValue ID步长 + * @return ID生成器 + */ + private static RIdGenerator getIdGenerator(String key, Duration expireTime, Long initValue, Long stepValue) { + if (initValue == null || initValue <= 0) { + initValue = DEFAULT_INIT_VALUE; + } + if (stepValue == null || stepValue <= 0) { + stepValue = DEFAULT_STEP_VALUE; + } + RIdGenerator idGenerator = REDISSON_CLIENT.getIdGenerator(key); + // 设置过期时间 + idGenerator.expire(expireTime); + // 设置初始值和步长 + idGenerator.tryInit(initValue, stepValue); + return idGenerator; + } + + /** + * 获取指定业务key的唯一id + * + * @param key 业务key + * @param expireTime 过期时间 + * @param initValue ID初始值 + * @param stepValue ID步长 + * @return 唯一id + */ + public static long nextId(String key, Duration expireTime, Long initValue, Long stepValue) { + return getIdGenerator(key, expireTime, initValue, stepValue).nextId(); + } + + /** + * 获取指定业务key的唯一id字符串 + * + * @param key 业务key + * @param expireTime 过期时间 + * @param initValue ID初始值 + * @param stepValue ID步长 + * @return 唯一id + */ + public static String nextIdStr(String key, Duration expireTime, Long initValue, Long stepValue) { + return String.valueOf(nextId(key, expireTime, initValue, stepValue)); + } + + /** + * 获取指定业务key的唯一id (ID初始值=1,ID步长=1) + * + * @param key 业务key + * @param expireTime 过期时间 + * @return 唯一id + */ + public static long nextId(String key, Duration expireTime) { + return getIdGenerator(key, expireTime, DEFAULT_INIT_VALUE, DEFAULT_STEP_VALUE).nextId(); + } + + /** + * 获取指定业务key的唯一id字符串 (ID初始值=1,ID步长=1) + * + * @param key 业务key + * @param expireTime 过期时间 + * @return 唯一id + */ + public static String nextIdStr(String key, Duration expireTime) { + return String.valueOf(nextId(key, expireTime)); + } + + /** + * 获取 yyyyMMdd 开头的唯一id + * + * @return 唯一id + */ + public static String nextIdDate() { + return nextIdDate(""); + } + + /** + * 获取 prefix + yyyyMMdd 开头的唯一id + * + * @param prefix 业务前缀 + * @return 唯一id + */ + public static String nextIdDate(String prefix) { + // 前缀+日期 构建 prefixKey + String prefixKey = StringUtils.format("{}{}", StringUtils.blankToDefault(prefix, ""), DateUtil.format(DateUtil.date(), DatePattern.PURE_DATE_FORMATTER)); + // 获取下一个id + long nextId = getIdGenerator(prefixKey, DEFAULT_EXPIRE_TIME_DAY, DEFAULT_INIT_VALUE, DEFAULT_STEP_VALUE).nextId(); + // 返回完整id + return StringUtils.format("{}{}", prefixKey, nextId); + } + + /** + * 获取 yyyyMMddHHmmss 开头的唯一id + * + * @return 唯一id + */ + public static String nextIdDateTime() { + return nextIdDateTime(""); + } + + /** + * 获取 prefix + yyyyMMddHHmmss 开头的唯一id + * + * @param prefix 业务前缀 + * @return 唯一id + */ + public static String nextIdDateTime(String prefix) { + // 前缀+日期时间 构建 prefixKey + String prefixKey = StringUtils.format("{}{}", StringUtils.blankToDefault(prefix, ""), DateUtil.format(DateUtil.date(), DatePattern.PURE_DATETIME_FORMATTER)); + // 获取下一个id + long nextId = getIdGenerator(prefixKey, DEFAULT_EXPIRE_TIME_MINUTE, DEFAULT_INIT_VALUE, DEFAULT_STEP_VALUE).nextId(); + // 返回完整id + return StringUtils.format("{}{}", prefixKey, nextId); + } + +} -- Gitee From 8a731efe0dc5e47cac75cab8373aedc21eba04be Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Wed, 11 Dec 2024 14:01:41 +0800 Subject: [PATCH 311/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20workflow?= =?UTF-8?q?=20=E6=A8=A1=E5=9D=97=E5=A2=9E=E5=8A=A0=E6=8E=A5=E5=8F=A3?= =?UTF-8?q?=E6=96=87=E6=A1=A3=E7=94=9F=E6=88=90=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ruoyi-admin/src/main/resources/application.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/ruoyi-admin/src/main/resources/application.yml b/ruoyi-admin/src/main/resources/application.yml index 33fbcb7ab..dead74198 100644 --- a/ruoyi-admin/src/main/resources/application.yml +++ b/ruoyi-admin/src/main/resources/application.yml @@ -215,6 +215,8 @@ springdoc: packages-to-scan: org.dromara.system - group: 4.代码生成模块 packages-to-scan: org.dromara.generator + - group: 5.工作流模块 + packages-to-scan: org.dromara.workflow # 防止XSS攻击 xss: -- Gitee From 4598d4d843662a9274cb9b42b9abb5fa4274b70a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Wed, 11 Dec 2024 15:31:17 +0800 Subject: [PATCH 312/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E9=83=A8?= =?UTF-8?q?=E9=97=A8=E6=A0=91=E5=A2=9E=E5=8A=A0=E7=A6=81=E7=94=A8=E6=A0=87?= =?UTF-8?q?=E5=BF=97=E4=BD=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/dromara/system/service/impl/SysDeptServiceImpl.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java index a3f0b6ffc..eb95a48fe 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java @@ -110,7 +110,8 @@ public class SysDeptServiceImpl implements ISysDeptService, DeptService { tree.setId(dept.getDeptId()) .setParentId(dept.getParentId()) .setName(dept.getDeptName()) - .setWeight(dept.getOrderNum())); + .setWeight(dept.getOrderNum()) + .putExtra("disabled", SystemConstants.DISABLE.equals(dept.getStatus()))); Tree tree = trees.stream().filter(it -> it.getId().longValue() == d.getDeptId()).findFirst().get(); treeList.add(tree); } -- Gitee From d7b0dc91d5d8ee66eb710286b7f47d26564aa55d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Wed, 11 Dec 2024 18:12:31 +0800 Subject: [PATCH 313/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E5=8E=BB?= =?UTF-8?q?=E9=99=A4=E9=83=A8=E9=97=A8=E6=9F=A5=E8=AF=A2=E7=8A=B6=E6=80=81?= =?UTF-8?q?=E6=A0=A1=E9=AA=8C=20=E6=94=B9=E4=B8=BA=E5=89=8D=E7=AB=AF?= =?UTF-8?q?=E8=BF=87=E6=BB=A4=20=E4=BE=BF=E4=BA=8E=E6=9F=A5=E7=9C=8B?= =?UTF-8?q?=E7=A6=81=E7=94=A8=E9=83=A8=E9=97=A8=E4=B8=8B=E7=9A=84=E5=85=B6?= =?UTF-8?q?=E4=BB=96=E6=95=B0=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/dromara/system/service/impl/SysDeptServiceImpl.java | 2 -- 1 file changed, 2 deletions(-) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java index eb95a48fe..478a42c72 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java @@ -67,8 +67,6 @@ public class SysDeptServiceImpl implements ISysDeptService, DeptService { */ @Override public List> selectDeptTreeList(SysDeptBo bo) { - // 只查询未禁用部门 - bo.setStatus(SystemConstants.NORMAL); LambdaQueryWrapper lqw = buildQueryWrapper(bo); List depts = baseMapper.selectDeptList(lqw); return buildDeptTreeSelect(depts); -- Gitee From dd17246086672c9571994a062735453fb8356cd2 Mon Sep 17 00:00:00 2001 From: DoubleH <1402818247@qq.com> Date: Thu, 12 Dec 2024 14:15:59 +0000 Subject: [PATCH 314/540] =?UTF-8?q?!613=20refactor=20=E4=BC=98=E5=8C=96?= =?UTF-8?q?=E4=BB=A3=E7=A0=81=20*=20update=20=E4=BC=98=E5=8C=96=E4=BB=A3?= =?UTF-8?q?=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/dromara/common/core/utils/Threads.java | 12 ------------ .../mail/config/properties/MailProperties.java | 8 +++++++- .../common/sse/core/SseEmitterManager.java | 12 ++++++------ .../demo/controller/RedisCacheController.java | 7 ++----- .../demo/controller/RedisLockController.java | 17 +++++------------ .../controller/system/SysClientController.java | 2 +- .../controller/system/SysUserController.java | 2 +- .../system/service/ISysClientService.java | 2 +- .../service/impl/SysClientServiceImpl.java | 2 +- .../system/service/impl/SysDeptServiceImpl.java | 2 +- .../service/impl/SysLogininforServiceImpl.java | 3 +-- .../service/impl/SysOperLogServiceImpl.java | 3 +-- 12 files changed, 27 insertions(+), 45 deletions(-) diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/Threads.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/Threads.java index ae6cfa322..82ea5caf1 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/Threads.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/Threads.java @@ -14,18 +14,6 @@ import java.util.concurrent.*; @Slf4j @NoArgsConstructor(access = AccessLevel.PRIVATE) public class Threads { - - /** - * sleep等待,单位为毫秒 - */ - public static void sleep(long milliseconds) { - try { - Thread.sleep(milliseconds); - } catch (InterruptedException e) { - return; - } - } - /** * 停止线程池 * 先使用shutdown, 停止接收新任务并尝试完成所有已存在任务. diff --git a/ruoyi-common/ruoyi-common-mail/src/main/java/org/dromara/common/mail/config/properties/MailProperties.java b/ruoyi-common/ruoyi-common-mail/src/main/java/org/dromara/common/mail/config/properties/MailProperties.java index d0e78a2ca..e44aa3da3 100644 --- a/ruoyi-common/ruoyi-common-mail/src/main/java/org/dromara/common/mail/config/properties/MailProperties.java +++ b/ruoyi-common/ruoyi-common-mail/src/main/java/org/dromara/common/mail/config/properties/MailProperties.java @@ -43,7 +43,13 @@ public class MailProperties { private String pass; /** - * 发送方,遵循RFC-822标准 + * 发送方,遵循RFC-822标准
+ * 发件人可以是以下形式: + * + *
+     * 1. user@xxx.xx
+     * 2.  name <user@xxx.xx>
+     * 
*/ private String from; diff --git a/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/core/SseEmitterManager.java b/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/core/SseEmitterManager.java index c26adca50..fd22db694 100644 --- a/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/core/SseEmitterManager.java +++ b/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/core/SseEmitterManager.java @@ -126,10 +126,10 @@ public class SseEmitterManager { SseMessageDto broadcastMessage = new SseMessageDto(); broadcastMessage.setMessage(sseMessageDto.getMessage()); broadcastMessage.setUserIds(sseMessageDto.getUserIds()); - RedisUtils.publish(SSE_TOPIC, broadcastMessage, consumer -> { + RedisUtils.publish(SSE_TOPIC, broadcastMessage, consumer -> log.info("SSE发送主题订阅消息topic:{} session keys:{} message:{}", - SSE_TOPIC, sseMessageDto.getUserIds(), sseMessageDto.getMessage()); - }); + SSE_TOPIC, sseMessageDto.getUserIds(), sseMessageDto.getMessage()) + ); } /** @@ -140,8 +140,8 @@ public class SseEmitterManager { public void publishAll(String message) { SseMessageDto broadcastMessage = new SseMessageDto(); broadcastMessage.setMessage(message); - RedisUtils.publish(SSE_TOPIC, broadcastMessage, consumer -> { - log.info("SSE发送主题订阅消息topic:{} message:{}", SSE_TOPIC, message); - }); + RedisUtils.publish(SSE_TOPIC, broadcastMessage, consumer -> + log.info("SSE发送主题订阅消息topic:{} message:{}", SSE_TOPIC, message) + ); } } diff --git a/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/RedisCacheController.java b/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/RedisCacheController.java index 341880c5d..303cf885d 100644 --- a/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/RedisCacheController.java +++ b/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/RedisCacheController.java @@ -1,5 +1,6 @@ package org.dromara.demo.controller; +import cn.hutool.core.thread.ThreadUtil; import org.dromara.common.core.constant.CacheNames; import org.dromara.common.core.domain.R; import org.dromara.common.redis.utils.RedisUtils; @@ -83,11 +84,7 @@ public class RedisCacheController { RedisUtils.setCacheObject(key, value); boolean flag = RedisUtils.expire(key, Duration.ofSeconds(10)); System.out.println("***********" + flag); - try { - Thread.sleep(11 * 1000); - } catch (InterruptedException e) { - e.printStackTrace(); - } + ThreadUtil.sleep(11 * 1000); Object obj = RedisUtils.getCacheObject(key); return R.ok(value.equals(obj)); } diff --git a/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/RedisLockController.java b/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/RedisLockController.java index b7e096266..237b6ee2d 100644 --- a/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/RedisLockController.java +++ b/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/RedisLockController.java @@ -1,5 +1,6 @@ package org.dromara.demo.controller; +import cn.hutool.core.thread.ThreadUtil; import com.baomidou.lock.LockInfo; import com.baomidou.lock.LockTemplate; import com.baomidou.lock.annotation.Lock4j; @@ -33,13 +34,9 @@ public class RedisLockController { @Lock4j(keys = {"#key"}) @GetMapping("/testLock4j") public R testLock4j(String key, String value) { - System.out.println("start:" + key + ",time:" + LocalTime.now().toString()); - try { - Thread.sleep(10000); - } catch (InterruptedException e) { - e.printStackTrace(); - } - System.out.println("end :" + key + ",time:" + LocalTime.now().toString()); + System.out.println("start:" + key + ",time:" + LocalTime.now()); + ThreadUtil.sleep(10000); + System.out.println("end :" + key + ",time:" + LocalTime.now()); return R.ok("操作成功", value); } @@ -54,11 +51,7 @@ public class RedisLockController { } // 获取锁成功,处理业务 try { - try { - Thread.sleep(8000); - } catch (InterruptedException e) { - // - } + ThreadUtil.sleep(8000); System.out.println("执行简单方法1 , 当前线程:" + Thread.currentThread().getName()); } finally { //释放锁 diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysClientController.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysClientController.java index 13be4a4a9..eaed06847 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysClientController.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysClientController.java @@ -97,7 +97,7 @@ public class SysClientController extends BaseController { @Log(title = "客户端管理", businessType = BusinessType.UPDATE) @PutMapping("/changeStatus") public R changeStatus(@RequestBody SysClientBo bo) { - return toAjax(sysClientService.updateUserStatus(bo.getClientId(), bo.getStatus())); + return toAjax(sysClientService.updateClientStatus(bo.getClientId(), bo.getStatus())); } /** diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysUserController.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysUserController.java index d4cecbe14..e1e868a6e 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysUserController.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysUserController.java @@ -218,7 +218,7 @@ public class SysUserController extends BaseController { @GetMapping("/optionselect") public R> optionselect(@RequestParam(required = false) Long[] userIds, @RequestParam(required = false) Long deptId) { - return R.ok(userService.selectUserByIds(userIds == null ? null : List.of(userIds), deptId)); + return R.ok(userService.selectUserByIds(ArrayUtil.isEmpty(userIds) ? null : List.of(userIds), deptId)); } /** diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysClientService.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysClientService.java index d0f8a3cbe..546c3f33a 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysClientService.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysClientService.java @@ -50,7 +50,7 @@ public interface ISysClientService { /** * 修改状态 */ - int updateUserStatus(String clientId, String status); + int updateClientStatus(String clientId, String status); /** * 校验并批量删除客户端管理信息 diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysClientServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysClientServiceImpl.java index 1c6924320..4f6e676df 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysClientServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysClientServiceImpl.java @@ -123,7 +123,7 @@ public class SysClientServiceImpl implements ISysClientService { */ @CacheEvict(cacheNames = CacheNames.SYS_CLIENT, key = "#clientId") @Override - public int updateUserStatus(String clientId, String status) { + public int updateClientStatus(String clientId, String status) { return baseMapper.update(null, new LambdaUpdateWrapper() .set(SysClient::getStatus, status) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java index 478a42c72..98c1bd644 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java @@ -110,7 +110,7 @@ public class SysDeptServiceImpl implements ISysDeptService, DeptService { .setName(dept.getDeptName()) .setWeight(dept.getOrderNum()) .putExtra("disabled", SystemConstants.DISABLE.equals(dept.getStatus()))); - Tree tree = trees.stream().filter(it -> it.getId().longValue() == d.getDeptId()).findFirst().get(); + Tree tree = StreamUtils.findFirst(trees, it -> it.getId().longValue() == d.getDeptId()); treeList.add(tree); } } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysLogininforServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysLogininforServiceImpl.java index b95baf44b..72b497eca 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysLogininforServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysLogininforServiceImpl.java @@ -118,8 +118,7 @@ public class SysLogininforServiceImpl implements ISysLogininforService { .between(params.get("beginTime") != null && params.get("endTime") != null, SysLogininfor::getLoginTime, params.get("beginTime"), params.get("endTime")); if (StringUtils.isBlank(pageQuery.getOrderByColumn())) { - pageQuery.setOrderByColumn("info_id"); - pageQuery.setIsAsc("desc"); + lqw.orderByDesc(SysLogininfor::getInfoId); } Page page = baseMapper.selectVoPage(pageQuery.build(), lqw); return TableDataInfo.build(page); diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOperLogServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOperLogServiceImpl.java index 750e455ac..27c2f32d5 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOperLogServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOperLogServiceImpl.java @@ -53,8 +53,7 @@ public class SysOperLogServiceImpl implements ISysOperLogService { public TableDataInfo selectPageOperLogList(SysOperLogBo operLog, PageQuery pageQuery) { LambdaQueryWrapper lqw = buildQueryWrapper(operLog); if (StringUtils.isBlank(pageQuery.getOrderByColumn())) { - pageQuery.setOrderByColumn("oper_id"); - pageQuery.setIsAsc("desc"); + lqw.orderByDesc(SysOperLog::getOperId); } Page page = baseMapper.selectVoPage(pageQuery.build(), lqw); return TableDataInfo.build(page); -- Gitee From 4352b3fe4af884ba23a4461d517267a1fe852741 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 12 Dec 2024 22:20:32 +0800 Subject: [PATCH 315/540] =?UTF-8?q?update=20=E5=9B=9E=E9=80=80=E4=B8=80?= =?UTF-8?q?=E4=BA=9B=E4=B8=8D=E5=BA=94=E8=AF=A5=E8=A2=AB=E4=BC=98=E5=8C=96?= =?UTF-8?q?=E7=9A=84=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dromara/common/sse/core/SseEmitterManager.java | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/core/SseEmitterManager.java b/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/core/SseEmitterManager.java index fd22db694..c26adca50 100644 --- a/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/core/SseEmitterManager.java +++ b/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/core/SseEmitterManager.java @@ -126,10 +126,10 @@ public class SseEmitterManager { SseMessageDto broadcastMessage = new SseMessageDto(); broadcastMessage.setMessage(sseMessageDto.getMessage()); broadcastMessage.setUserIds(sseMessageDto.getUserIds()); - RedisUtils.publish(SSE_TOPIC, broadcastMessage, consumer -> + RedisUtils.publish(SSE_TOPIC, broadcastMessage, consumer -> { log.info("SSE发送主题订阅消息topic:{} session keys:{} message:{}", - SSE_TOPIC, sseMessageDto.getUserIds(), sseMessageDto.getMessage()) - ); + SSE_TOPIC, sseMessageDto.getUserIds(), sseMessageDto.getMessage()); + }); } /** @@ -140,8 +140,8 @@ public class SseEmitterManager { public void publishAll(String message) { SseMessageDto broadcastMessage = new SseMessageDto(); broadcastMessage.setMessage(message); - RedisUtils.publish(SSE_TOPIC, broadcastMessage, consumer -> - log.info("SSE发送主题订阅消息topic:{} message:{}", SSE_TOPIC, message) - ); + RedisUtils.publish(SSE_TOPIC, broadcastMessage, consumer -> { + log.info("SSE发送主题订阅消息topic:{} message:{}", SSE_TOPIC, message); + }); } } -- Gitee From 0027f671d2a99b29aa0cb68c46820abdd24f906e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 12 Dec 2024 23:31:26 +0800 Subject: [PATCH 316/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E7=99=BB?= =?UTF-8?q?=E5=BD=95=E7=94=A8=E6=88=B7=E5=A2=9E=E5=8A=A0=E5=B2=97=E4=BD=8D?= =?UTF-8?q?=E6=95=B0=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dromara/web/service/SysLoginService.java | 13 ++++-- .../common/core/domain/dto/PostDTO.java | 46 +++++++++++++++++++ .../common/core/domain/model/LoginUser.java | 8 +++- .../common/core/service/PostService.java | 10 ++++ .../system/service/ISysPostService.java | 8 ++++ .../service/impl/SysPostServiceImpl.java | 14 +++++- 6 files changed, 93 insertions(+), 6 deletions(-) create mode 100644 ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/PostDTO.java create mode 100644 ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/service/PostService.java diff --git a/ruoyi-admin/src/main/java/org/dromara/web/service/SysLoginService.java b/ruoyi-admin/src/main/java/org/dromara/web/service/SysLoginService.java index 2eae90ab7..41a802b44 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/service/SysLoginService.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/service/SysLoginService.java @@ -14,6 +14,7 @@ import org.dromara.common.core.constant.CacheConstants; import org.dromara.common.core.constant.Constants; import org.dromara.common.core.constant.SystemConstants; import org.dromara.common.core.constant.TenantConstants; +import org.dromara.common.core.domain.dto.PostDTO; import org.dromara.common.core.domain.dto.RoleDTO; import org.dromara.common.core.domain.model.LoginUser; import org.dromara.common.core.enums.LoginType; @@ -60,6 +61,7 @@ public class SysLoginService { private final ISysSocialService sysSocialService; private final ISysRoleService roleService; private final ISysDeptService deptService; + private final ISysPostService postService; private final SysUserMapper userMapper; @@ -148,21 +150,24 @@ public class SysLoginService { */ public LoginUser buildLoginUser(SysUserVo user) { LoginUser loginUser = new LoginUser(); + Long userId = user.getUserId(); loginUser.setTenantId(user.getTenantId()); - loginUser.setUserId(user.getUserId()); + loginUser.setUserId(userId); loginUser.setDeptId(user.getDeptId()); loginUser.setUsername(user.getUserName()); loginUser.setNickname(user.getNickName()); loginUser.setUserType(user.getUserType()); - loginUser.setMenuPermission(permissionService.getMenuPermission(user.getUserId())); - loginUser.setRolePermission(permissionService.getRolePermission(user.getUserId())); + loginUser.setMenuPermission(permissionService.getMenuPermission(userId)); + loginUser.setRolePermission(permissionService.getRolePermission(userId)); if (ObjectUtil.isNotNull(user.getDeptId())) { Opt deptOpt = Opt.of(user.getDeptId()).map(deptService::selectDeptById); loginUser.setDeptName(deptOpt.map(SysDeptVo::getDeptName).orElse(StringUtils.EMPTY)); loginUser.setDeptCategory(deptOpt.map(SysDeptVo::getDeptCategory).orElse(StringUtils.EMPTY)); } - List roles = roleService.selectRolesByUserId(user.getUserId()); + List roles = roleService.selectRolesByUserId(userId); + List posts = postService.selectPostsByUserId(userId); loginUser.setRoles(BeanUtil.copyToList(roles, RoleDTO.class)); + loginUser.setPosts(BeanUtil.copyToList(posts, PostDTO.class)); return loginUser; } diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/PostDTO.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/PostDTO.java new file mode 100644 index 000000000..7536ee33d --- /dev/null +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/PostDTO.java @@ -0,0 +1,46 @@ +package org.dromara.common.core.domain.dto; + +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.io.Serial; +import java.io.Serializable; + +/** + * 岗位 + * + * @author AprilWind + */ +@Data +@NoArgsConstructor +public class PostDTO implements Serializable { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 岗位ID + */ + private Long postId; + + /** + * 部门id + */ + private Long deptId; + + /** + * 岗位编码 + */ + private String postCode; + + /** + * 岗位名称 + */ + private String postName; + + /** + * 岗位类别编码 + */ + private String postCategory; + +} diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/model/LoginUser.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/model/LoginUser.java index c723e7668..338d4d70a 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/model/LoginUser.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/model/LoginUser.java @@ -1,8 +1,9 @@ package org.dromara.common.core.domain.model; -import org.dromara.common.core.domain.dto.RoleDTO; import lombok.Data; import lombok.NoArgsConstructor; +import org.dromara.common.core.domain.dto.PostDTO; +import org.dromara.common.core.domain.dto.RoleDTO; import java.io.Serial; import java.io.Serializable; @@ -111,6 +112,11 @@ public class LoginUser implements Serializable { */ private List roles; + /** + * 岗位对象 + */ + private List posts; + /** * 数据权限 当前角色ID */ diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/service/PostService.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/service/PostService.java new file mode 100644 index 000000000..41d4e8308 --- /dev/null +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/service/PostService.java @@ -0,0 +1,10 @@ +package org.dromara.common.core.service; + +/** + * 通用 岗位服务 + * + * @author AprilWind + */ +public interface PostService { + +} diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysPostService.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysPostService.java index 3751b23be..a760d497e 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysPostService.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysPostService.java @@ -25,6 +25,14 @@ public interface ISysPostService { */ List selectPostList(SysPostBo post); + /** + * 查询用户所属岗位组 + * + * @param userId 用户ID + * @return 岗位ID + */ + List selectPostsByUserId(Long userId); + /** * 查询所有岗位 * diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysPostServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysPostServiceImpl.java index 8643f0d92..72f1a5e31 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysPostServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysPostServiceImpl.java @@ -8,6 +8,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import lombok.RequiredArgsConstructor; import org.dromara.common.core.constant.SystemConstants; import org.dromara.common.core.exception.ServiceException; +import org.dromara.common.core.service.PostService; import org.dromara.common.core.utils.MapstructUtils; import org.dromara.common.core.utils.StreamUtils; import org.dromara.common.core.utils.StringUtils; @@ -34,7 +35,7 @@ import java.util.List; */ @RequiredArgsConstructor @Service -public class SysPostServiceImpl implements ISysPostService { +public class SysPostServiceImpl implements ISysPostService, PostService { private final SysPostMapper baseMapper; private final SysDeptMapper deptMapper; @@ -57,6 +58,17 @@ public class SysPostServiceImpl implements ISysPostService { return baseMapper.selectVoList(buildQueryWrapper(post)); } + /** + * 查询用户所属岗位组 + * + * @param userId 用户ID + * @return 岗位ID + */ + @Override + public List selectPostsByUserId(Long userId) { + return baseMapper.selectPostsByUserId(userId); + } + /** * 根据查询条件构建查询包装器 * -- Gitee From ab3e4978b1be42097b269c10927bb51f11a63d78 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 12 Dec 2024 23:32:33 +0800 Subject: [PATCH 317/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E4=B8=BA?= =?UTF-8?q?=E9=83=A8=E9=97=A8=E8=A7=92=E8=89=B2=E5=B2=97=E4=BD=8D=E7=94=A8?= =?UTF-8?q?=E6=88=B7=E5=A2=9E=E5=8A=A0=E4=B8=80=E4=BA=9B=E5=B8=B8=E7=94=A8?= =?UTF-8?q?=E6=9F=A5=E8=AF=A2=E6=96=B9=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/core/domain/dto/DeptDTO.java | 37 +++++++++++++++++++ .../common/core/service/DeptService.java | 19 ++++++++++ .../common/core/service/RoleService.java | 10 +++++ .../common/core/service/UserService.java | 9 +++++ .../common/mybatis/core/page/PageQuery.java | 5 +++ .../common/satoken/utils/LoginHelper.java | 7 ++++ .../dromara/system/mapper/SysDeptMapper.java | 12 ++++++ .../service/impl/SysDeptServiceImpl.java | 27 ++++++++++++++ .../service/impl/SysRoleServiceImpl.java | 7 ++-- .../service/impl/SysUserServiceImpl.java | 23 ++++++++++++ .../resources/mapper/system/SysDeptMapper.xml | 11 ++++++ 11 files changed, 164 insertions(+), 3 deletions(-) create mode 100644 ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/DeptDTO.java create mode 100644 ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/service/RoleService.java diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/DeptDTO.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/DeptDTO.java new file mode 100644 index 000000000..65c012faf --- /dev/null +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/DeptDTO.java @@ -0,0 +1,37 @@ +package org.dromara.common.core.domain.dto; + +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.io.Serial; +import java.io.Serializable; + +/** + * 部门 + * + * @author AprilWind + */ + +@Data +@NoArgsConstructor +public class DeptDTO implements Serializable { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 部门ID + */ + private Long deptId; + + /** + * 父部门ID + */ + private Long parentId; + + /** + * 部门名称 + */ + private String deptName; + +} diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/service/DeptService.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/service/DeptService.java index db9463e79..f93d1778a 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/service/DeptService.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/service/DeptService.java @@ -1,5 +1,9 @@ package org.dromara.common.core.service; +import org.dromara.common.core.domain.dto.DeptDTO; + +import java.util.List; + /** * 通用 部门服务 * @@ -15,4 +19,19 @@ public interface DeptService { */ String selectDeptNameByIds(String deptIds); + /** + * 根据部门ID查询部门负责人 + * + * @param deptId 部门ID,用于指定需要查询的部门 + * @return 返回该部门的负责人ID + */ + Long selectDeptLeaderById(Long deptId); + + /** + * 查询部门 + * + * @return 部门列表 + */ + List selectDeptsByList(); + } diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/service/RoleService.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/service/RoleService.java new file mode 100644 index 000000000..ba62c82ae --- /dev/null +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/service/RoleService.java @@ -0,0 +1,10 @@ +package org.dromara.common.core.service; + +/** + * 通用 角色服务 + * + * @author AprilWind + */ +public interface RoleService { + +} diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/service/UserService.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/service/UserService.java index 43aef28cb..67cd54fba 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/service/UserService.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/service/UserService.java @@ -82,4 +82,13 @@ public interface UserService { * @return 用户 */ List selectUsersByDeptIds(List deptIds); + + /** + * 通过岗位ID查询用户 + * + * @param postIds 岗位ids + * @return 用户 + */ + List selectUsersByPostIds(List postIds); + } diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/core/page/PageQuery.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/core/page/PageQuery.java index 3f7797d6b..1d5c3c9da 100644 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/core/page/PageQuery.java +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/core/page/PageQuery.java @@ -119,4 +119,9 @@ public class PageQuery implements Serializable { return (pageNum - 1) * pageSize; } + public PageQuery(Integer pageSize, Integer pageNum) { + this.pageSize = pageSize; + this.pageNum = pageNum; + } + } diff --git a/ruoyi-common/ruoyi-common-satoken/src/main/java/org/dromara/common/satoken/utils/LoginHelper.java b/ruoyi-common/ruoyi-common-satoken/src/main/java/org/dromara/common/satoken/utils/LoginHelper.java index cdc5684fa..19557e131 100644 --- a/ruoyi-common/ruoyi-common-satoken/src/main/java/org/dromara/common/satoken/utils/LoginHelper.java +++ b/ruoyi-common/ruoyi-common-satoken/src/main/java/org/dromara/common/satoken/utils/LoginHelper.java @@ -88,6 +88,13 @@ public class LoginHelper { return Convert.toLong(getExtra(USER_KEY)); } + /** + * 获取用户id + */ + public static String getUserIdStr() { + return Convert.toStr(getExtra(USER_KEY)); + } + /** * 获取用户账户 */ diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysDeptMapper.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysDeptMapper.java index 0f2c90667..b69624cf0 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysDeptMapper.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysDeptMapper.java @@ -3,6 +3,7 @@ package org.dromara.system.mapper; import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Constants; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import org.apache.ibatis.annotations.Param; import org.dromara.common.mybatis.annotation.DataColumn; import org.dromara.common.mybatis.annotation.DataPermission; @@ -31,6 +32,17 @@ public interface SysDeptMapper extends BaseMapperPlus { }) List selectDeptList(@Param(Constants.WRAPPER) Wrapper queryWrapper); + /** + * 分页查询部门管理数据 + * + * @param queryWrapper 查询条件 + * @return 部门信息集合 + */ + @DataPermission({ + @DataColumn(key = "deptName", value = "dept_id"), + }) + Page selectPageDeptList(@Param("page") Page page, @Param(Constants.WRAPPER) Wrapper queryWrapper); + /** * 统计指定部门ID的部门数量 * diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java index 98c1bd644..be9e33d8b 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java @@ -1,5 +1,6 @@ package org.dromara.system.service.impl; +import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.convert.Convert; import cn.hutool.core.lang.tree.Tree; @@ -10,6 +11,7 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers; import lombok.RequiredArgsConstructor; import org.dromara.common.core.constant.CacheNames; import org.dromara.common.core.constant.SystemConstants; +import org.dromara.common.core.domain.dto.DeptDTO; import org.dromara.common.core.exception.ServiceException; import org.dromara.common.core.service.DeptService; import org.dromara.common.core.utils.*; @@ -354,4 +356,29 @@ public class SysDeptServiceImpl implements ISysDeptService, DeptService { return baseMapper.deleteById(deptId); } + /** + * 根据部门ID查询部门负责人 + * + * @param deptId 部门ID,用于指定需要查询的部门 + * @return 返回该部门的负责人ID + */ + @Override + public Long selectDeptLeaderById(Long deptId) { + SysDeptVo vo = SpringUtils.getAopProxy(this).selectDeptById(deptId); + return vo.getLeader(); + } + + /** + * 查询部门 + * + * @return 部门列表 + */ + @Override + public List selectDeptsByList() { + List list = baseMapper.selectDeptList(new LambdaQueryWrapper() + .select(SysDept::getDeptId, SysDept::getDeptName, SysDept::getParentId) + .eq(SysDept::getStatus, SystemConstants.NORMAL)); + return BeanUtil.copyToList(list, DeptDTO.class); + } + } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysRoleServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysRoleServiceImpl.java index cbca57e5d..4c007358e 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysRoleServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysRoleServiceImpl.java @@ -17,6 +17,7 @@ import org.dromara.common.core.constant.SystemConstants; import org.dromara.common.core.constant.TenantConstants; import org.dromara.common.core.domain.model.LoginUser; import org.dromara.common.core.exception.ServiceException; +import org.dromara.common.core.service.RoleService; import org.dromara.common.core.utils.MapstructUtils; import org.dromara.common.core.utils.StreamUtils; import org.dromara.common.core.utils.StringUtils; @@ -47,7 +48,7 @@ import java.util.*; */ @RequiredArgsConstructor @Service -public class SysRoleServiceImpl implements ISysRoleService { +public class SysRoleServiceImpl implements ISysRoleService, RoleService { private final SysRoleMapper baseMapper; private final SysRoleMenuMapper roleMenuMapper; @@ -351,7 +352,7 @@ public class SysRoleServiceImpl implements ISysRoleService { private int insertRoleMenu(SysRoleBo role) { int rows = 1; // 新增用户与角色管理 - List list = new ArrayList(); + List list = new ArrayList<>(); for (Long menuId : role.getMenuIds()) { SysRoleMenu rm = new SysRoleMenu(); rm.setRoleId(role.getRoleId()); @@ -372,7 +373,7 @@ public class SysRoleServiceImpl implements ISysRoleService { private int insertRoleDept(SysRoleBo role) { int rows = 1; // 新增角色与部门(数据权限)管理 - List list = new ArrayList(); + List list = new ArrayList<>(); for (Long deptId : role.getDeptIds()) { SysRoleDept rd = new SysRoleDept(); rd.setRoleId(role.getRoleId()); diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java index 4b5758763..40811707b 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java @@ -696,4 +696,27 @@ public class SysUserServiceImpl implements ISysUserService, UserService { .in(SysUser::getDeptId, deptIds)); return BeanUtil.copyToList(list, UserDTO.class); } + + /** + * 通过岗位ID查询用户 + * + * @param postIds 岗位ids + * @return 用户 + */ + @Override + public List selectUsersByPostIds(List postIds) { + if (CollUtil.isEmpty(postIds)) { + return List.of(); + } + + // 通过岗位ID获取用户岗位信息 + List userPosts = userPostMapper.selectList( + new LambdaQueryWrapper().in(SysUserPost::getPostId, postIds)); + + // 获取用户ID列表 + Set userIds = StreamUtils.toSet(userPosts, SysUserPost::getUserId); + + return selectListByIds(new ArrayList<>(userIds)); + } + } diff --git a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysDeptMapper.xml b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysDeptMapper.xml index 6ad866f29..9057a0e22 100644 --- a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysDeptMapper.xml +++ b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysDeptMapper.xml @@ -18,6 +18,17 @@ from sys_dept ${ew.getCustomSqlSegment} + + -- Gitee From 29c5ff89babf045035478b66961ca8c117375f5d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 12 Dec 2024 23:33:00 +0800 Subject: [PATCH 318/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E9=87=8D?= =?UTF-8?q?=E6=9E=84DateUtils=E5=B7=A5=E5=85=B7=E7=B1=BB=20=E6=9B=B4?= =?UTF-8?q?=E5=8A=A0=E5=AE=9E=E7=94=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/core/enums/FormatsType.java | 146 ++++++++++ .../dromara/common/core/utils/DateUtils.java | 252 +++++++++++++----- 2 files changed, 331 insertions(+), 67 deletions(-) create mode 100644 ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/enums/FormatsType.java diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/enums/FormatsType.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/enums/FormatsType.java new file mode 100644 index 000000000..8d4b6d911 --- /dev/null +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/enums/FormatsType.java @@ -0,0 +1,146 @@ +package org.dromara.common.core.enums; + +import lombok.AllArgsConstructor; +import lombok.Getter; +import org.dromara.common.core.utils.StringUtils; + +/* + * 日期格式 + * "yyyy":4位数的年份,例如:2023年表示为"2023"。 + * "yy":2位数的年份,例如:2023年表示为"23"。 + * "MM":2位数的月份,取值范围为01到12,例如:7月表示为"07"。 + * "M":不带前导零的月份,取值范围为1到12,例如:7月表示为"7"。 + * "dd":2位数的日期,取值范围为01到31,例如:22日表示为"22"。 + * "d":不带前导零的日期,取值范围为1到31,例如:22日表示为"22"。 + * "EEEE":星期的全名,例如:星期三表示为"Wednesday"。 + * "E":星期的缩写,例如:星期三表示为"Wed"。 + * "DDD" 或 "D":一年中的第几天,取值范围为001到366,例如:第200天表示为"200"。 + * 时间格式 + * "HH":24小时制的小时数,取值范围为00到23,例如:下午5点表示为"17"。 + * "hh":12小时制的小时数,取值范围为01到12,例如:下午5点表示为"05"。 + * "mm":分钟数,取值范围为00到59,例如:30分钟表示为"30"。 + * "ss":秒数,取值范围为00到59,例如:45秒表示为"45"。 + * "SSS":毫秒数,取值范围为000到999,例如:123毫秒表示为"123"。 + */ + +/** + * 日期格式与时间格式枚举 + */ +@Getter +@AllArgsConstructor +public enum FormatsType { + + /** + * 例如:2023年表示为"23" + */ + YY("yy"), + + /** + * 例如:2023年表示为"2023" + */ + YYYY("yyyy"), + + /** + * 例例如,2023年7月可以表示为 "2023-07" + */ + YYYY_MM("yyyy-MM"), + + /** + * 例如,日期 "2023年7月22日" 可以表示为 "2023-07-22" + */ + YYYY_MM_DD("yyyy-MM-dd"), + + /** + * 例如,当前时间如果是 "2023年7月22日下午3点30分",则可以表示为 "2023-07-22 15:30" + */ + YYYY_MM_DD_HH_MM("yyyy-MM-dd HH:mm"), + + /** + * 例如,当前时间如果是 "2023年7月22日下午3点30分45秒",则可以表示为 "2023-07-22 15:30:45" + */ + YYYY_MM_DD_HH_MM_SS("yyyy-MM-dd HH:mm:ss"), + + /** + * 例如:下午3点30分45秒,表示为 "15:30:45" + */ + HH_MM_SS("HH:mm:ss"), + + /** + * 例例如,2023年7月可以表示为 "2023/07" + */ + YYYY_MM_SLASH("yyyy/MM"), + + /** + * 例如,日期 "2023年7月22日" 可以表示为 "2023/07/22" + */ + YYYY_MM_DD_SLASH("yyyy/MM/dd"), + + /** + * 例如,当前时间如果是 "2023年7月22日下午3点30分45秒",则可以表示为 "2023/07/22 15:30:45" + */ + YYYY_MM_DD_HH_MM_SLASH("yyyy/MM/dd HH:mm"), + + /** + * 例如,当前时间如果是 "2023年7月22日下午3点30分45秒",则可以表示为 "2023/07/22 15:30:45" + */ + YYYY_MM_DD_HH_MM_SS_SLASH("yyyy/MM/dd HH:mm:ss"), + + /** + * 例例如,2023年7月可以表示为 "2023.07" + */ + YYYY_MM_DOT("yyyy.MM"), + + /** + * 例如,日期 "2023年7月22日" 可以表示为 "2023.07.22" + */ + YYYY_MM_DD_DOT("yyyy.MM.dd"), + + /** + * 例如,当前时间如果是 "2023年7月22日下午3点30分",则可以表示为 "2023.07.22 15:30" + */ + YYYY_MM_DD_HH_MM_DOT("yyyy.MM.dd HH:mm"), + + /** + * 例如,当前时间如果是 "2023年7月22日下午3点30分45秒",则可以表示为 "2023.07.22 15:30:45" + */ + YYYY_MM_DD_HH_MM_SS_DOT("yyyy.MM.dd HH:mm:ss"), + + /** + * 例如,2023年7月可以表示为 "202307" + */ + YYYYMM("yyyyMM"), + + /** + * 例如,2023年7月22日可以表示为 "20230722" + */ + YYYYMMDD("yyyyMMdd"), + + /** + * 例如,2023年7月22日下午3点可以表示为 "2023072215" + */ + YYYYMMDDHH("yyyyMMddHH"), + + /** + * 例如,2023年7月22日下午3点30分可以表示为 "202307221530" + */ + YYYYMMDDHHMM("yyyyMMddHHmm"), + + /** + * 例如,2023年7月22日下午3点30分45秒可以表示为 "20230722153045" + */ + YYYYMMDDHHMMSS("yyyyMMddHHmmss"); + + /** + * 时间格式 + */ + private final String timeFormat; + + public static FormatsType getFormatsType(String str) { + for (FormatsType value : values()) { + if (StringUtils.contains(str, value.getTimeFormat())) { + return value; + } + } + throw new RuntimeException("'FormatsType' not found By " + str); + } +} diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/DateUtils.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/DateUtils.java index 72178a7b6..88cdbbc72 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/DateUtils.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/DateUtils.java @@ -3,16 +3,15 @@ package org.dromara.common.core.utils; import lombok.AccessLevel; import lombok.NoArgsConstructor; import org.apache.commons.lang3.time.DateFormatUtils; +import org.dromara.common.core.enums.FormatsType; +import org.dromara.common.core.exception.ServiceException; import java.lang.management.ManagementFactory; import java.text.ParseException; import java.text.SimpleDateFormat; -import java.time.LocalDate; -import java.time.LocalDateTime; -import java.time.LocalTime; -import java.time.ZoneId; -import java.time.ZonedDateTime; +import java.time.*; import java.util.Date; +import java.util.concurrent.TimeUnit; /** * 时间工具类 @@ -21,86 +20,137 @@ import java.util.Date; */ @NoArgsConstructor(access = AccessLevel.PRIVATE) public class DateUtils extends org.apache.commons.lang3.time.DateUtils { - - public static final String YYYY = "yyyy"; - - public static final String YYYY_MM = "yyyy-MM"; - - public static final String YYYY_MM_DD = "yyyy-MM-dd"; - - public static final String YYYYMMDDHHMMSS = "yyyyMMddHHmmss"; - - public static final String YYYY_MM_DD_HH_MM_SS = "yyyy-MM-dd HH:mm:ss"; - private static final String[] PARSE_PATTERNS = { "yyyy-MM-dd", "yyyy-MM-dd HH:mm:ss", "yyyy-MM-dd HH:mm", "yyyy-MM", "yyyy/MM/dd", "yyyy/MM/dd HH:mm:ss", "yyyy/MM/dd HH:mm", "yyyy/MM", "yyyy.MM.dd", "yyyy.MM.dd HH:mm:ss", "yyyy.MM.dd HH:mm", "yyyy.MM"}; /** - * 获取当前Date型日期 + * 获取当前日期和时间 * - * @return Date() 当前日期 + * @return 当前日期和时间的 Date 对象表示 */ public static Date getNowDate() { return new Date(); } /** - * 获取当前日期, 默认格式为yyyy-MM-dd + * 获取当前日期的字符串表示,格式为YYYY-MM-DD * - * @return String + * @return 当前日期的字符串表示 */ public static String getDate() { - return dateTimeNow(YYYY_MM_DD); + return dateTimeNow(FormatsType.YYYY_MM_DD); + } + + /** + * 获取当前日期的字符串表示,格式为yyyyMMdd + * + * @return 当前日期的字符串表示 + */ + public static String getCurrentDate() { + return DateFormatUtils.format(new Date(), FormatsType.YYYYMMDD.getTimeFormat()); } + /** + * 获取当前日期的路径格式字符串,格式为"yyyy/MM/dd" + * + * @return 当前日期的路径格式字符串 + */ + public static String datePath() { + Date now = new Date(); + return DateFormatUtils.format(now, FormatsType.YYYY_MM_DD_SLASH.getTimeFormat()); + } + + /** + * 获取当前时间的字符串表示,格式为YYYY-MM-DD HH:MM:SS + * + * @return 当前时间的字符串表示 + */ public static String getTime() { - return dateTimeNow(YYYY_MM_DD_HH_MM_SS); + return dateTimeNow(FormatsType.YYYY_MM_DD_HH_MM_SS); } - public static String dateTimeNow() { - return dateTimeNow(YYYYMMDDHHMMSS); + /** + * 获取当前时间的字符串表示,格式为 "HH:MM:SS" + * + * @return 当前时间的字符串表示,格式为 "HH:MM:SS" + */ + public static String getTimeWithHourMinuteSecond() { + return dateTimeNow(FormatsType.HH_MM_SS); } - public static String dateTimeNow(final String format) { - return parseDateToStr(format, new Date()); + /** + * 获取当前日期和时间的字符串表示,格式为YYYYMMDDHHMMSS + * + * @return 当前日期和时间的字符串表示 + */ + public static String dateTimeNow() { + return dateTimeNow(FormatsType.YYYYMMDDHHMMSS); } - public static String dateTime(final Date date) { - return parseDateToStr(YYYY_MM_DD, date); + /** + * 获取当前日期和时间的指定格式的字符串表示 + * + * @param format 日期时间格式,例如"YYYY-MM-DD HH:MM:SS" + * @return 当前日期和时间的字符串表示 + */ + public static String dateTimeNow(final FormatsType format) { + return parseDateToStr(format, new Date()); } - public static String parseDateToStr(final String format, final Date date) { - return new SimpleDateFormat(format).format(date); + /** + * 将指定日期格式化为 YYYY-MM-DD 格式的字符串 + * + * @param date 要格式化的日期对象 + * @return 格式化后的日期字符串 + */ + public static String formatDate(final Date date) { + return parseDateToStr(FormatsType.YYYY_MM_DD, date); } - public static Date dateTime(final String format, final String ts) { - try { - return new SimpleDateFormat(format).parse(ts); - } catch (ParseException e) { - throw new RuntimeException(e); - } + /** + * 将指定日期格式化为 YYYY-MM-DD HH:MM:SS 格式的字符串 + * + * @param date 要格式化的日期对象 + * @return 格式化后的日期时间字符串 + */ + public static String formatDateTime(final Date date) { + return parseDateToStr(FormatsType.YYYY_MM_DD_HH_MM_SS, date); } /** - * 日期路径 即年/月/日 如2018/08/08 + * 将指定日期按照指定格式进行格式化 + * + * @param format 要使用的日期时间格式,例如"YYYY-MM-DD HH:MM:SS" + * @param date 要格式化的日期对象 + * @return 格式化后的日期时间字符串 */ - public static String datePath() { - Date now = new Date(); - return DateFormatUtils.format(now, "yyyy/MM/dd"); + public static String parseDateToStr(final FormatsType format, final Date date) { + return new SimpleDateFormat(format.getTimeFormat()).format(date); } /** - * 日期路径 即年/月/日 如20180808 + * 将指定格式的日期时间字符串转换为 Date 对象 + * + * @param format 要解析的日期时间格式,例如"YYYY-MM-DD HH:MM:SS" + * @param ts 要解析的日期时间字符串 + * @return 解析后的 Date 对象 + * @throws RuntimeException 如果解析过程中发生异常 */ - public static String dateTime() { - Date now = new Date(); - return DateFormatUtils.format(now, "yyyyMMdd"); + public static Date parseDateTime(final FormatsType format, final String ts) { + try { + return new SimpleDateFormat(format.getTimeFormat()).parse(ts); + } catch (ParseException e) { + throw new RuntimeException(e); + } } /** - * 日期型字符串转化为日期 格式 + * 将对象转换为日期对象 + * + * @param str 要转换的对象,通常是字符串 + * @return 转换后的日期对象,如果转换失败或输入为null,则返回null */ public static Date parseDate(Object str) { if (str == null) { @@ -115,6 +165,8 @@ public class DateUtils extends org.apache.commons.lang3.time.DateUtils { /** * 获取服务器启动时间 + * + * @return 服务器启动时间的 Date 对象表示 */ public static Date getServerStartDate() { long time = ManagementFactory.getRuntimeMXBean().getStartTime(); @@ -122,35 +174,66 @@ public class DateUtils extends org.apache.commons.lang3.time.DateUtils { } /** - * 计算相差天数 + * 计算两个日期之间的天数差(以毫秒为单位) + * + * @param date1 第一个日期 + * @param date2 第二个日期 + * @return 两个日期之间的天数差的绝对值 */ public static int differentDaysByMillisecond(Date date1, Date date2) { return Math.abs((int) ((date2.getTime() - date1.getTime()) / (1000 * 3600 * 24))); } /** - * 计算两个时间差 + * 计算两个日期之间的时间差,并以天、小时和分钟的格式返回 + * + * @param endDate 结束日期 + * @param nowDate 当前日期 + * @return 表示时间差的字符串,格式为"天 小时 分钟" */ public static String getDatePoor(Date endDate, Date nowDate) { - long nd = 1000 * 24 * 60 * 60; - long nh = 1000 * 60 * 60; - long nm = 1000 * 60; - // long ns = 1000; - // 获得两个时间的毫秒时间差异 - long diff = endDate.getTime() - nowDate.getTime(); - // 计算差多少天 - long day = diff / nd; - // 计算差多少小时 - long hour = diff % nd / nh; - // 计算差多少分钟 - long min = diff % nd % nh / nm; - // 计算差多少秒//输出结果 - // long sec = diff % nd % nh % nm / ns; - return day + "天" + hour + "小时" + min + "分钟"; - } - - /** - * 增加 LocalDateTime ==> Date + long diffInMillis = endDate.getTime() - nowDate.getTime(); + long day = TimeUnit.MILLISECONDS.toDays(diffInMillis); + long hour = TimeUnit.MILLISECONDS.toHours(diffInMillis) % 24; + long min = TimeUnit.MILLISECONDS.toMinutes(diffInMillis) % 60; + return String.format("%d天 %d小时 %d分钟", day, hour, min); + } + + /** + * 计算两个时间点的差值(天、小时、分钟、秒),当值为0时不显示该单位 + * + * @param endDate 结束时间 + * @param nowDate 当前时间 + * @return 时间差字符串,格式为 "x天 x小时 x分钟 x秒",若为 0 则不显示 + */ + public static String getTimeDifference(Date endDate, Date nowDate) { + long diffInMillis = endDate.getTime() - nowDate.getTime(); + long day = TimeUnit.MILLISECONDS.toDays(diffInMillis); + long hour = TimeUnit.MILLISECONDS.toHours(diffInMillis) % 24; + long min = TimeUnit.MILLISECONDS.toMinutes(diffInMillis) % 60; + long sec = TimeUnit.MILLISECONDS.toSeconds(diffInMillis) % 60; + // 构建时间差字符串,条件是值不为0才显示 + StringBuilder result = new StringBuilder(); + if (day > 0) { + result.append(String.format("%d天 ", day)); + } + if (hour > 0) { + result.append(String.format("%d小时 ", hour)); + } + if (min > 0) { + result.append(String.format("%d分钟 ", min)); + } + if (sec > 0) { + result.append(String.format("%d秒", sec)); + } + return result.length() > 0 ? result.toString().trim() : "0秒"; + } + + /** + * 将 LocalDateTime 对象转换为 Date 对象 + * + * @param temporalAccessor 要转换的 LocalDateTime 对象 + * @return 转换后的 Date 对象 */ public static Date toDate(LocalDateTime temporalAccessor) { ZonedDateTime zdt = temporalAccessor.atZone(ZoneId.systemDefault()); @@ -158,11 +241,46 @@ public class DateUtils extends org.apache.commons.lang3.time.DateUtils { } /** - * 增加 LocalDate ==> Date + * 将 LocalDate 对象转换为 Date 对象 + * + * @param temporalAccessor 要转换的 LocalDate 对象 + * @return 转换后的 Date 对象 */ public static Date toDate(LocalDate temporalAccessor) { LocalDateTime localDateTime = LocalDateTime.of(temporalAccessor, LocalTime.of(0, 0, 0)); ZonedDateTime zdt = localDateTime.atZone(ZoneId.systemDefault()); return Date.from(zdt.toInstant()); } + + /** + * 校验日期范围 + * + * @param startDate 开始日期 + * @param endDate 结束日期 + * @param maxValue 最大时间跨度的限制值 + * @param unit 时间跨度的单位,可选择 "DAYS"、"HOURS" 或 "MINUTES" + */ + public static void validateDateRange(Date startDate, Date endDate, int maxValue, TimeUnit unit) { + // 校验结束日期不能早于开始日期 + if (endDate.before(startDate)) { + throw new ServiceException("结束日期不能早于开始日期"); + } + + // 计算时间跨度 + long diffInMillis = endDate.getTime() - startDate.getTime(); + + // 根据单位转换时间跨度 + long diff = switch (unit) { + case DAYS -> TimeUnit.MILLISECONDS.toDays(diffInMillis); + case HOURS -> TimeUnit.MILLISECONDS.toHours(diffInMillis); + case MINUTES -> TimeUnit.MILLISECONDS.toMinutes(diffInMillis); + default -> throw new IllegalArgumentException("不支持的时间单位"); + }; + + // 校验时间跨度不超过最大限制 + if (diff > maxValue) { + throw new ServiceException("最大时间跨度为 " + maxValue + " " + unit.toString().toLowerCase()); + } + } + } -- Gitee From c566f2ae28afa2159617bcbda325afc4646e8cd0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 12 Dec 2024 23:38:16 +0800 Subject: [PATCH 319/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E8=B0=83?= =?UTF-8?q?=E6=95=B4=E6=96=B9=E6=B3=95=E4=BD=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/SysDeptServiceImpl.java | 50 +++++++++---------- 1 file changed, 25 insertions(+), 25 deletions(-) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java index be9e33d8b..0199ec719 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java @@ -176,6 +176,31 @@ public class SysDeptServiceImpl implements ISysDeptService, DeptService { return String.join(StringUtils.SEPARATOR, list); } + /** + * 根据部门ID查询部门负责人 + * + * @param deptId 部门ID,用于指定需要查询的部门 + * @return 返回该部门的负责人ID + */ + @Override + public Long selectDeptLeaderById(Long deptId) { + SysDeptVo vo = SpringUtils.getAopProxy(this).selectDeptById(deptId); + return vo.getLeader(); + } + + /** + * 查询部门 + * + * @return 部门列表 + */ + @Override + public List selectDeptsByList() { + List list = baseMapper.selectDeptList(new LambdaQueryWrapper() + .select(SysDept::getDeptId, SysDept::getDeptName, SysDept::getParentId) + .eq(SysDept::getStatus, SystemConstants.NORMAL)); + return BeanUtil.copyToList(list, DeptDTO.class); + } + /** * 根据ID查询所有子部门数(正常状态) * @@ -356,29 +381,4 @@ public class SysDeptServiceImpl implements ISysDeptService, DeptService { return baseMapper.deleteById(deptId); } - /** - * 根据部门ID查询部门负责人 - * - * @param deptId 部门ID,用于指定需要查询的部门 - * @return 返回该部门的负责人ID - */ - @Override - public Long selectDeptLeaderById(Long deptId) { - SysDeptVo vo = SpringUtils.getAopProxy(this).selectDeptById(deptId); - return vo.getLeader(); - } - - /** - * 查询部门 - * - * @return 部门列表 - */ - @Override - public List selectDeptsByList() { - List list = baseMapper.selectDeptList(new LambdaQueryWrapper() - .select(SysDept::getDeptId, SysDept::getDeptName, SysDept::getParentId) - .eq(SysDept::getStatus, SystemConstants.NORMAL)); - return BeanUtil.copyToList(list, DeptDTO.class); - } - } -- Gitee From 0185a468bdb790ace78a37c69dbccc61063b2945 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 13 Dec 2024 00:15:30 +0800 Subject: [PATCH 320/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E5=88=A0?= =?UTF-8?q?=E9=99=A4=E6=97=A0=E7=94=A8=E6=96=B9=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/dromara/system/mapper/SysDeptMapper.java | 12 ------------ .../main/resources/mapper/system/SysDeptMapper.xml | 11 ----------- 2 files changed, 23 deletions(-) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysDeptMapper.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysDeptMapper.java index b69624cf0..0f2c90667 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysDeptMapper.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysDeptMapper.java @@ -3,7 +3,6 @@ package org.dromara.system.mapper; import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Constants; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import org.apache.ibatis.annotations.Param; import org.dromara.common.mybatis.annotation.DataColumn; import org.dromara.common.mybatis.annotation.DataPermission; @@ -32,17 +31,6 @@ public interface SysDeptMapper extends BaseMapperPlus { }) List selectDeptList(@Param(Constants.WRAPPER) Wrapper queryWrapper); - /** - * 分页查询部门管理数据 - * - * @param queryWrapper 查询条件 - * @return 部门信息集合 - */ - @DataPermission({ - @DataColumn(key = "deptName", value = "dept_id"), - }) - Page selectPageDeptList(@Param("page") Page page, @Param(Constants.WRAPPER) Wrapper queryWrapper); - /** * 统计指定部门ID的部门数量 * diff --git a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysDeptMapper.xml b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysDeptMapper.xml index 9057a0e22..6ad866f29 100644 --- a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysDeptMapper.xml +++ b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysDeptMapper.xml @@ -18,17 +18,6 @@ from sys_dept ${ew.getCustomSqlSegment} - - -- Gitee From fcebda8987a21a1a30e1fd3ec690bafed794b91f Mon Sep 17 00:00:00 2001 From: QianRj <14974713+qianrj@user.noreply.gitee.com> Date: Fri, 13 Dec 2024 20:37:55 +0800 Subject: [PATCH 321/540] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E6=9D=83=E9=99=90=E7=BC=93=E5=AD=98=E9=94=99=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dromara/system/service/impl/SysDataScopeServiceImpl.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDataScopeServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDataScopeServiceImpl.java index 470646f35..12a507203 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDataScopeServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDataScopeServiceImpl.java @@ -38,7 +38,7 @@ public class SysDataScopeServiceImpl implements ISysDataScopeService { * @param roleId 角色Id * @return 部门Id组 */ - @Cacheable(cacheNames = CacheNames.SYS_ROLE_CUSTOM, key = "#roleId") + @Cacheable(cacheNames = CacheNames.SYS_ROLE_CUSTOM, key = "#roleId", condition = "#roleId != null") @Override public String getRoleCustom(Long roleId) { if (ObjectUtil.isNull(roleId)) { @@ -60,7 +60,7 @@ public class SysDataScopeServiceImpl implements ISysDataScopeService { * @param deptId 部门Id * @return 部门Id组 */ - @Cacheable(cacheNames = CacheNames.SYS_DEPT_AND_CHILD, key = "#deptId") + @Cacheable(cacheNames = CacheNames.SYS_DEPT_AND_CHILD, key = "#deptId", condition = "#deptId != null") @Override public String getDeptAndChild(Long deptId) { if (ObjectUtil.isNull(deptId)) { -- Gitee From df6649907dbd82b2aeb4e0e676185920241506ae Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Sat, 14 Dec 2024 23:05:15 +0800 Subject: [PATCH 322/540] =?UTF-8?q?update=20justauth=201.16.6=20=3D>=201.1?= =?UTF-8?q?6.7=20=E6=94=AF=E6=8C=81=E5=A4=9A=E7=A7=8D=E7=99=BB=E5=BD=95?= =?UTF-8?q?=E6=96=B9=E5=BC=8F=20=E4=B8=8D=E9=99=90=E4=BA=8E=E4=B8=89?= =?UTF-8?q?=E6=96=B9=E7=99=BB=E5=BD=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 58672cae4..ebf2814ed 100644 --- a/pom.xml +++ b/pom.xml @@ -36,7 +36,7 @@ 0.2.0 1.18.34 1.76 - 1.16.6 + 1.16.7 2.7.0 -- Gitee From c8ed71d010d957a5873730bb03e984d8cb1ec0c7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Sat, 14 Dec 2024 23:06:09 +0800 Subject: [PATCH 323/540] =?UTF-8?q?update=20=E4=BD=BF=E7=94=A8justauth?= =?UTF-8?q?=E6=89=A9=E5=B1=95=E5=8A=9F=E8=83=BD=E6=94=AF=E6=8C=81=E5=BE=AE?= =?UTF-8?q?=E4=BF=A1=E5=B0=8F=E7=A8=8B=E5=BA=8F=E7=99=BB=E5=BD=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../web/service/impl/XcxAuthStrategy.java | 26 ++++++++++++++++--- 1 file changed, 23 insertions(+), 3 deletions(-) diff --git a/ruoyi-admin/src/main/java/org/dromara/web/service/impl/XcxAuthStrategy.java b/ruoyi-admin/src/main/java/org/dromara/web/service/impl/XcxAuthStrategy.java index 948ed9acb..fa9b61819 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/service/impl/XcxAuthStrategy.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/service/impl/XcxAuthStrategy.java @@ -5,9 +5,17 @@ import cn.dev33.satoken.stp.StpUtil; import cn.hutool.core.util.ObjectUtil; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; +import me.zhyd.oauth.config.AuthConfig; +import me.zhyd.oauth.model.AuthCallback; +import me.zhyd.oauth.model.AuthResponse; +import me.zhyd.oauth.model.AuthToken; +import me.zhyd.oauth.model.AuthUser; +import me.zhyd.oauth.request.AuthRequest; +import me.zhyd.oauth.request.AuthWechatMiniProgramRequest; import org.dromara.common.core.constant.SystemConstants; import org.dromara.common.core.domain.model.XcxLoginBody; import org.dromara.common.core.domain.model.XcxLoginUser; +import org.dromara.common.core.exception.ServiceException; import org.dromara.common.core.utils.ValidatorUtils; import org.dromara.common.json.utils.JsonUtils; import org.dromara.common.satoken.utils.LoginHelper; @@ -39,12 +47,24 @@ public class XcxAuthStrategy implements IAuthStrategy { // 多个小程序识别使用 String appid = loginBody.getAppid(); - // todo 以下自行实现 // 校验 appid + appsrcret + xcxCode 调用登录凭证校验接口 获取 session_key 与 openid - String openid = ""; + AuthRequest authRequest = new AuthWechatMiniProgramRequest(AuthConfig.builder() + .clientId(appid).clientSecret("自行填写密钥 可根据不同appid填入不同密钥") + .ignoreCheckRedirectUri(true).ignoreCheckState(true).build()); + AuthCallback authCallback = new AuthCallback(); + authCallback.setCode(xcxCode); + AuthResponse resp = authRequest.login(authCallback); + String openid, unionId; + if (resp.ok()) { + AuthToken token = resp.getData().getToken(); + openid = token.getOpenId(); + // 微信小程序只有关联到微信开放平台下之后才能获取到 unionId,因此unionId不一定能返回。 + unionId = token.getUnionId(); + } else { + throw new ServiceException(resp.getMsg()); + } // 框架登录不限制从什么表查询 只要最终构建出 LoginUser 即可 SysUserVo user = loadUserByOpenid(openid); - // 此处可根据登录用户的数据不同 自行创建 loginUser 属性不够用继承扩展就行了 XcxLoginUser loginUser = new XcxLoginUser(); loginUser.setTenantId(user.getTenantId()); -- Gitee From 7f6b71d9384d3597e3bec56753414c410bfa9f54 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Sun, 15 Dec 2024 16:24:52 +0800 Subject: [PATCH 324/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20=E5=8D=87?= =?UTF-8?q?=E7=BA=A7justauth=E5=BA=95=E5=B1=82=E6=96=B9=E6=B3=95=E4=BF=AE?= =?UTF-8?q?=E6=94=B9=E5=AF=BC=E8=87=B4=E4=BB=A3=E7=A0=81=E7=BC=96=E8=AF=91?= =?UTF-8?q?=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/dromara/common/social/maxkey/AuthMaxKeyRequest.java | 4 ++-- .../org/dromara/common/social/topiam/AuthTopIamRequest.java | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/ruoyi-common/ruoyi-common-social/src/main/java/org/dromara/common/social/maxkey/AuthMaxKeyRequest.java b/ruoyi-common/ruoyi-common-social/src/main/java/org/dromara/common/social/maxkey/AuthMaxKeyRequest.java index b95c19ee8..97774ac5d 100644 --- a/ruoyi-common/ruoyi-common-social/src/main/java/org/dromara/common/social/maxkey/AuthMaxKeyRequest.java +++ b/ruoyi-common/ruoyi-common-social/src/main/java/org/dromara/common/social/maxkey/AuthMaxKeyRequest.java @@ -30,7 +30,7 @@ public class AuthMaxKeyRequest extends AuthDefaultRequest { } @Override - protected AuthToken getAccessToken(AuthCallback authCallback) { + public AuthToken getAccessToken(AuthCallback authCallback) { String body = doPostAuthorizationCode(authCallback.getCode()); Dict object = JsonUtils.parseMap(body); // oauth/token 验证异常 @@ -51,7 +51,7 @@ public class AuthMaxKeyRequest extends AuthDefaultRequest { } @Override - protected AuthUser getUserInfo(AuthToken authToken) { + public AuthUser getUserInfo(AuthToken authToken) { String body = doGetUserInfo(authToken); Dict object = JsonUtils.parseMap(body); // oauth/token 验证异常 diff --git a/ruoyi-common/ruoyi-common-social/src/main/java/org/dromara/common/social/topiam/AuthTopIamRequest.java b/ruoyi-common/ruoyi-common-social/src/main/java/org/dromara/common/social/topiam/AuthTopIamRequest.java index 13649f9fd..13f198daa 100644 --- a/ruoyi-common/ruoyi-common-social/src/main/java/org/dromara/common/social/topiam/AuthTopIamRequest.java +++ b/ruoyi-common/ruoyi-common-social/src/main/java/org/dromara/common/social/topiam/AuthTopIamRequest.java @@ -41,7 +41,7 @@ public class AuthTopIamRequest extends AuthDefaultRequest { } @Override - protected AuthToken getAccessToken(AuthCallback authCallback) { + public AuthToken getAccessToken(AuthCallback authCallback) { String body = doPostAuthorizationCode(authCallback.getCode()); Dict object = JsonUtils.parseMap(body); checkResponse(object); @@ -55,7 +55,7 @@ public class AuthTopIamRequest extends AuthDefaultRequest { } @Override - protected AuthUser getUserInfo(AuthToken authToken) { + public AuthUser getUserInfo(AuthToken authToken) { String body = doGetUserInfo(authToken); Dict object = JsonUtils.parseMap(body); checkResponse(object); -- Gitee From aface5ded1e2ecf0e8f98434cb69b354758cefe6 Mon Sep 17 00:00:00 2001 From: xlsea Date: Mon, 16 Dec 2024 18:53:58 +0800 Subject: [PATCH 325/540] =?UTF-8?q?update=20=E9=80=82=E9=85=8D=20TOPIAM=20?= =?UTF-8?q?2.0=20=E5=8D=95=E7=82=B9=E7=99=BB=E5=BD=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/resources/application-dev.yml | 2 +- .../common/social/topiam/AuthTopIamRequest.java | 15 ++++++++++++++- 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/ruoyi-admin/src/main/resources/application-dev.yml b/ruoyi-admin/src/main/resources/application-dev.yml index 283cdad44..e4f6086cc 100644 --- a/ruoyi-admin/src/main/resources/application-dev.yml +++ b/ruoyi-admin/src/main/resources/application-dev.yml @@ -200,7 +200,7 @@ justauth: redirect-uri: ${justauth.address}/social-callback?source=maxkey topiam: # topiam 服务器地址 - server-url: http://127.0.0.1:1989/api/v1/authorize/y0q************spq***********8ol + server-url: http://127.0.0.1:1898/api/v1/authorize/y0q************spq***********8ol client-id: 449c4*********937************759 client-secret: ac7***********1e0************28d redirect-uri: ${justauth.address}/social-callback?source=topiam diff --git a/ruoyi-common/ruoyi-common-social/src/main/java/org/dromara/common/social/topiam/AuthTopIamRequest.java b/ruoyi-common/ruoyi-common-social/src/main/java/org/dromara/common/social/topiam/AuthTopIamRequest.java index 13649f9fd..4867cdc94 100644 --- a/ruoyi-common/ruoyi-common-social/src/main/java/org/dromara/common/social/topiam/AuthTopIamRequest.java +++ b/ruoyi-common/ruoyi-common-social/src/main/java/org/dromara/common/social/topiam/AuthTopIamRequest.java @@ -1,7 +1,10 @@ package org.dromara.common.social.topiam; +import cn.hutool.core.codec.Base64; import cn.hutool.core.lang.Dict; import cn.hutool.core.util.StrUtil; +import cn.hutool.http.HttpRequest; +import cn.hutool.http.HttpResponse; import com.xkcoding.http.support.HttpHeader; import lombok.extern.slf4j.Slf4j; import me.zhyd.oauth.cache.AuthStateCache; @@ -70,6 +73,16 @@ public class AuthTopIamRequest extends AuthDefaultRequest { .build(); } + @Override + protected String doPostAuthorizationCode(String code) { + HttpRequest request = HttpRequest.post(source.accessToken()) + .header("Authorization", "Basic " + Base64.encode("%s:%s".formatted(config.getClientId(), config.getClientSecret()))) + .form("grant_type", "authorization_code") + .form("code", code) + .form("redirect_uri", config.getRedirectUri()); + HttpResponse response = request.execute(); + return response.body(); + } @Override protected String doGetUserInfo(AuthToken authToken) { @@ -86,7 +99,7 @@ public class AuthTopIamRequest extends AuthDefaultRequest { .build(); } - public static void checkResponse(Dict object) { + private static void checkResponse(Dict object) { // oauth/token 验证异常 if (object.containsKey("error")) { throw new AuthException(object.getStr("error_description")); -- Gitee From 9768023d38fe266cbd0e229a508d4e65258efa45 Mon Sep 17 00:00:00 2001 From: QianRj <14974713+qianrj@user.noreply.gitee.com> Date: Tue, 17 Dec 2024 12:35:19 +0800 Subject: [PATCH 326/540] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E6=9D=83=E9=99=90=E5=AF=BC=E8=87=B4=E7=9A=84=E4=B8=AA?= =?UTF-8?q?=E4=BA=BA=E4=B8=AD=E5=BF=83=E7=9A=84=E4=BF=AE=E6=94=B9=E5=A4=B4?= =?UTF-8?q?=E5=83=8F=E5=92=8C=E4=BF=AE=E6=94=B9=E5=AF=86=E7=A0=81=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3=E9=94=99=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../system/controller/system/SysProfileController.java | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysProfileController.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysProfileController.java index 893b381e3..5f187cb91 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysProfileController.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysProfileController.java @@ -98,8 +98,8 @@ public class SysProfileController extends BaseController { if (BCrypt.checkpw(bo.getNewPassword(), password)) { return R.fail("新密码不能与旧密码相同"); } - - if (userService.resetUserPwd(user.getUserId(), BCrypt.hashpw(bo.getNewPassword())) > 0) { + int rows = DataPermissionHelper.ignore(() -> userService.resetUserPwd(user.getUserId(), BCrypt.hashpw(bo.getNewPassword()))); + if (rows > 0) { return R.ok(); } return R.fail("修改密码异常,请联系管理员"); @@ -121,7 +121,8 @@ public class SysProfileController extends BaseController { } SysOssVo oss = ossService.upload(avatarfile); String avatar = oss.getUrl(); - if (userService.updateUserAvatar(LoginHelper.getUserId(), oss.getOssId())) { + boolean updateSuccess = DataPermissionHelper.ignore(() -> userService.updateUserAvatar(LoginHelper.getUserId(), oss.getOssId())); + if (updateSuccess) { AvatarVo avatarVo = new AvatarVo(); avatarVo.setImgUrl(avatar); return R.ok(avatarVo); -- Gitee From 489cb52976b4597c7d2f2e0c51fc88908b2897ae Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=89=9B=E5=AD=90Li?= Date: Tue, 17 Dec 2024 07:34:15 +0000 Subject: [PATCH 327/540] =?UTF-8?q?!620=20update=20=E4=BF=AE=E6=94=B9?= =?UTF-8?q?=E6=97=A5=E5=BF=97=E9=A2=9C=E8=89=B2=20*=20update=20=E4=BF=AE?= =?UTF-8?q?=E6=94=B9=E6=97=A5=E5=BF=97=E9=A2=9C=E8=89=B2=20*=20update=20?= =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=97=A5=E5=BF=97=E9=A2=9C=E8=89=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ruoyi-admin/src/main/resources/logback-plus.xml | 2 +- .../ruoyi-monitor-admin/src/main/resources/logback-plus.xml | 4 ++-- .../ruoyi-snailjob-server/src/main/resources/logback-plus.xml | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/ruoyi-admin/src/main/resources/logback-plus.xml b/ruoyi-admin/src/main/resources/logback-plus.xml index 40fa33b7c..b74289ecd 100644 --- a/ruoyi-admin/src/main/resources/logback-plus.xml +++ b/ruoyi-admin/src/main/resources/logback-plus.xml @@ -2,7 +2,7 @@ + value="%cyan(%d{yyyy-MM-dd HH:mm:ss}) %green([%thread]) %highlight(%-5level) %boldMagenta(%logger{36}%n) - %msg%n"/> diff --git a/ruoyi-extend/ruoyi-monitor-admin/src/main/resources/logback-plus.xml b/ruoyi-extend/ruoyi-monitor-admin/src/main/resources/logback-plus.xml index 16bb9376b..45cbbba40 100644 --- a/ruoyi-extend/ruoyi-monitor-admin/src/main/resources/logback-plus.xml +++ b/ruoyi-extend/ruoyi-monitor-admin/src/main/resources/logback-plus.xml @@ -4,7 +4,7 @@ logback + value="%cyan(%d{yyyy-MM-dd HH:mm:ss}) %green([%thread]) %highlight(%-5level) %boldMagenta(%logger{36}%n) - %msg%n"/> @@ -31,4 +31,4 @@ - \ No newline at end of file +
diff --git a/ruoyi-extend/ruoyi-snailjob-server/src/main/resources/logback-plus.xml b/ruoyi-extend/ruoyi-snailjob-server/src/main/resources/logback-plus.xml index a40262c9f..be588110c 100644 --- a/ruoyi-extend/ruoyi-snailjob-server/src/main/resources/logback-plus.xml +++ b/ruoyi-extend/ruoyi-snailjob-server/src/main/resources/logback-plus.xml @@ -2,7 +2,7 @@ + value="%cyan(%d{yyyy-MM-dd HH:mm:ss}) %green([%thread]) %highlight(%-5level) %boldMagenta(%logger{36}%n) - %msg%n"/> -- Gitee From a65baf5d67c3a3d5a3013aec89f406fc3d4b7bbe Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Wed, 18 Dec 2024 11:32:14 +0800 Subject: [PATCH 328/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0mybatis-plus=E4=B8=80=E9=94=AE=E5=BC=80=E5=90=AF/?= =?UTF-8?q?=E5=85=B3=E9=97=AD=E9=80=BB=E8=BE=91=E5=88=A0=E9=99=A4=E5=8A=9F?= =?UTF-8?q?=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/resources/application.yml | 2 ++ .../mybatis/config/MybatisPlusConfig.java | 10 ++++++++ .../handler/PlusPostInitTableInfoHandler.java | 24 +++++++++++++++++++ 3 files changed, 36 insertions(+) create mode 100644 ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/PlusPostInitTableInfoHandler.java diff --git a/ruoyi-admin/src/main/resources/application.yml b/ruoyi-admin/src/main/resources/application.yml index dead74198..c42bb7f26 100644 --- a/ruoyi-admin/src/main/resources/application.yml +++ b/ruoyi-admin/src/main/resources/application.yml @@ -139,6 +139,8 @@ tenant: # MyBatisPlus配置 # https://baomidou.com/config/ mybatis-plus: + # 自定义配置 是否全局开启逻辑删除 关闭后 所有逻辑删除功能将失效 + enableLogicDelete: true # 多包名使用 例如 org.dromara.**.mapper,org.xxx.**.mapper mapperPackage: org.dromara.**.mapper # 对应的 XML 文件位置 diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/config/MybatisPlusConfig.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/config/MybatisPlusConfig.java index 1e8d619fa..00c26912e 100644 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/config/MybatisPlusConfig.java +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/config/MybatisPlusConfig.java @@ -2,6 +2,7 @@ package org.dromara.common.mybatis.config; import cn.hutool.core.net.NetUtil; import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler; +import com.baomidou.mybatisplus.core.handlers.PostInitTableInfoHandler; import com.baomidou.mybatisplus.core.incrementer.DefaultIdentifierGenerator; import com.baomidou.mybatisplus.core.incrementer.IdentifierGenerator; import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor; @@ -13,6 +14,7 @@ import org.dromara.common.core.utils.SpringUtils; import org.dromara.common.mybatis.aspect.DataPermissionAspect; import org.dromara.common.mybatis.handler.InjectionMetaObjectHandler; import org.dromara.common.mybatis.handler.MybatisExceptionHandler; +import org.dromara.common.mybatis.handler.PlusPostInitTableInfoHandler; import org.dromara.common.mybatis.interceptor.PlusDataPermissionInterceptor; import org.mybatis.spring.annotation.MapperScan; import org.springframework.beans.BeansException; @@ -105,6 +107,14 @@ public class MybatisPlusConfig { return new MybatisExceptionHandler(); } + /** + * 初始化表对象处理器 + */ + @Bean + public PostInitTableInfoHandler postInitTableInfoHandler() { + return new PlusPostInitTableInfoHandler(); + } + /** * PaginationInnerInterceptor 分页插件,自动识别数据库类型 * https://baomidou.com/pages/97710a/ diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/PlusPostInitTableInfoHandler.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/PlusPostInitTableInfoHandler.java new file mode 100644 index 000000000..2c0ec0e1d --- /dev/null +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/PlusPostInitTableInfoHandler.java @@ -0,0 +1,24 @@ +package org.dromara.common.mybatis.handler; + +import cn.hutool.core.convert.Convert; +import com.baomidou.mybatisplus.core.handlers.PostInitTableInfoHandler; +import com.baomidou.mybatisplus.core.metadata.TableInfo; +import org.apache.ibatis.session.Configuration; +import org.dromara.common.core.utils.SpringUtils; +import org.dromara.common.core.utils.reflect.ReflectUtils; + +/** + * 修改表信息初始化方式 + * 目前用于全局修改是否使用逻辑删除 + * + * @author Lion Li + */ +public class PlusPostInitTableInfoHandler implements PostInitTableInfoHandler { + + @Override + public void postTableInfo(TableInfo tableInfo, Configuration configuration) { + String flag = SpringUtils.getProperty("mybatis-plus.enableLogicDelete", "true"); + ReflectUtils.setFieldValue(tableInfo, "withLogicDelete", Convert.toBool(flag)); + } + +} -- Gitee From da1cd55c1d4df9c8e08f32b69257010bd548d237 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Wed, 18 Dec 2024 13:30:09 +0800 Subject: [PATCH 329/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0mybatis-plus=E4=B8=80=E9=94=AE=E5=BC=80=E5=90=AF/?= =?UTF-8?q?=E5=85=B3=E9=97=AD=E9=80=BB=E8=BE=91=E5=88=A0=E9=99=A4=E5=8A=9F?= =?UTF-8?q?=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/mybatis/handler/PlusPostInitTableInfoHandler.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/PlusPostInitTableInfoHandler.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/PlusPostInitTableInfoHandler.java index 2c0ec0e1d..60ca20b4b 100644 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/PlusPostInitTableInfoHandler.java +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/PlusPostInitTableInfoHandler.java @@ -18,7 +18,10 @@ public class PlusPostInitTableInfoHandler implements PostInitTableInfoHandler { @Override public void postTableInfo(TableInfo tableInfo, Configuration configuration) { String flag = SpringUtils.getProperty("mybatis-plus.enableLogicDelete", "true"); - ReflectUtils.setFieldValue(tableInfo, "withLogicDelete", Convert.toBool(flag)); + // 只有关闭时 统一设置false 为true时mp自动判断不处理 + if (!Convert.toBool(flag)) { + ReflectUtils.setFieldValue(tableInfo, "withLogicDelete", false); + } } } -- Gitee From ff76df9ae0f2383db903bab3efc6ef1223d0d071 Mon Sep 17 00:00:00 2001 From: liyang Date: Wed, 11 Dec 2024 11:27:13 +0800 Subject: [PATCH 330/540] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E5=AF=BC=E5=87=BA?= =?UTF-8?q?=E6=A8=A1=E6=9D=BF=E5=BF=85=E5=A1=AB=E3=80=81=E5=A4=87=E6=B3=A8?= =?UTF-8?q?=20=E5=A2=9E=E5=8A=A0=E5=8D=95=E7=8B=AC=E7=9A=84=E5=AF=BC?= =?UTF-8?q?=E5=87=BA=E6=A8=A1=E6=9D=BF=20=E6=96=B9=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../excel/annotation/ExcelNotation.java | 24 +++++ .../excel/annotation/ExcelRequired.java | 26 ++++++ .../excel/handler/DataWriteHandler.java | 77 +++++++++++++++ .../dromara/common/excel/utils/ExcelUtil.java | 93 +++++++++++++++++++ 4 files changed, 220 insertions(+) create mode 100644 ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/annotation/ExcelNotation.java create mode 100644 ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/annotation/ExcelRequired.java create mode 100644 ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/handler/DataWriteHandler.java diff --git a/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/annotation/ExcelNotation.java b/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/annotation/ExcelNotation.java new file mode 100644 index 000000000..f358afcd6 --- /dev/null +++ b/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/annotation/ExcelNotation.java @@ -0,0 +1,24 @@ +package org.dromara.common.excel.annotation; + +import java.lang.annotation.ElementType; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; +import java.lang.annotation.Target; + +/** + * 批注 + * @author guzhouyanyu + */ +@Target({ElementType.FIELD}) +@Retention(RetentionPolicy.RUNTIME) +public @interface ExcelNotation { + + /** + * col index + */ + int index() default -1; + /** + * 批注内容 + */ + String value() default ""; +} diff --git a/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/annotation/ExcelRequired.java b/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/annotation/ExcelRequired.java new file mode 100644 index 000000000..15784e140 --- /dev/null +++ b/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/annotation/ExcelRequired.java @@ -0,0 +1,26 @@ +package org.dromara.common.excel.annotation; + +import org.apache.poi.ss.usermodel.IndexedColors; + +import java.lang.annotation.ElementType; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; +import java.lang.annotation.Target; + +/** + * 是否必填 + * @author guzhouyanyu + */ +@Target({ElementType.FIELD}) +@Retention(RetentionPolicy.RUNTIME) +public @interface ExcelRequired { + + /** + * col index + */ + int index() default -1; + /** + * 字体颜色 + */ + IndexedColors fontColor() default IndexedColors.RED; +} diff --git a/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/handler/DataWriteHandler.java b/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/handler/DataWriteHandler.java new file mode 100644 index 000000000..0d11360ba --- /dev/null +++ b/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/handler/DataWriteHandler.java @@ -0,0 +1,77 @@ +package org.dromara.common.excel.handler; + +import cn.hutool.core.collection.CollUtil; +import com.alibaba.excel.metadata.data.DataFormatData; +import com.alibaba.excel.metadata.data.WriteCellData; +import com.alibaba.excel.util.StyleUtil; +import com.alibaba.excel.write.handler.CellWriteHandler; +import com.alibaba.excel.write.handler.SheetWriteHandler; +import com.alibaba.excel.write.handler.context.CellWriteHandlerContext; +import com.alibaba.excel.write.metadata.holder.WriteSheetHolder; +import com.alibaba.excel.write.metadata.style.WriteCellStyle; +import com.alibaba.excel.write.metadata.style.WriteFont; +import lombok.Data; +import org.apache.poi.ss.usermodel.*; +import org.apache.poi.xssf.usermodel.XSSFClientAnchor; +import org.apache.poi.xssf.usermodel.XSSFRichTextString; + +import java.util.Map; + +/** + * 批注、必填 + * + * @author guzhouyanyu + */ +@Data +public class DataWriteHandler implements SheetWriteHandler, CellWriteHandler { + + /** + * 批注 + */ + private final Map notationMap; + + /** + * 头列字体颜色 + */ + private final Map headColumnMap; + + + @Override + public void afterCellDispose(CellWriteHandlerContext context) { + WriteCellData cellData = context.getFirstCellData(); + WriteCellStyle writeCellStyle = cellData.getOrCreateStyle(); + + DataFormatData dataFormatData = new DataFormatData(); + // 单元格设置为文本格式 + dataFormatData.setIndex((short) 49); + writeCellStyle.setDataFormatData(dataFormatData); + + if (context.getHead()) { + Cell cell = context.getCell(); + WriteSheetHolder writeSheetHolder = context.getWriteSheetHolder(); + Sheet sheet = writeSheetHolder.getSheet(); + Workbook workbook = writeSheetHolder.getSheet().getWorkbook(); + Drawing drawing = sheet.createDrawingPatriarch(); + // 设置标题字体样式 + WriteFont headWriteFont = new WriteFont(); + // 加粗 + headWriteFont.setBold(true); + if (CollUtil.isNotEmpty(headColumnMap) && headColumnMap.containsKey(cell.getColumnIndex())) { + // 设置字体颜色 + headWriteFont.setColor(headColumnMap.get(cell.getColumnIndex())); + } + writeCellStyle.setWriteFont(headWriteFont); + CellStyle cellStyle = StyleUtil.buildCellStyle(workbook, null, writeCellStyle); + cell.setCellStyle(cellStyle); + + if (CollUtil.isNotEmpty(notationMap) && notationMap.containsKey(cell.getColumnIndex())) { + // 批注内容 + String notationContext = notationMap.get(cell.getColumnIndex()); + // 创建绘图对象 + Comment comment = drawing.createCellComment(new XSSFClientAnchor(0, 0, 0, 0, (short) cell.getColumnIndex(), 0, (short) 5, 5)); + comment.setString(new XSSFRichTextString(notationContext)); + cell.setCellComment(comment); + } + } + } +} diff --git a/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/utils/ExcelUtil.java b/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/utils/ExcelUtil.java index a6c14ad51..fa1fb902d 100644 --- a/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/utils/ExcelUtil.java +++ b/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/utils/ExcelUtil.java @@ -16,14 +16,20 @@ import lombok.AccessLevel; import lombok.NoArgsConstructor; import org.dromara.common.core.utils.StringUtils; import org.dromara.common.core.utils.file.FileUtils; +import org.dromara.common.core.utils.reflect.ReflectUtils; +import org.dromara.common.excel.annotation.ExcelNotation; +import org.dromara.common.excel.annotation.ExcelRequired; import org.dromara.common.excel.convert.ExcelBigNumberConvert; import org.dromara.common.excel.core.*; +import org.dromara.common.excel.handler.DataWriteHandler; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import java.io.UnsupportedEncodingException; +import java.lang.reflect.Field; import java.util.Collection; +import java.util.HashMap; import java.util.List; import java.util.Map; @@ -433,4 +439,91 @@ public class ExcelUtil { return IdUtil.fastSimpleUUID() + "_" + filename + ".xlsx"; } + /** + * 获取必填列Map + * + * @param clazz 类class + * @return java.util.Map + * @author SunLingDa + * @date 2022/11/3 13:23 + */ + private static Map getRequiredMap(Class clazz) { + Map requiredMap = new HashMap<>(); + Field[] fields = clazz.getDeclaredFields(); + // 检查 fields 数组是否为空 + if (fields.length == 0) { + return requiredMap; + } + Field[] filteredFields = ReflectUtils.getFields(clazz, field -> !"serialVersionUID".equals(field.getName())); + + for (int i = 0; i < filteredFields.length; i++) { + Field field = filteredFields[i]; + if (!field.isAnnotationPresent(ExcelRequired.class)) { + continue; + } + ExcelRequired excelRequired = field.getAnnotation(ExcelRequired.class); + int columnIndex = excelRequired.index() == -1 ? i : excelRequired.index(); + requiredMap.put(columnIndex, excelRequired.fontColor().getIndex()); + } + return requiredMap; + } + + /** + * 获取批注Map + * + * @param clazz 类class + * @return java.util.Map + * @author SunLingDa + * @date 2022/11/3 13:24 + */ + private static Map getNotationMap(Class clazz) { + Map notationMap = new HashMap<>(); + Field[] fields = clazz.getDeclaredFields(); + // 检查 fields 数组是否为空 + if (fields.length == 0) { + return notationMap; + } + Field[] filteredFields = ReflectUtils.getFields(clazz, field -> !"serialVersionUID".equals(field.getName())); + for (int i = 0; i < filteredFields.length; i++) { + Field field = filteredFields[i]; + if (!field.isAnnotationPresent(ExcelNotation.class)) { + continue; + } + ExcelNotation excelNotation = field.getAnnotation(ExcelNotation.class); + int columnIndex = excelNotation.index() == -1 ? i : excelNotation.index(); + notationMap.put(columnIndex, excelNotation.value()); + } + return notationMap; + } + public static void exportExcelRequire(List list, String sheetName, Class clazz,HttpServletResponse response) { + exportExcelTemplate(list,sheetName,clazz,response); + } + /** + * 导出excel模板 + * + * @param list 导出数据集合 + * @param sheetName 工作表的名称 + * @param clazz 实体类 + * @param response 响应体 + */ + public static void exportExcelTemplate(List list, String sheetName, Class clazz, HttpServletResponse response) { + try { + Map requiredMap = getRequiredMap(clazz); + Map notationMap = getNotationMap(clazz); + resetResponse(sheetName, response); + ServletOutputStream os = response.getOutputStream(); + DataWriteHandler writeHandler = new DataWriteHandler(notationMap, requiredMap); + ExcelWriterSheetBuilder builder = EasyExcel.write(os, clazz) + .autoCloseStream(false) + // 自动适配 + .registerWriteHandler(new LongestMatchColumnWidthStyleStrategy()) + .registerWriteHandler(writeHandler) + // 大数值自动转换 防止失真 + .registerConverter(new ExcelBigNumberConvert()) + .sheet(sheetName); + builder.doWrite(list); + } catch (IOException e) { + throw new RuntimeException("导出Excel异常"); + } + } } -- Gitee From 9ad64521d39e722b74379cc33c78de4cd0b426b3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Wed, 18 Dec 2024 17:46:53 +0800 Subject: [PATCH 331/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20!pr=5F610?= =?UTF-8?q?=20=E4=BB=A3=E7=A0=81=E5=AE=9E=E7=8E=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../excel/handler/DataWriteHandler.java | 62 ++++++++- .../dromara/common/excel/utils/ExcelUtil.java | 118 +++--------------- .../dromara/demo/domain/vo/TestDemoVo.java | 7 ++ 3 files changed, 81 insertions(+), 106 deletions(-) diff --git a/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/handler/DataWriteHandler.java b/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/handler/DataWriteHandler.java index 0d11360ba..a2aa4951b 100644 --- a/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/handler/DataWriteHandler.java +++ b/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/handler/DataWriteHandler.java @@ -10,11 +10,15 @@ import com.alibaba.excel.write.handler.context.CellWriteHandlerContext; import com.alibaba.excel.write.metadata.holder.WriteSheetHolder; import com.alibaba.excel.write.metadata.style.WriteCellStyle; import com.alibaba.excel.write.metadata.style.WriteFont; -import lombok.Data; import org.apache.poi.ss.usermodel.*; import org.apache.poi.xssf.usermodel.XSSFClientAnchor; import org.apache.poi.xssf.usermodel.XSSFRichTextString; +import org.dromara.common.core.utils.reflect.ReflectUtils; +import org.dromara.common.excel.annotation.ExcelNotation; +import org.dromara.common.excel.annotation.ExcelRequired; +import java.lang.reflect.Field; +import java.util.HashMap; import java.util.Map; /** @@ -22,7 +26,6 @@ import java.util.Map; * * @author guzhouyanyu */ -@Data public class DataWriteHandler implements SheetWriteHandler, CellWriteHandler { /** @@ -36,8 +39,16 @@ public class DataWriteHandler implements SheetWriteHandler, CellWriteHandler { private final Map headColumnMap; + public DataWriteHandler(Class clazz) { + notationMap = getNotationMap(clazz); + headColumnMap = getRequiredMap(clazz); + } + @Override public void afterCellDispose(CellWriteHandlerContext context) { + if (CollUtil.isEmpty(notationMap) && CollUtil.isEmpty(headColumnMap)) { + return; + } WriteCellData cellData = context.getFirstCellData(); WriteCellStyle writeCellStyle = cellData.getOrCreateStyle(); @@ -74,4 +85,51 @@ public class DataWriteHandler implements SheetWriteHandler, CellWriteHandler { } } } + + /** + * 获取必填列 + */ + private static Map getRequiredMap(Class clazz) { + Map requiredMap = new HashMap<>(); + Field[] fields = clazz.getDeclaredFields(); + // 检查 fields 数组是否为空 + if (fields.length == 0) { + return requiredMap; + } + Field[] filteredFields = ReflectUtils.getFields(clazz, field -> !"serialVersionUID".equals(field.getName())); + + for (int i = 0; i < filteredFields.length; i++) { + Field field = filteredFields[i]; + if (!field.isAnnotationPresent(ExcelRequired.class)) { + continue; + } + ExcelRequired excelRequired = field.getAnnotation(ExcelRequired.class); + int columnIndex = excelRequired.index() == -1 ? i : excelRequired.index(); + requiredMap.put(columnIndex, excelRequired.fontColor().getIndex()); + } + return requiredMap; + } + + /** + * 获取批注 + */ + private static Map getNotationMap(Class clazz) { + Map notationMap = new HashMap<>(); + Field[] fields = clazz.getDeclaredFields(); + // 检查 fields 数组是否为空 + if (fields.length == 0) { + return notationMap; + } + Field[] filteredFields = ReflectUtils.getFields(clazz, field -> !"serialVersionUID".equals(field.getName())); + for (int i = 0; i < filteredFields.length; i++) { + Field field = filteredFields[i]; + if (!field.isAnnotationPresent(ExcelNotation.class)) { + continue; + } + ExcelNotation excelNotation = field.getAnnotation(ExcelNotation.class); + int columnIndex = excelNotation.index() == -1 ? i : excelNotation.index(); + notationMap.put(columnIndex, excelNotation.value()); + } + return notationMap; + } } diff --git a/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/utils/ExcelUtil.java b/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/utils/ExcelUtil.java index fa1fb902d..856699ae0 100644 --- a/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/utils/ExcelUtil.java +++ b/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/utils/ExcelUtil.java @@ -16,9 +16,6 @@ import lombok.AccessLevel; import lombok.NoArgsConstructor; import org.dromara.common.core.utils.StringUtils; import org.dromara.common.core.utils.file.FileUtils; -import org.dromara.common.core.utils.reflect.ReflectUtils; -import org.dromara.common.excel.annotation.ExcelNotation; -import org.dromara.common.excel.annotation.ExcelRequired; import org.dromara.common.excel.convert.ExcelBigNumberConvert; import org.dromara.common.excel.core.*; import org.dromara.common.excel.handler.DataWriteHandler; @@ -27,9 +24,7 @@ import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import java.io.UnsupportedEncodingException; -import java.lang.reflect.Field; import java.util.Collection; -import java.util.HashMap; import java.util.List; import java.util.Map; @@ -197,6 +192,7 @@ public class ExcelUtil { .registerWriteHandler(new LongestMatchColumnWidthStyleStrategy()) // 大数值自动转换 防止失真 .registerConverter(new ExcelBigNumberConvert()) + .registerWriteHandler(new DataWriteHandler(list.get(0).getClass())) .sheet(sheetName); if (merge) { // 合并处理器 @@ -217,7 +213,7 @@ public class ExcelUtil { * @param data 模板需要的数据 * @param response 响应体 */ - public static void exportTemplate(List data, String filename, String templatePath, HttpServletResponse response) { + public static void exportTemplate(List data, String filename, String templatePath, HttpServletResponse response) { try { resetResponse(filename, response); ServletOutputStream os = response.getOutputStream(); @@ -236,20 +232,21 @@ public class ExcelUtil { * @param data 模板需要的数据 * @param os 输出流 */ - public static void exportTemplate(List data, String templatePath, OutputStream os) { + public static void exportTemplate(List data, String templatePath, OutputStream os) { + if (CollUtil.isEmpty(data)) { + throw new IllegalArgumentException("数据为空"); + } ClassPathResource templateResource = new ClassPathResource(templatePath); ExcelWriter excelWriter = EasyExcel.write(os) .withTemplate(templateResource.getStream()) .autoCloseStream(false) // 大数值自动转换 防止失真 .registerConverter(new ExcelBigNumberConvert()) + .registerWriteHandler(new DataWriteHandler(data.get(0).getClass())) .build(); WriteSheet writeSheet = EasyExcel.writerSheet().build(); - if (CollUtil.isEmpty(data)) { - throw new IllegalArgumentException("数据为空"); - } // 单表多数据导出 模板格式为 {.属性} - for (Object d : data) { + for (T d : data) { excelWriter.fill(d, writeSheet); } excelWriter.finish(); @@ -305,6 +302,9 @@ public class ExcelUtil { * @param os 输出流 */ public static void exportTemplateMultiList(Map data, String templatePath, OutputStream os) { + if (CollUtil.isEmpty(data)) { + throw new IllegalArgumentException("数据为空"); + } ClassPathResource templateResource = new ClassPathResource(templatePath); ExcelWriter excelWriter = EasyExcel.write(os) .withTemplate(templateResource.getStream()) @@ -313,9 +313,6 @@ public class ExcelUtil { .registerConverter(new ExcelBigNumberConvert()) .build(); WriteSheet writeSheet = EasyExcel.writerSheet().build(); - if (CollUtil.isEmpty(data)) { - throw new IllegalArgumentException("数据为空"); - } for (Map.Entry map : data.entrySet()) { // 设置列表后续还有数据 FillConfig fillConfig = FillConfig.builder().forceNewRow(Boolean.TRUE).build(); @@ -339,6 +336,9 @@ public class ExcelUtil { * @param os 输出流 */ public static void exportTemplateMultiSheet(List> data, String templatePath, OutputStream os) { + if (CollUtil.isEmpty(data)) { + throw new IllegalArgumentException("数据为空"); + } ClassPathResource templateResource = new ClassPathResource(templatePath); ExcelWriter excelWriter = EasyExcel.write(os) .withTemplate(templateResource.getStream()) @@ -346,9 +346,6 @@ public class ExcelUtil { // 大数值自动转换 防止失真 .registerConverter(new ExcelBigNumberConvert()) .build(); - if (CollUtil.isEmpty(data)) { - throw new IllegalArgumentException("数据为空"); - } for (int i = 0; i < data.size(); i++) { WriteSheet writeSheet = EasyExcel.writerSheet(i).build(); for (Map.Entry map : data.get(i).entrySet()) { @@ -439,91 +436,4 @@ public class ExcelUtil { return IdUtil.fastSimpleUUID() + "_" + filename + ".xlsx"; } - /** - * 获取必填列Map - * - * @param clazz 类class - * @return java.util.Map - * @author SunLingDa - * @date 2022/11/3 13:23 - */ - private static Map getRequiredMap(Class clazz) { - Map requiredMap = new HashMap<>(); - Field[] fields = clazz.getDeclaredFields(); - // 检查 fields 数组是否为空 - if (fields.length == 0) { - return requiredMap; - } - Field[] filteredFields = ReflectUtils.getFields(clazz, field -> !"serialVersionUID".equals(field.getName())); - - for (int i = 0; i < filteredFields.length; i++) { - Field field = filteredFields[i]; - if (!field.isAnnotationPresent(ExcelRequired.class)) { - continue; - } - ExcelRequired excelRequired = field.getAnnotation(ExcelRequired.class); - int columnIndex = excelRequired.index() == -1 ? i : excelRequired.index(); - requiredMap.put(columnIndex, excelRequired.fontColor().getIndex()); - } - return requiredMap; - } - - /** - * 获取批注Map - * - * @param clazz 类class - * @return java.util.Map - * @author SunLingDa - * @date 2022/11/3 13:24 - */ - private static Map getNotationMap(Class clazz) { - Map notationMap = new HashMap<>(); - Field[] fields = clazz.getDeclaredFields(); - // 检查 fields 数组是否为空 - if (fields.length == 0) { - return notationMap; - } - Field[] filteredFields = ReflectUtils.getFields(clazz, field -> !"serialVersionUID".equals(field.getName())); - for (int i = 0; i < filteredFields.length; i++) { - Field field = filteredFields[i]; - if (!field.isAnnotationPresent(ExcelNotation.class)) { - continue; - } - ExcelNotation excelNotation = field.getAnnotation(ExcelNotation.class); - int columnIndex = excelNotation.index() == -1 ? i : excelNotation.index(); - notationMap.put(columnIndex, excelNotation.value()); - } - return notationMap; - } - public static void exportExcelRequire(List list, String sheetName, Class clazz,HttpServletResponse response) { - exportExcelTemplate(list,sheetName,clazz,response); - } - /** - * 导出excel模板 - * - * @param list 导出数据集合 - * @param sheetName 工作表的名称 - * @param clazz 实体类 - * @param response 响应体 - */ - public static void exportExcelTemplate(List list, String sheetName, Class clazz, HttpServletResponse response) { - try { - Map requiredMap = getRequiredMap(clazz); - Map notationMap = getNotationMap(clazz); - resetResponse(sheetName, response); - ServletOutputStream os = response.getOutputStream(); - DataWriteHandler writeHandler = new DataWriteHandler(notationMap, requiredMap); - ExcelWriterSheetBuilder builder = EasyExcel.write(os, clazz) - .autoCloseStream(false) - // 自动适配 - .registerWriteHandler(new LongestMatchColumnWidthStyleStrategy()) - .registerWriteHandler(writeHandler) - // 大数值自动转换 防止失真 - .registerConverter(new ExcelBigNumberConvert()) - .sheet(sheetName); - builder.doWrite(list); - } catch (IOException e) { - throw new RuntimeException("导出Excel异常"); - } - } } diff --git a/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/vo/TestDemoVo.java b/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/vo/TestDemoVo.java index 016c2f7dc..e7ea8075c 100644 --- a/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/vo/TestDemoVo.java +++ b/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/vo/TestDemoVo.java @@ -2,6 +2,8 @@ package org.dromara.demo.domain.vo; import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; import com.alibaba.excel.annotation.ExcelProperty; +import org.dromara.common.excel.annotation.ExcelNotation; +import org.dromara.common.excel.annotation.ExcelRequired; import org.dromara.common.translation.annotation.Translation; import org.dromara.common.translation.constant.TransConstant; import org.dromara.demo.domain.TestDemo; @@ -36,30 +38,35 @@ public class TestDemoVo implements Serializable { /** * 部门id */ + @ExcelRequired @ExcelProperty(value = "部门id") private Long deptId; /** * 用户id */ + @ExcelRequired @ExcelProperty(value = "用户id") private Long userId; /** * 排序号 */ + @ExcelRequired @ExcelProperty(value = "排序号") private Integer orderNum; /** * key键 */ + @ExcelNotation(value = "测试key") @ExcelProperty(value = "key键") private String testKey; /** * 值 */ + @ExcelNotation(value = "测试value") @ExcelProperty(value = "值") private String value; -- Gitee From 1a403361c951b91f6e3a33da1d8c0ee77e07bb86 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 19 Dec 2024 09:19:12 +0800 Subject: [PATCH 332/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E5=85=B3?= =?UTF-8?q?=E9=97=ADsse=E5=90=8E=20=E4=BD=BF=E7=94=A8=E5=B7=A5=E5=85=B7?= =?UTF-8?q?=E6=8A=A5=E9=94=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dromara/common/sse/utils/SseMessageUtils.java | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/utils/SseMessageUtils.java b/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/utils/SseMessageUtils.java index c6abdc8fd..ff79a15c2 100644 --- a/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/utils/SseMessageUtils.java +++ b/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/utils/SseMessageUtils.java @@ -16,6 +16,7 @@ import org.dromara.common.sse.dto.SseMessageDto; @NoArgsConstructor(access = AccessLevel.PRIVATE) public class SseMessageUtils { + private final static Boolean SSE_ENABLE = SpringUtils.getProperty("sse.enabled", Boolean.class, true); private final static SseEmitterManager MANAGER = SpringUtils.getBean(SseEmitterManager.class); /** @@ -25,6 +26,9 @@ public class SseMessageUtils { * @param message 要发送的消息内容 */ public static void sendMessage(Long userId, String message) { + if (SSE_ENABLE) { + return; + } MANAGER.sendMessage(userId, message); } @@ -34,6 +38,9 @@ public class SseMessageUtils { * @param message 要发送的消息内容 */ public static void sendMessage(String message) { + if (SSE_ENABLE) { + return; + } MANAGER.sendMessage(message); } @@ -43,6 +50,9 @@ public class SseMessageUtils { * @param sseMessageDto 要发布的SSE消息对象 */ public static void publishMessage(SseMessageDto sseMessageDto) { + if (SSE_ENABLE) { + return; + } MANAGER.publishMessage(sseMessageDto); } @@ -52,6 +62,9 @@ public class SseMessageUtils { * @param message 要发布的消息内容 */ public static void publishAll(String message) { + if (SSE_ENABLE) { + return; + } MANAGER.publishAll(message); } -- Gitee From ad85fa201649695919b037b028e53d19932c4a1c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 19 Dec 2024 10:54:08 +0800 Subject: [PATCH 333/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20sse?= =?UTF-8?q?=E5=B7=A5=E5=85=B7=E7=B1=BB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dromara/common/sse/utils/SseMessageUtils.java | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/utils/SseMessageUtils.java b/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/utils/SseMessageUtils.java index ff79a15c2..45f354ce7 100644 --- a/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/utils/SseMessageUtils.java +++ b/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/utils/SseMessageUtils.java @@ -26,7 +26,7 @@ public class SseMessageUtils { * @param message 要发送的消息内容 */ public static void sendMessage(Long userId, String message) { - if (SSE_ENABLE) { + if (!isEnable()) { return; } MANAGER.sendMessage(userId, message); @@ -38,7 +38,7 @@ public class SseMessageUtils { * @param message 要发送的消息内容 */ public static void sendMessage(String message) { - if (SSE_ENABLE) { + if (!isEnable()) { return; } MANAGER.sendMessage(message); @@ -50,7 +50,7 @@ public class SseMessageUtils { * @param sseMessageDto 要发布的SSE消息对象 */ public static void publishMessage(SseMessageDto sseMessageDto) { - if (SSE_ENABLE) { + if (!isEnable()) { return; } MANAGER.publishMessage(sseMessageDto); @@ -62,10 +62,17 @@ public class SseMessageUtils { * @param message 要发布的消息内容 */ public static void publishAll(String message) { - if (SSE_ENABLE) { + if (!isEnable()) { return; } MANAGER.publishAll(message); } + /** + * 是否开启 + */ + public static Boolean isEnable() { + return SSE_ENABLE; + } + } -- Gitee From f20c27197278ce133f0d605618702f8e629e6678 Mon Sep 17 00:00:00 2001 From: zst_2001 <1493232063@qq.com> Date: Thu, 19 Dec 2024 16:26:26 +0000 Subject: [PATCH 334/540] =?UTF-8?q?!622=20fix=20=E4=BF=AE=E6=AD=A3?= =?UTF-8?q?=E6=B3=A8=E9=87=8A=E9=94=99=E5=88=AB=E5=AD=97=E5=92=8C=E9=A1=BA?= =?UTF-8?q?=E5=BA=8F=20*=20fix=20=E4=BF=AE=E6=AD=A3=E6=B3=A8=E9=87=8A?= =?UTF-8?q?=E9=94=99=E5=88=AB=E5=AD=97=E5=92=8C=E9=A1=BA=E5=BA=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/dromara/common/json/handler/BigNumberSerializer.java | 2 +- .../org/dromara/common/sensitive/core/SensitiveStrategy.java | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/ruoyi-common/ruoyi-common-json/src/main/java/org/dromara/common/json/handler/BigNumberSerializer.java b/ruoyi-common/ruoyi-common-json/src/main/java/org/dromara/common/json/handler/BigNumberSerializer.java index f2a7c2d8c..8752353c5 100644 --- a/ruoyi-common/ruoyi-common-json/src/main/java/org/dromara/common/json/handler/BigNumberSerializer.java +++ b/ruoyi-common/ruoyi-common-json/src/main/java/org/dromara/common/json/handler/BigNumberSerializer.java @@ -32,7 +32,7 @@ public class BigNumberSerializer extends NumberSerializer { @Override public void serialize(Number value, JsonGenerator gen, SerializerProvider provider) throws IOException { - // 超出范围 序列化位字符串 + // 超出范围 序列化为字符串 if (value.longValue() > MIN_SAFE_INTEGER && value.longValue() < MAX_SAFE_INTEGER) { super.serialize(value, gen, provider); } else { diff --git a/ruoyi-common/ruoyi-common-sensitive/src/main/java/org/dromara/common/sensitive/core/SensitiveStrategy.java b/ruoyi-common/ruoyi-common-sensitive/src/main/java/org/dromara/common/sensitive/core/SensitiveStrategy.java index 995dcbd96..7af5cee9e 100644 --- a/ruoyi-common/ruoyi-common-sensitive/src/main/java/org/dromara/common/sensitive/core/SensitiveStrategy.java +++ b/ruoyi-common/ruoyi-common-sensitive/src/main/java/org/dromara/common/sensitive/core/SensitiveStrategy.java @@ -80,12 +80,12 @@ public enum SensitiveStrategy { FIRST_MASK(DesensitizedUtil::firstMask), /** - * 清空为null + * 清空为"" */ CLEAR(s -> DesensitizedUtil.clear()), /** - * 清空为"" + * 清空为null */ CLEAR_TO_NULL(s -> DesensitizedUtil.clearToNull()); -- Gitee From 3a0fbd45ae107e0805dbca4cfa1042892a6c9fc9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Sat, 21 Dec 2024 13:30:19 +0800 Subject: [PATCH 335/540] =?UTF-8?q?update=20=E5=A2=9E=E5=8A=A0=20=E8=B5=9E?= =?UTF-8?q?=E5=8A=A9=E5=95=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 5ed7878f1..37ca4c3c3 100644 --- a/README.md +++ b/README.md @@ -34,6 +34,7 @@ MaxKey 业界领先单点登录产品 - https://gitee.com/dromara/MaxKey
CCFlow 驰聘低代码-流程-表单 - https://gitee.com/opencc/RuoYi-JFlow
数舵科技 软件定制开发APP小程序等 - http://www.shuduokeji.com/
引迈信息 软件开发平台 - https://www.jnpfsoft.com/index.html?from=plus-doc
+启山商城系统 多租户商城源码可免费商用可二次开发 - https://www.73app.cn/
[如何成为赞助商 加群联系作者详谈](https://plus-doc.dromara.org/#/common/add_group) # 本框架与RuoYi的功能差异 -- Gitee From f4f052deb49afe0fed71af3e92cdbefeaae81c19 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Sat, 21 Dec 2024 13:32:19 +0800 Subject: [PATCH 336/540] =?UTF-8?q?update=20=E5=A2=9E=E5=8A=A0=20=E8=B5=9E?= =?UTF-8?q?=E5=8A=A9=E5=95=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 37ca4c3c3..42a76367e 100644 --- a/README.md +++ b/README.md @@ -34,7 +34,7 @@ MaxKey 业界领先单点登录产品 - https://gitee.com/dromara/MaxKey
CCFlow 驰聘低代码-流程-表单 - https://gitee.com/opencc/RuoYi-JFlow
数舵科技 软件定制开发APP小程序等 - http://www.shuduokeji.com/
引迈信息 软件开发平台 - https://www.jnpfsoft.com/index.html?from=plus-doc
-启山商城系统 多租户商城源码可免费商用可二次开发 - https://www.73app.cn/
+启山商城系统 多租户商城源码可免费商用可二次开发 - https://www.73app.cn/
[如何成为赞助商 加群联系作者详谈](https://plus-doc.dromara.org/#/common/add_group) # 本框架与RuoYi的功能差异 -- Gitee From 36de389fa48c9ce5a2b916c740d7e143c42a40f4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Sat, 21 Dec 2024 13:38:24 +0800 Subject: [PATCH 337/540] =?UTF-8?q?update=20=E5=A2=9E=E5=8A=A0=20=E8=B5=9E?= =?UTF-8?q?=E5=8A=A9=E5=95=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 42a76367e..7a8864116 100644 --- a/README.md +++ b/README.md @@ -34,7 +34,7 @@ MaxKey 业界领先单点登录产品 - https://gitee.com/dromara/MaxKey
CCFlow 驰聘低代码-流程-表单 - https://gitee.com/opencc/RuoYi-JFlow
数舵科技 软件定制开发APP小程序等 - http://www.shuduokeji.com/
引迈信息 软件开发平台 - https://www.jnpfsoft.com/index.html?from=plus-doc
-启山商城系统 多租户商城源码可免费商用可二次开发 - https://www.73app.cn/
+**启山商城系统 多租户商城源码可免费商用可二次开发 - https://www.73app.cn/**
[如何成为赞助商 加群联系作者详谈](https://plus-doc.dromara.org/#/common/add_group) # 本框架与RuoYi的功能差异 -- Gitee From 251a617ecc57276bde7da7440cf954bb2adb53fb Mon Sep 17 00:00:00 2001 From: QianRj <14974713+qianrj@user.noreply.gitee.com> Date: Tue, 24 Dec 2024 03:04:27 +0000 Subject: [PATCH 338/540] =?UTF-8?q?!626=20fix=20=E4=BF=AE=E5=A4=8Dexcel?= =?UTF-8?q?=E6=A8=A1=E6=9D=BF=E5=AF=BC=E5=87=BA=E5=BC=82=E5=B8=B8=20*=20fi?= =?UTF-8?q?x:=20=E4=BF=AE=E5=A4=8Dexcel=E6=A8=A1=E6=9D=BF=E5=AF=BC?= =?UTF-8?q?=E5=87=BA=E5=BC=82=E5=B8=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/org/dromara/common/excel/utils/ExcelUtil.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/utils/ExcelUtil.java b/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/utils/ExcelUtil.java index 856699ae0..b22e6f987 100644 --- a/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/utils/ExcelUtil.java +++ b/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/utils/ExcelUtil.java @@ -192,7 +192,7 @@ public class ExcelUtil { .registerWriteHandler(new LongestMatchColumnWidthStyleStrategy()) // 大数值自动转换 防止失真 .registerConverter(new ExcelBigNumberConvert()) - .registerWriteHandler(new DataWriteHandler(list.get(0).getClass())) + .registerWriteHandler(new DataWriteHandler(clazz)) .sheet(sheetName); if (merge) { // 合并处理器 -- Gitee From 5480e419b6fb47e239ab28240252bb7f4a101e2a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Wed, 25 Dec 2024 09:23:08 +0800 Subject: [PATCH 339/540] update sqlkeyword --- .../main/java/org/dromara/common/core/utils/sql/SqlUtil.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/sql/SqlUtil.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/sql/SqlUtil.java index fcf9fb4b6..1020c81eb 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/sql/SqlUtil.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/sql/SqlUtil.java @@ -15,7 +15,7 @@ public class SqlUtil { /** * 定义常用的 sql关键字 */ - public static String SQL_REGEX = "and |extractvalue|updatexml|sleep|exec |insert |select |delete |update |drop |count |chr |mid |master |truncate |char |declare |or |union |like |+|/*|user()"; + public static String SQL_REGEX = "\u000B|and |extractvalue|updatexml|sleep|exec |insert |select |delete |update |drop |count |chr |mid |master |truncate |char |declare |or |union |like |+|/*|user()"; /** * 仅支持字母、数字、下划线、空格、逗号、小数点(支持多个字段排序) -- Gitee From 492e7dab26b9efff7a68962f1dfffd5fa583c464 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Wed, 25 Dec 2024 09:30:14 +0800 Subject: [PATCH 340/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20=E6=9C=AA?= =?UTF-8?q?=E5=BC=80=E5=90=AFsse=20=E6=89=BE=E4=B8=8D=E5=88=B0bean?= =?UTF-8?q?=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/dromara/common/sse/utils/SseMessageUtils.java | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/utils/SseMessageUtils.java b/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/utils/SseMessageUtils.java index 45f354ce7..586103417 100644 --- a/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/utils/SseMessageUtils.java +++ b/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/utils/SseMessageUtils.java @@ -17,7 +17,13 @@ import org.dromara.common.sse.dto.SseMessageDto; public class SseMessageUtils { private final static Boolean SSE_ENABLE = SpringUtils.getProperty("sse.enabled", Boolean.class, true); - private final static SseEmitterManager MANAGER = SpringUtils.getBean(SseEmitterManager.class); + private static SseEmitterManager MANAGER; + + static { + if (isEnable() && MANAGER == null) { + MANAGER = SpringUtils.getBean(SseEmitterManager.class); + } + } /** * 向指定的WebSocket会话发送消息 -- Gitee From c2746c23923b7f28219f670a8cd13ac70cd17668 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 26 Dec 2024 13:26:18 +0800 Subject: [PATCH 341/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E6=9D=83=E9=99=90=E5=A4=84=E7=90=86=E5=99=A8=20?= =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E9=BB=98=E8=AE=A4=E5=80=BC=E5=A4=84=E7=90=86?= =?UTF-8?q?=20=E9=92=88=E5=AF=B9=E4=BA=8E=E8=A1=A8=E8=BE=BE=E5=BC=8F?= =?UTF-8?q?=E5=8F=98=E9=87=8F=E4=B8=8E=E6=B3=A8=E8=A7=A3=E4=B8=8D=E5=AF=B9?= =?UTF-8?q?=E5=BA=94=E6=88=96=E8=80=85=E8=A1=A8=E8=BE=BE=E5=BC=8F=E5=8F=98?= =?UTF-8?q?=E9=87=8F=E4=B8=BAnull=E7=9A=84=E6=83=85=E5=86=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../handler/PlusDataPermissionHandler.java | 69 +++++++++++++++++-- 1 file changed, 65 insertions(+), 4 deletions(-) diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/PlusDataPermissionHandler.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/PlusDataPermissionHandler.java index c529c5332..783d3526e 100644 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/PlusDataPermissionHandler.java +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/PlusDataPermissionHandler.java @@ -3,6 +3,7 @@ package org.dromara.common.mybatis.handler; import cn.hutool.core.annotation.AnnotationUtil; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.util.ObjectUtil; +import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; import net.sf.jsqlparser.JSQLParserException; import net.sf.jsqlparser.expression.Expression; @@ -28,9 +29,7 @@ import org.springframework.core.io.support.PathMatchingResourcePatternResolver; import org.springframework.core.io.support.ResourcePatternResolver; import org.springframework.core.type.ClassMetadata; import org.springframework.core.type.classreading.CachingMetadataReaderFactory; -import org.springframework.expression.BeanResolver; -import org.springframework.expression.ExpressionParser; -import org.springframework.expression.ParserContext; +import org.springframework.expression.*; import org.springframework.expression.common.TemplateParserContext; import org.springframework.expression.spel.standard.SpelExpressionParser; import org.springframework.expression.spel.support.StandardEvaluationContext; @@ -130,7 +129,9 @@ public class PlusDataPermissionHandler { joinStr = " " + dataPermission.joinStr() + " "; } LoginUser user = DataPermissionHelper.getVariable("user"); - StandardEvaluationContext context = new StandardEvaluationContext(); + Object defaultValue = "-1"; + NullSafeStandardEvaluationContext context = new NullSafeStandardEvaluationContext(defaultValue); + context.addPropertyAccessor(new NullSafePropertyAccessor(context.getPropertyAccessors().get(0), defaultValue)); context.setBeanResolver(beanResolver); DataPermissionHelper.getContext().forEach(context::setVariable); Set conditions = new HashSet<>(); @@ -257,4 +258,64 @@ public class PlusDataPermissionHandler { return getDataPermission(mapperId) == null; } + /** + * 对所有null变量找不到的变量返回默认值 + */ + @AllArgsConstructor + private static class NullSafeStandardEvaluationContext extends StandardEvaluationContext { + + private final Object defaultValue; + + @Override + public Object lookupVariable(String name) { + Object obj = super.lookupVariable(name); + // 如果读取到的值是 null,则返回默认值 + if (obj == null) { + return defaultValue; + } + return obj; + } + + } + + /** + * 对所有null变量找不到的变量返回默认值 委托模式 将不需要处理的方法委托给原处理器 + */ + @AllArgsConstructor + private static class NullSafePropertyAccessor implements PropertyAccessor { + + private final PropertyAccessor delegate; + private final Object defaultValue; + + @Override + public Class[] getSpecificTargetClasses() { + return delegate.getSpecificTargetClasses(); + } + + @Override + public boolean canRead(EvaluationContext context, Object target, String name) throws AccessException { + return delegate.canRead(context, target, name); + } + + @Override + public TypedValue read(EvaluationContext context, Object target, String name) throws AccessException { + TypedValue value = delegate.read(context, target, name); + // 如果读取到的值是 null,则返回默认值 + if (value.getValue() == null) { + return new TypedValue(defaultValue); + } + return value; + } + + @Override + public boolean canWrite(EvaluationContext context, Object target, String name) throws AccessException { + return delegate.canWrite(context, target, name); + } + + @Override + public void write(EvaluationContext context, Object target, String name, Object newValue) throws AccessException { + delegate.write(context, target, name, newValue); + } + } + } -- Gitee From a7b83672ba4241ad3a16e81b155266f888a396ab Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 27 Dec 2024 11:17:09 +0800 Subject: [PATCH 342/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20sse=20?= =?UTF-8?q?=E5=A6=82=E6=9E=9C=E8=8E=B7=E5=8F=96token=E5=88=97=E8=A1=A8?= =?UTF-8?q?=E4=B8=BA=E7=A9=BA=20=E5=88=A0=E9=99=A4userid=E5=AF=B9=E5=BA=94?= =?UTF-8?q?=E7=9A=84=E5=AD=98=E5=82=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/dromara/common/sse/core/SseEmitterManager.java | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/core/SseEmitterManager.java b/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/core/SseEmitterManager.java index c26adca50..ba1ce5696 100644 --- a/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/core/SseEmitterManager.java +++ b/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/core/SseEmitterManager.java @@ -1,5 +1,6 @@ package org.dromara.common.sse.core; +import cn.hutool.core.map.MapUtil; import lombok.extern.slf4j.Slf4j; import org.dromara.common.redis.utils.RedisUtils; import org.dromara.common.sse.dto.SseMessageDto; @@ -65,7 +66,7 @@ public class SseEmitterManager { */ public void disconnect(Long userId, String token) { Map emitters = USER_TOKEN_EMITTERS.get(userId); - if (emitters != null) { + if (MapUtil.isNotEmpty(emitters)) { try { SseEmitter sseEmitter = emitters.get(token); sseEmitter.send(SseEmitter.event().comment("disconnected")); @@ -73,6 +74,8 @@ public class SseEmitterManager { } catch (Exception ignore) { } emitters.remove(token); + } else { + USER_TOKEN_EMITTERS.remove(userId); } } @@ -93,7 +96,7 @@ public class SseEmitterManager { */ public void sendMessage(Long userId, String message) { Map emitters = USER_TOKEN_EMITTERS.get(userId); - if (emitters != null) { + if (MapUtil.isNotEmpty(emitters)) { for (Map.Entry entry : emitters.entrySet()) { try { entry.getValue().send(SseEmitter.event() @@ -103,6 +106,8 @@ public class SseEmitterManager { emitters.remove(entry.getKey()); } } + } else { + USER_TOKEN_EMITTERS.remove(userId); } } -- Gitee From 41a3bdf73dc7fdbbbe69a9b943ff6f8552a463e1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=A7=8B=E8=BE=9E=E6=9C=AA=E5=AF=92?= <545073804@qq.com> Date: Thu, 2 Jan 2025 07:34:40 +0000 Subject: [PATCH 343/540] =?UTF-8?q?!629=20update=20=E4=BC=98=E5=8C=96jdk21?= =?UTF-8?q?=E7=8E=AF=E5=A2=83=E5=BC=80=E5=90=AF=E8=99=9A=E6=8B=9F=E7=BA=BF?= =?UTF-8?q?=E7=A8=8B=E6=97=B6=E7=9A=84=E5=AE=9A=E6=97=B6=E4=BB=BB=E5=8A=A1?= =?UTF-8?q?=E6=B1=A0=20*=20update=20=E4=BC=98=E5=8C=96jdk21=E7=8E=AF?= =?UTF-8?q?=E5=A2=83=E5=BC=80=E5=90=AF=E8=99=9A=E6=8B=9F=E7=BA=BF=E7=A8=8B?= =?UTF-8?q?=E6=97=B6=E7=9A=84=E5=AE=9A=E6=97=B6=E4=BB=BB=E5=8A=A1=E6=B1=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/core/config/ThreadPoolConfig.java | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/config/ThreadPoolConfig.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/config/ThreadPoolConfig.java index b4d452817..7040330be 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/config/ThreadPoolConfig.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/config/ThreadPoolConfig.java @@ -4,6 +4,7 @@ import jakarta.annotation.PreDestroy; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.concurrent.BasicThreadFactory; import org.dromara.common.core.config.properties.ThreadPoolProperties; +import org.dromara.common.core.utils.SpringUtils; import org.dromara.common.core.utils.Threads; import org.springframework.boot.autoconfigure.AutoConfiguration; import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; @@ -13,6 +14,7 @@ import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor; import java.util.concurrent.ScheduledExecutorService; import java.util.concurrent.ScheduledThreadPoolExecutor; +import java.util.concurrent.ThreadFactory; import java.util.concurrent.ThreadPoolExecutor; /** @@ -49,8 +51,23 @@ public class ThreadPoolConfig { */ @Bean(name = "scheduledExecutorService") protected ScheduledExecutorService scheduledExecutorService() { + ThreadFactory threadFactory; + // 是否启用虚拟线程 + if (SpringUtils.isVirtual()) { + // 虚拟线程必须为守护线程,即 daemon 只能是 true + threadFactory = new BasicThreadFactory.Builder() + .daemon(true) + .namingPattern("virtual-schedule-pool-%d") + .wrappedFactory(Thread.ofVirtual().factory()) + .build(); + } else { + threadFactory = new BasicThreadFactory.Builder() + .daemon(true) + .namingPattern("schedule-pool-%d") + .build(); + } ScheduledThreadPoolExecutor scheduledThreadPoolExecutor = new ScheduledThreadPoolExecutor(core, - new BasicThreadFactory.Builder().namingPattern("schedule-pool-%d").daemon(true).build(), + threadFactory, new ThreadPoolExecutor.CallerRunsPolicy()) { @Override protected void afterExecute(Runnable r, Throwable t) { -- Gitee From a46c798e017a0f6ce0ded81b6970bc9084d11957 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 2 Jan 2025 15:42:24 +0800 Subject: [PATCH 344/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E5=BB=B6?= =?UTF-8?q?=E8=BF=9F=E7=BA=BF=E7=A8=8B=E6=B1=A0=20=E6=94=AF=E6=8C=81?= =?UTF-8?q?=E8=99=9A=E6=8B=9F=E7=BA=BF=E7=A8=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/core/config/ThreadPoolConfig.java | 20 ++++++------------- 1 file changed, 6 insertions(+), 14 deletions(-) diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/config/ThreadPoolConfig.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/config/ThreadPoolConfig.java index 7040330be..2630485a4 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/config/ThreadPoolConfig.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/config/ThreadPoolConfig.java @@ -10,11 +10,11 @@ import org.springframework.boot.autoconfigure.AutoConfiguration; import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; import org.springframework.boot.context.properties.EnableConfigurationProperties; import org.springframework.context.annotation.Bean; +import org.springframework.core.task.VirtualThreadTaskExecutor; import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor; import java.util.concurrent.ScheduledExecutorService; import java.util.concurrent.ScheduledThreadPoolExecutor; -import java.util.concurrent.ThreadFactory; import java.util.concurrent.ThreadPoolExecutor; /** @@ -51,23 +51,15 @@ public class ThreadPoolConfig { */ @Bean(name = "scheduledExecutorService") protected ScheduledExecutorService scheduledExecutorService() { - ThreadFactory threadFactory; - // 是否启用虚拟线程 + // daemon 必须为 true + BasicThreadFactory.Builder builder = new BasicThreadFactory.Builder().daemon(true); if (SpringUtils.isVirtual()) { - // 虚拟线程必须为守护线程,即 daemon 只能是 true - threadFactory = new BasicThreadFactory.Builder() - .daemon(true) - .namingPattern("virtual-schedule-pool-%d") - .wrappedFactory(Thread.ofVirtual().factory()) - .build(); + builder.namingPattern("virtual-schedule-pool-%d").wrappedFactory(new VirtualThreadTaskExecutor().getVirtualThreadFactory()); } else { - threadFactory = new BasicThreadFactory.Builder() - .daemon(true) - .namingPattern("schedule-pool-%d") - .build(); + builder.namingPattern("schedule-pool-%d"); } ScheduledThreadPoolExecutor scheduledThreadPoolExecutor = new ScheduledThreadPoolExecutor(core, - threadFactory, + builder.build(), new ThreadPoolExecutor.CallerRunsPolicy()) { @Override protected void afterExecute(Runnable r, Throwable t) { -- Gitee From ec5ca0a08faaf6e69f83d292b3ec909294a7dc39 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=A7=8B=E8=BE=9E=E6=9C=AA=E5=AF=92?= <545073804@qq.com> Date: Fri, 3 Jan 2025 01:44:39 +0000 Subject: [PATCH 345/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20redisson?= =?UTF-8?q?=E5=8F=91=E5=8F=B7=E5=99=A8=E6=9C=AA=E5=88=9D=E5=A7=8B=E5=8C=96?= =?UTF-8?q?=E5=8F=91=E5=8F=B7=E5=99=A8=E6=AD=A5=E9=95=BF=E5=AF=BC=E8=87=B4?= =?UTF-8?q?=E8=BF=87=E6=9C=9F=E6=97=B6=E9=97=B4=E6=9C=AA=E7=94=9F=E6=95=88?= =?UTF-8?q?=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 秋辞未寒 <545073804@qq.com> --- .../java/org/dromara/common/redis/utils/SequenceUtils.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/utils/SequenceUtils.java b/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/utils/SequenceUtils.java index 3c2f70329..e28c84e89 100644 --- a/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/utils/SequenceUtils.java +++ b/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/utils/SequenceUtils.java @@ -59,10 +59,10 @@ public class SequenceUtils { stepValue = DEFAULT_STEP_VALUE; } RIdGenerator idGenerator = REDISSON_CLIENT.getIdGenerator(key); - // 设置过期时间 - idGenerator.expire(expireTime); // 设置初始值和步长 idGenerator.tryInit(initValue, stepValue); + // 设置过期时间 + idGenerator.expire(expireTime); return idGenerator; } -- Gitee From d023510f7e4dc71de2f5c0832409471f9cf087d4 Mon Sep 17 00:00:00 2001 From: dhb52 Date: Fri, 3 Jan 2025 07:13:22 +0000 Subject: [PATCH 346/540] !632 update snailjob 1.2.0 => 1.3.0-beta1 * update snailjob 1.2.0 => 1.3.0-beta1 --- README.md | 4 +- pom.xml | 2 +- .../src/main/resources/application-dev.yml | 6 ++- .../src/main/resources/application-prod.yml | 6 ++- .../src/main/resources/application-dev.yml | 7 ++- .../src/main/resources/application-prod.yml | 7 ++- script/sql/oracle/oracle_ry_job.sql | 18 +++++--- script/sql/postgres/postgres_ry_job.sql | 18 +++++--- script/sql/ry_job.sql | 10 +++-- script/sql/sqlserver/sqlserver_ry_job.sql | 45 ++++++++++++++++--- 10 files changed, 92 insertions(+), 31 deletions(-) diff --git a/README.md b/README.md index 7a8864116..96708e355 100644 --- a/README.md +++ b/README.md @@ -169,8 +169,8 @@ CCFlow 驰聘低代码-流程-表单 - https://gitee.com/opencc/RuoYi-JFlow
| ![输入图片说明](https://foruda.gitee.com/images/1680078779416197879/75e3ed02_1766278.png "屏幕截图") | ![输入图片说明](https://foruda.gitee.com/images/1680078802329118061/77e10915_1766278.png "屏幕截图") | | ![输入图片说明](https://foruda.gitee.com/images/1680078893627848351/34a1c342_1766278.png "屏幕截图") | ![输入图片说明](https://foruda.gitee.com/images/1680078928175016986/f126ec4a_1766278.png "屏幕截图") | | ![输入图片说明](https://foruda.gitee.com/images/1680078941718318363/b68a0f72_1766278.png "屏幕截图") | ![输入图片说明](https://foruda.gitee.com/images/1680078963175518631/3bb769a1_1766278.png "屏幕截图") | -| ![输入图片说明](https://foruda.gitee.com/images/1680078982294090567/b31c343d_1766278.png "屏幕截图") | ![输入图片说明](https://foruda.gitee.com/images/1680079000642440444/77ca82a9_1766278.png "屏幕截图") | -| ![输入图片说明](https://foruda.gitee.com/images/1680079020995074177/03b7d52e_1766278.png "屏幕截图") | ![输入图片说明](https://foruda.gitee.com/images/1680079039367822173/76811806_1766278.png "屏幕截图") | +| ![输入图片说明](https://foruda.gitee.com/images/1735829153637063344/3c21fd4c_1419627.png "屏幕截图") | ![输入图片说明](https://foruda.gitee.com/images/1735829181303499815/4522cefa_1419627.png "屏幕截图") | +| ![输入图片说明](https://foruda.gitee.com/images/1735829377205259767/76a705d7_1419627.png "屏幕截图") | ![输入图片说明](https://foruda.gitee.com/images/1722959592856812900/e2d0d342_1419627.png "屏幕截图") | | ![输入图片说明](https://foruda.gitee.com/images/1680079274333484664/4dfdc7c0_1766278.png "屏幕截图") | ![输入图片说明](https://foruda.gitee.com/images/1680079290467458224/d6715fcf_1766278.png "屏幕截图") | diff --git a/pom.xml b/pom.xml index ebf2814ed..63b9d0226 100644 --- a/pom.xml +++ b/pom.xml @@ -31,7 +31,7 @@ 3.39.0 2.2.7 4.3.1 - 1.2.0 + 1.3.0-beta1 1.4.5 0.2.0 1.18.34 diff --git a/ruoyi-admin/src/main/resources/application-dev.yml b/ruoyi-admin/src/main/resources/application-dev.yml index e4f6086cc..685708316 100644 --- a/ruoyi-admin/src/main/resources/application-dev.yml +++ b/ruoyi-admin/src/main/resources/application-dev.yml @@ -16,17 +16,19 @@ snail-job: enabled: true # 需要在 SnailJob 后台组管理创建对应名称的组,然后创建任务的时候选择对应的组,才能正确分派任务 group: "ruoyi_group" - # SnailJob 接入验证令牌 详见 script/sql/snail_job.sql `sj_group_config` 表 + # SnailJob 接入验证令牌 详见 script/sql/ry_job.sql `sj_group_config` 表 token: "SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT" server: host: 127.0.0.1 port: 17888 - # 详见 script/sql/snail_job.sql `sj_namespace` 表 + # 命名空间UUID 详见 script/sql/ry_job.sql `sj_namespace`表`unique_id`字段 namespace: ${spring.profiles.active} # 随主应用端口飘逸 port: 2${server.port} # 客户端ip指定 host: + # RPC类型: netty, grpc + rpc-type: grpc --- # 数据源配置 spring: diff --git a/ruoyi-admin/src/main/resources/application-prod.yml b/ruoyi-admin/src/main/resources/application-prod.yml index 2002e9eee..a8c54bcb6 100644 --- a/ruoyi-admin/src/main/resources/application-prod.yml +++ b/ruoyi-admin/src/main/resources/application-prod.yml @@ -19,17 +19,19 @@ snail-job: enabled: true # 需要在 SnailJob 后台组管理创建对应名称的组,然后创建任务的时候选择对应的组,才能正确分派任务 group: "ruoyi_group" - # SnailJob 接入验证令牌 详见 script/sql/snail_job.sql `sj_group_config` 表 + # SnailJob 接入验证令牌 详见 script/sql/ry_job.sql `sj_group_config`表 token: "SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT" server: host: 127.0.0.1 port: 17888 - # 详见 script/sql/snail_job.sql `sj_namespace` 表 + # 命名空间UUID 详见 script/sql/ry_job.sql `sj_namespace`表`unique_id`字段 namespace: ${spring.profiles.active} # 随主应用端口飘逸 port: 2${server.port} # 客户端ip指定 host: + # RPC类型: netty, grpc + rpc-type: grpc --- # 数据源配置 spring: diff --git a/ruoyi-extend/ruoyi-snailjob-server/src/main/resources/application-dev.yml b/ruoyi-extend/ruoyi-snailjob-server/src/main/resources/application-dev.yml index 579f376db..44f298aba 100644 --- a/ruoyi-extend/ruoyi-snailjob-server/src/main/resources/application-dev.yml +++ b/ruoyi-extend/ruoyi-snailjob-server/src/main/resources/application-dev.yml @@ -20,8 +20,8 @@ snail-job: retry-pull-page-size: 1000 # 拉取重试数据的每批次的大小 job-pull-page-size: 1000 - # 服务端netty端口 - netty-port: 17888 + # 服务器端口 + server-port: 17888 # 一个客户端每秒最多接收的重试数量指令 limiter: 1000 # 号段模式下步长配置 @@ -34,7 +34,10 @@ snail-job: max-count: 288 #间隔时间 trigger-interval: 900 + # 重试每次拉取的次数 retry-max-pull-count: 10 + # RPC通讯类型: netty,grpc + rpc-type: grpc --- # 监控中心配置 spring.boot.admin.client: diff --git a/ruoyi-extend/ruoyi-snailjob-server/src/main/resources/application-prod.yml b/ruoyi-extend/ruoyi-snailjob-server/src/main/resources/application-prod.yml index dffe05777..44f298aba 100644 --- a/ruoyi-extend/ruoyi-snailjob-server/src/main/resources/application-prod.yml +++ b/ruoyi-extend/ruoyi-snailjob-server/src/main/resources/application-prod.yml @@ -20,8 +20,8 @@ snail-job: retry-pull-page-size: 1000 # 拉取重试数据的每批次的大小 job-pull-page-size: 1000 - # 服务端 netty 端口 - netty-port: 17888 + # 服务器端口 + server-port: 17888 # 一个客户端每秒最多接收的重试数量指令 limiter: 1000 # 号段模式下步长配置 @@ -34,7 +34,10 @@ snail-job: max-count: 288 #间隔时间 trigger-interval: 900 + # 重试每次拉取的次数 retry-max-pull-count: 10 + # RPC通讯类型: netty,grpc + rpc-type: grpc --- # 监控中心配置 spring.boot.admin.client: diff --git a/script/sql/oracle/oracle_ry_job.sql b/script/sql/oracle/oracle_ry_job.sql index da65dbbf6..c2dbbfa52 100644 --- a/script/sql/oracle/oracle_ry_job.sql +++ b/script/sql/oracle/oracle_ry_job.sql @@ -2,7 +2,7 @@ SnailJob Database Transfer Tool Source Server Type : MySQL Target Server Type : Oracle - Date: 2024-07-06 12:49:36 + Date: 2024-12-27 22:22:15 */ @@ -82,7 +82,7 @@ CREATE TABLE sj_notify_config id number GENERATED ALWAYS AS IDENTITY, namespace_id varchar2(64) DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' NULL, group_name varchar2(64) NULL, - business_id varchar2(64) NULL, + notify_name varchar2(64) DEFAULT '' NULL, system_task_type smallint DEFAULT 3 NOT NULL, notify_status smallint DEFAULT 0 NOT NULL, recipient_ids varchar2(128) NULL, @@ -98,12 +98,12 @@ CREATE TABLE sj_notify_config ALTER TABLE sj_notify_config ADD CONSTRAINT pk_sj_notify_config PRIMARY KEY (id); -CREATE INDEX idx_sj_notify_config_01 ON sj_notify_config (namespace_id, group_name, business_id); +CREATE INDEX idx_sj_notify_config_01 ON sj_notify_config (namespace_id, group_name); COMMENT ON COLUMN sj_notify_config.id IS '主键'; COMMENT ON COLUMN sj_notify_config.namespace_id IS '命名空间id'; COMMENT ON COLUMN sj_notify_config.group_name IS '组名称'; -COMMENT ON COLUMN sj_notify_config.business_id IS '业务id ( job_id或workflow_id或scene_name ) '; +COMMENT ON COLUMN sj_notify_config.notify_name IS '通知名称'; COMMENT ON COLUMN sj_notify_config.system_task_type IS '任务类型 1. 重试任务 2. 重试回调 3、JOB任务 4、WORKFLOW任务'; COMMENT ON COLUMN sj_notify_config.notify_status IS '通知状态 0、未启用 1、启用'; COMMENT ON COLUMN sj_notify_config.recipient_ids IS '接收人id列表'; @@ -321,6 +321,7 @@ CREATE TABLE sj_retry_scene_config max_retry_count number DEFAULT 5 NOT NULL, back_off smallint DEFAULT 1 NOT NULL, trigger_interval varchar2(16) DEFAULT '' NULL, + notify_ids varchar2(128) DEFAULT '' NULL, deadline_request number DEFAULT 60000 NOT NULL, executor_timeout number DEFAULT 5 NOT NULL, route_key smallint DEFAULT 4 NOT NULL, @@ -342,6 +343,7 @@ COMMENT ON COLUMN sj_retry_scene_config.scene_status IS '组状态 0、未启用 COMMENT ON COLUMN sj_retry_scene_config.max_retry_count IS '最大重试次数'; COMMENT ON COLUMN sj_retry_scene_config.back_off IS '1、默认等级 2、固定间隔时间 3、CRON 表达式'; COMMENT ON COLUMN sj_retry_scene_config.trigger_interval IS '间隔时长'; +COMMENT ON COLUMN sj_retry_scene_config.notify_ids IS '通知告警场景配置id列表'; COMMENT ON COLUMN sj_retry_scene_config.deadline_request IS 'Deadline Request 调用链超时 单位毫秒'; COMMENT ON COLUMN sj_retry_scene_config.executor_timeout IS '任务执行超时时间,单位秒'; COMMENT ON COLUMN sj_retry_scene_config.route_key IS '路由策略'; @@ -506,6 +508,8 @@ CREATE TABLE sj_job retry_interval number DEFAULT 0 NOT NULL, bucket_index number DEFAULT 0 NOT NULL, resident smallint DEFAULT 0 NOT NULL, + notify_ids varchar2(128) DEFAULT '' NULL, + owner_id number NULL, description varchar2(256) DEFAULT '' NULL, ext_attrs varchar2(256) DEFAULT '' NULL, deleted smallint DEFAULT 0 NOT NULL, @@ -541,6 +545,8 @@ COMMENT ON COLUMN sj_job.parallel_num IS '并行数'; COMMENT ON COLUMN sj_job.retry_interval IS '重试间隔 ( s ) '; COMMENT ON COLUMN sj_job.bucket_index IS 'bucket'; COMMENT ON COLUMN sj_job.resident IS '是否是常驻任务'; +COMMENT ON COLUMN sj_job.notify_ids IS '通知告警场景配置id列表'; +COMMENT ON COLUMN sj_job.owner_id IS '负责人id'; COMMENT ON COLUMN sj_job.description IS '描述'; COMMENT ON COLUMN sj_job.ext_attrs IS '扩展字段'; COMMENT ON COLUMN sj_job.deleted IS '逻辑删除 1、删除'; @@ -548,7 +554,7 @@ COMMENT ON COLUMN sj_job.create_dt IS '创建时间'; COMMENT ON COLUMN sj_job.update_dt IS '修改时间'; COMMENT ON TABLE sj_job IS '任务信息'; -INSERT INTO sj_job(namespace_id, group_name, job_name, args_str, args_type, next_trigger_at, job_status, task_type, route_key, executor_type, executor_info, trigger_type, trigger_interval, block_strategy,executor_timeout, max_retry_times, parallel_num, retry_interval, bucket_index, resident, description, ext_attrs, deleted, create_dt, update_dt) VALUES ('dev', 'ruoyi_group', 'demo-job', NULL, 1, 1710344035622, 1, 1, 4, 1, 'testJobExecutor', 2, '60', 1, 60, 3, 1, 1, 116, 0, '', '', 0, sysdate, sysdate); +INSERT INTO sj_job(namespace_id, group_name, job_name, args_str, args_type, next_trigger_at, job_status, task_type, route_key, executor_type, executor_info, trigger_type, trigger_interval, block_strategy,executor_timeout, max_retry_times, parallel_num, retry_interval, bucket_index, resident, notify_ids, owner_id, description, ext_attrs, deleted, create_dt, update_dt) VALUES ('dev', 'ruoyi_group', 'demo-job', NULL, 1, 1710344035622, 1, 1, 4, 1, 'testJobExecutor', 2, '60', 1, 60, 3, 1, 1, 116, 0, '', 1,'', '', 0, sysdate, sysdate); -- sj_job_log_message CREATE TABLE sj_job_log_message @@ -781,6 +787,7 @@ CREATE TABLE sj_workflow description varchar2(256) DEFAULT '' NULL, flow_info clob DEFAULT NULL NULL, wf_context clob DEFAULT NULL NULL, + notify_ids varchar2(128) DEFAULT '' NULL, bucket_index number DEFAULT 0 NOT NULL, version number NOT NULL, ext_attrs varchar2(256) DEFAULT '' NULL, @@ -808,6 +815,7 @@ COMMENT ON COLUMN sj_workflow.executor_timeout IS '任务执行超时时间, COMMENT ON COLUMN sj_workflow.description IS '描述'; COMMENT ON COLUMN sj_workflow.flow_info IS '流程信息'; COMMENT ON COLUMN sj_workflow.wf_context IS '上下文'; +COMMENT ON COLUMN sj_workflow.notify_ids IS '通知告警场景配置id列表'; COMMENT ON COLUMN sj_workflow.bucket_index IS 'bucket'; COMMENT ON COLUMN sj_workflow.version IS '版本号'; COMMENT ON COLUMN sj_workflow.ext_attrs IS '扩展字段'; diff --git a/script/sql/postgres/postgres_ry_job.sql b/script/sql/postgres/postgres_ry_job.sql index 546db3cc8..1a08a9990 100644 --- a/script/sql/postgres/postgres_ry_job.sql +++ b/script/sql/postgres/postgres_ry_job.sql @@ -2,7 +2,7 @@ SnailJob Database Transfer Tool Source Server Type : MySQL Target Server Type : PostgreSQL - Date: 2024-07-06 11:45:40 + Date: 2024-12-27 22:13:49 */ @@ -76,7 +76,7 @@ CREATE TABLE sj_notify_config id bigserial PRIMARY KEY, namespace_id varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a', group_name varchar(64) NOT NULL, - business_id varchar(64) NOT NULL, + notify_name varchar(64) NOT NULL DEFAULT '', system_task_type smallint NOT NULL DEFAULT 3, notify_status smallint NOT NULL DEFAULT 0, recipient_ids varchar(128) NOT NULL, @@ -89,12 +89,12 @@ CREATE TABLE sj_notify_config update_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ); -CREATE INDEX idx_sj_notify_config_01 ON sj_notify_config (namespace_id, group_name, business_id); +CREATE INDEX idx_sj_notify_config_01 ON sj_notify_config (namespace_id, group_name); COMMENT ON COLUMN sj_notify_config.id IS '主键'; COMMENT ON COLUMN sj_notify_config.namespace_id IS '命名空间id'; COMMENT ON COLUMN sj_notify_config.group_name IS '组名称'; -COMMENT ON COLUMN sj_notify_config.business_id IS '业务id ( job_id或workflow_id或scene_name ) '; +COMMENT ON COLUMN sj_notify_config.notify_name IS '通知名称'; COMMENT ON COLUMN sj_notify_config.system_task_type IS '任务类型 1. 重试任务 2. 重试回调 3、JOB任务 4、WORKFLOW任务'; COMMENT ON COLUMN sj_notify_config.notify_status IS '通知状态 0、未启用 1、启用'; COMMENT ON COLUMN sj_notify_config.recipient_ids IS '接收人id列表'; @@ -297,6 +297,7 @@ CREATE TABLE sj_retry_scene_config max_retry_count int NOT NULL DEFAULT 5, back_off smallint NOT NULL DEFAULT 1, trigger_interval varchar(16) NOT NULL DEFAULT '', + notify_ids varchar(128) NOT NULL DEFAULT '', deadline_request bigint NOT NULL DEFAULT 60000, executor_timeout int NOT NULL DEFAULT 5, route_key smallint NOT NULL DEFAULT 4, @@ -315,6 +316,7 @@ COMMENT ON COLUMN sj_retry_scene_config.scene_status IS '组状态 0、未启用 COMMENT ON COLUMN sj_retry_scene_config.max_retry_count IS '最大重试次数'; COMMENT ON COLUMN sj_retry_scene_config.back_off IS '1、默认等级 2、固定间隔时间 3、CRON 表达式'; COMMENT ON COLUMN sj_retry_scene_config.trigger_interval IS '间隔时长'; +COMMENT ON COLUMN sj_retry_scene_config.notify_ids IS '通知告警场景配置id列表'; COMMENT ON COLUMN sj_retry_scene_config.deadline_request IS 'Deadline Request 调用链超时 单位毫秒'; COMMENT ON COLUMN sj_retry_scene_config.executor_timeout IS '任务执行超时时间,单位秒'; COMMENT ON COLUMN sj_retry_scene_config.route_key IS '路由策略'; @@ -464,6 +466,8 @@ CREATE TABLE sj_job retry_interval int NOT NULL DEFAULT 0, bucket_index int NOT NULL DEFAULT 0, resident smallint NOT NULL DEFAULT 0, + notify_ids varchar(128) NOT NULL DEFAULT '', + owner_id bigint NULL, description varchar(256) NOT NULL DEFAULT '', ext_attrs varchar(256) NULL DEFAULT '', deleted smallint NOT NULL DEFAULT 0, @@ -496,6 +500,8 @@ COMMENT ON COLUMN sj_job.parallel_num IS '并行数'; COMMENT ON COLUMN sj_job.retry_interval IS '重试间隔 ( s ) '; COMMENT ON COLUMN sj_job.bucket_index IS 'bucket'; COMMENT ON COLUMN sj_job.resident IS '是否是常驻任务'; +COMMENT ON COLUMN sj_job.notify_ids IS '通知告警场景配置id列表'; +COMMENT ON COLUMN sj_job.owner_id IS '负责人id'; COMMENT ON COLUMN sj_job.description IS '描述'; COMMENT ON COLUMN sj_job.ext_attrs IS '扩展字段'; COMMENT ON COLUMN sj_job.deleted IS '逻辑删除 1、删除'; @@ -503,7 +509,7 @@ COMMENT ON COLUMN sj_job.create_dt IS '创建时间'; COMMENT ON COLUMN sj_job.update_dt IS '修改时间'; COMMENT ON TABLE sj_job IS '任务信息'; -INSERT INTO sj_job VALUES (1, 'dev', 'ruoyi_group', 'demo-job', null, 1, 1710344035622, 1, 1, 4, 1, 'testJobExecutor', 2, '60', 1, 60, 3, 1, 1, 116, 0, '', '', 0, now(), now()); +INSERT INTO sj_job VALUES (1, 'dev', 'ruoyi_group', 'demo-job', null, 1, 1710344035622, 1, 1, 4, 1, 'testJobExecutor', 2, '60', 1, 60, 3, 1, 1, 116, 0, '', 1, '', '', 0, now(), now()); -- sj_job_log_message CREATE TABLE sj_job_log_message @@ -721,6 +727,7 @@ CREATE TABLE sj_workflow description varchar(256) NOT NULL DEFAULT '', flow_info text NULL DEFAULT NULL, wf_context text NULL DEFAULT NULL, + notify_ids varchar(128) NOT NULL DEFAULT '', bucket_index int NOT NULL DEFAULT 0, version int NOT NULL, ext_attrs varchar(256) NULL DEFAULT '', @@ -745,6 +752,7 @@ COMMENT ON COLUMN sj_workflow.executor_timeout IS '任务执行超时时间, COMMENT ON COLUMN sj_workflow.description IS '描述'; COMMENT ON COLUMN sj_workflow.flow_info IS '流程信息'; COMMENT ON COLUMN sj_workflow.wf_context IS '上下文'; +COMMENT ON COLUMN sj_workflow.notify_ids IS '通知告警场景配置id列表'; COMMENT ON COLUMN sj_workflow.bucket_index IS 'bucket'; COMMENT ON COLUMN sj_workflow.version IS '版本号'; COMMENT ON COLUMN sj_workflow.ext_attrs IS '扩展字段'; diff --git a/script/sql/ry_job.sql b/script/sql/ry_job.sql index 396798ee0..c6ec01b45 100644 --- a/script/sql/ry_job.sql +++ b/script/sql/ry_job.sql @@ -47,7 +47,7 @@ CREATE TABLE `sj_notify_config` `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键', `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id', `group_name` varchar(64) NOT NULL COMMENT '组名称', - `business_id` varchar(64) NOT NULL COMMENT '业务id (job_id或workflow_id或scene_name)', + `notify_name` varchar(64) NOT NULL DEFAULT '' COMMENT '通知名称', `system_task_type` tinyint(4) NOT NULL DEFAULT 3 COMMENT '任务类型 1. 重试任务 2. 重试回调 3、JOB任务 4、WORKFLOW任务', `notify_status` tinyint(4) NOT NULL DEFAULT 0 COMMENT '通知状态 0、未启用 1、启用', `recipient_ids` varchar(128) NOT NULL COMMENT '接收人id列表', @@ -59,7 +59,7 @@ CREATE TABLE `sj_notify_config` `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间', PRIMARY KEY (`id`), - KEY `idx_namespace_id_group_name_scene_name` (`namespace_id`, `group_name`, `business_id`) + KEY `idx_namespace_id_group_name_scene_name` (`namespace_id`, `group_name`) ) ENGINE = InnoDB AUTO_INCREMENT = 0 DEFAULT CHARSET = utf8mb4 COMMENT ='通知配置'; @@ -188,6 +188,7 @@ CREATE TABLE `sj_retry_scene_config` `max_retry_count` int(11) NOT NULL DEFAULT 5 COMMENT '最大重试次数', `back_off` tinyint(4) NOT NULL DEFAULT 1 COMMENT '1、默认等级 2、固定间隔时间 3、CRON 表达式', `trigger_interval` varchar(16) NOT NULL DEFAULT '' COMMENT '间隔时长', + `notify_ids` varchar(128) NOT NULL DEFAULT '' COMMENT '通知告警场景配置id列表', `deadline_request` bigint(20) unsigned NOT NULL DEFAULT 60000 COMMENT 'Deadline Request 调用链超时 单位毫秒', `executor_timeout` int(11) unsigned NOT NULL DEFAULT 5 COMMENT '任务执行超时时间,单位秒', `route_key` tinyint(4) NOT NULL DEFAULT 4 COMMENT '路由策略', @@ -300,6 +301,8 @@ CREATE TABLE `sj_job` `retry_interval` int(11) NOT NULL DEFAULT 0 COMMENT '重试间隔(s)', `bucket_index` int(11) NOT NULL DEFAULT 0 COMMENT 'bucket', `resident` tinyint(4) NOT NULL DEFAULT 0 COMMENT '是否是常驻任务', + `notify_ids` varchar(128) NOT NULL DEFAULT '' COMMENT '通知告警场景配置id列表', + `owner_id` bigint(20) NULL COMMENT '负责人id', `description` varchar(256) NOT NULL DEFAULT '' COMMENT '描述', `ext_attrs` varchar(256) NULL DEFAULT '' COMMENT '扩展字段', `deleted` tinyint(4) NOT NULL DEFAULT 0 COMMENT '逻辑删除 1、删除', @@ -313,7 +316,7 @@ CREATE TABLE `sj_job` AUTO_INCREMENT = 0 DEFAULT CHARSET = utf8mb4 COMMENT ='任务信息'; -INSERT INTO `sj_job` VALUES (1, 'dev', 'ruoyi_group', 'demo-job', null, 1, 1710344035622, 1, 1, 4, 1, 'testJobExecutor', 2, '60', 1, 60, 3, 1, 1, 116, 0, '', '', 0 , now(), now()); +INSERT INTO `sj_job` VALUES (1, 'dev', 'ruoyi_group', 'demo-job', null, 1, 1710344035622, 1, 1, 4, 1, 'testJobExecutor', 2, '60', 1, 60, 3, 1, 1, 116, 0, '', 1, '', '', 0 , now(), now()); CREATE TABLE `sj_job_log_message` ( @@ -451,6 +454,7 @@ CREATE TABLE `sj_workflow` `description` varchar(256) NOT NULL DEFAULT '' COMMENT '描述', `flow_info` text DEFAULT NULL COMMENT '流程信息', `wf_context` text DEFAULT NULL COMMENT '上下文', + `notify_ids` varchar(128) NOT NULL DEFAULT '' COMMENT '通知告警场景配置id列表', `bucket_index` int(11) NOT NULL DEFAULT 0 COMMENT 'bucket', `version` int(11) NOT NULL COMMENT '版本号', `ext_attrs` varchar(256) NULL DEFAULT '' COMMENT '扩展字段', diff --git a/script/sql/sqlserver/sqlserver_ry_job.sql b/script/sql/sqlserver/sqlserver_ry_job.sql index bcf87f668..97addc3aa 100644 --- a/script/sql/sqlserver/sqlserver_ry_job.sql +++ b/script/sql/sqlserver/sqlserver_ry_job.sql @@ -2,7 +2,7 @@ SnailJob Database Transfer Tool Source Server Type : MySQL Target Server Type : Microsoft SQL Server - Date: 2024-07-06 12:55:47 + Date: 2024-12-27 22:24:37 */ @@ -212,7 +212,7 @@ CREATE TABLE sj_notify_config id bigint NOT NULL PRIMARY KEY IDENTITY, namespace_id nvarchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a', group_name nvarchar(64) NOT NULL, - business_id nvarchar(64) NOT NULL, + notify_name nvarchar(64) NOT NULL DEFAULT '', system_task_type tinyint NOT NULL DEFAULT 3, notify_status tinyint NOT NULL DEFAULT 0, recipient_ids nvarchar(128) NOT NULL, @@ -226,7 +226,7 @@ CREATE TABLE sj_notify_config ) GO -CREATE INDEX idx_sj_notify_config_01 ON sj_notify_config (namespace_id, group_name, business_id) +CREATE INDEX idx_sj_notify_config_01 ON sj_notify_config (namespace_id, group_name) GO EXEC sp_addextendedproperty @@ -251,10 +251,10 @@ EXEC sp_addextendedproperty GO EXEC sp_addextendedproperty - 'MS_Description', N'业务id ( job_id或workflow_id或scene_name ) ', + 'MS_Description', N'通知名称', 'SCHEMA', N'dbo', 'TABLE', N'sj_notify_config', - 'COLUMN', N'business_id' + 'COLUMN', N'notify_name' GO EXEC sp_addextendedproperty @@ -917,6 +917,7 @@ CREATE TABLE sj_retry_scene_config max_retry_count int NOT NULL DEFAULT 5, back_off tinyint NOT NULL DEFAULT 1, trigger_interval nvarchar(16) NOT NULL DEFAULT '', + notify_ids nvarchar(128) NOT NULL DEFAULT '', deadline_request bigint NOT NULL DEFAULT 60000, executor_timeout int NOT NULL DEFAULT 5, route_key tinyint NOT NULL DEFAULT 4, @@ -985,6 +986,13 @@ EXEC sp_addextendedproperty 'COLUMN', N'trigger_interval' GO +EXEC sp_addextendedproperty + 'MS_Description', N'通知告警场景配置id列表', + 'SCHEMA', N'dbo', + 'TABLE', N'sj_retry_scene_config', + 'COLUMN', N'notify_ids' +GO + EXEC sp_addextendedproperty 'MS_Description', N'Deadline Request 调用链超时 单位毫秒', 'SCHEMA', N'dbo', @@ -1415,6 +1423,8 @@ CREATE TABLE sj_job retry_interval int NOT NULL DEFAULT 0, bucket_index int NOT NULL DEFAULT 0, resident tinyint NOT NULL DEFAULT 0, + notify_ids nvarchar(128) NOT NULL DEFAULT '', + owner_id bigint NULL, description nvarchar(256) NOT NULL DEFAULT '', ext_attrs nvarchar(256) NULL DEFAULT '', deleted tinyint NOT NULL DEFAULT 0, @@ -1577,6 +1587,20 @@ EXEC sp_addextendedproperty 'COLUMN', N'resident' GO +EXEC sp_addextendedproperty + 'MS_Description', N'通知告警场景配置id列表', + 'SCHEMA', N'dbo', + 'TABLE', N'sj_job', + 'COLUMN', N'notify_ids' +GO + +EXEC sp_addextendedproperty + 'MS_Description', N'负责人id', + 'SCHEMA', N'dbo', + 'TABLE', N'sj_job', + 'COLUMN', N'owner_id' +GO + EXEC sp_addextendedproperty 'MS_Description', N'描述', 'SCHEMA', N'dbo', @@ -1618,7 +1642,7 @@ EXEC sp_addextendedproperty 'TABLE', N'sj_job' GO -INSERT INTO sj_job (namespace_id, group_name, job_name, args_str, args_type, next_trigger_at, job_status, task_type, route_key, executor_type, executor_info, trigger_type, trigger_interval, block_strategy,executor_timeout, max_retry_times, parallel_num, retry_interval, bucket_index, resident, description, ext_attrs, deleted, create_dt, update_dt) VALUES (N'dev', N'ruoyi_group', N'demo-job', null, 1, 1710344035622, 1, 1, 4, 1, N'testJobExecutor', 2, N'60', 1, 60, 3, 1, 1, 116, 0, N'', N'', 0, getdate(), getdate()) +INSERT INTO sj_job (namespace_id, group_name, job_name, args_str, args_type, next_trigger_at, job_status, task_type, route_key, executor_type, executor_info, trigger_type, trigger_interval, block_strategy,executor_timeout, max_retry_times, parallel_num, retry_interval, bucket_index, resident, notify_ids, owner_id, description, ext_attrs, deleted, create_dt, update_dt) VALUES (N'dev', N'ruoyi_group', N'demo-job', null, 1, 1710344035622, 1, 1, 4, 1, N'testJobExecutor', 2, N'60', 1, 60, 3, 1, 1, 116, 0, N'', 1, N'', N'', 0, getdate(), getdate()) GO -- sj_job_log_message @@ -2308,6 +2332,7 @@ CREATE TABLE sj_workflow description nvarchar(256) NOT NULL DEFAULT '', flow_info nvarchar(max) NULL DEFAULT NULL, wf_context nvarchar(max) NULL DEFAULT NULL, + notify_ids nvarchar(128) NOT NULL DEFAULT '', bucket_index int NOT NULL DEFAULT 0, version int NOT NULL, ext_attrs nvarchar(256) NULL DEFAULT '', @@ -2413,6 +2438,13 @@ EXEC sp_addextendedproperty 'COLUMN', N'wf_context' GO +EXEC sp_addextendedproperty + 'MS_Description', N'通知告警场景配置id列表', + 'SCHEMA', N'dbo', + 'TABLE', N'sj_workflow', + 'COLUMN', N'notify_ids' +GO + EXEC sp_addextendedproperty 'MS_Description', N'bucket', 'SCHEMA', N'dbo', @@ -2744,4 +2776,3 @@ EXEC sp_addextendedproperty 'SCHEMA', N'dbo', 'TABLE', N'sj_workflow_task_batch' GO - -- Gitee From 8bd2e27653dd3d1304166edb24d82c818608b052 Mon Sep 17 00:00:00 2001 From: dap <15891557205@163.com> Date: Sat, 4 Jan 2025 16:08:57 +0800 Subject: [PATCH 347/540] =?UTF-8?q?update:=20=E5=A2=9E=E5=8A=A0=E8=8F=9C?= =?UTF-8?q?=E5=8D=95=E9=80=89=E6=8B=A9=E6=8B=93=E5=B1=95=E5=8F=82=E6=95=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dromara/system/service/impl/SysMenuServiceImpl.java | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysMenuServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysMenuServiceImpl.java index 354d4b4d9..40643e13d 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysMenuServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysMenuServiceImpl.java @@ -242,11 +242,14 @@ public class SysMenuServiceImpl implements ISysMenuService { if (CollUtil.isEmpty(menus)) { return CollUtil.newArrayList(); } - return TreeBuildUtils.build(menus, (menu, tree) -> - tree.setId(menu.getMenuId()) + return TreeBuildUtils.build(menus, (menu, tree) -> { + Tree menuTree = tree.setId(menu.getMenuId()) .setParentId(menu.getParentId()) .setName(menu.getMenuName()) - .setWeight(menu.getOrderNum())); + .setWeight(menu.getOrderNum()); + menuTree.put("menuType", menu.getMenuType()); + menuTree.put("icon", menu.getIcon()); + }); } /** -- Gitee From 08e40b611b2bdc97361d4a6d753b788b83818623 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Sun, 5 Jan 2025 23:00:56 +0800 Subject: [PATCH 348/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E6=9D=83=E9=99=90=20=E5=A4=9A=E8=A7=92=E8=89=B2?= =?UTF-8?q?=E5=A4=9A=E6=B3=A8=E8=A7=A3=E5=8C=85=E5=90=AB=E5=BF=BD=E7=95=A5?= =?UTF-8?q?=E6=9D=83=E9=99=90=E6=A0=87=E8=AF=86=E7=AC=A6=E9=80=BB=E8=BE=91?= =?UTF-8?q?=E4=B8=8D=E6=AD=A3=E7=A1=AE=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../handler/PlusDataPermissionHandler.java | 48 +++++++++++-------- 1 file changed, 28 insertions(+), 20 deletions(-) diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/PlusDataPermissionHandler.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/PlusDataPermissionHandler.java index 783d3526e..07baedb39 100644 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/PlusDataPermissionHandler.java +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/PlusDataPermissionHandler.java @@ -135,6 +135,27 @@ public class PlusDataPermissionHandler { context.setBeanResolver(beanResolver); DataPermissionHelper.getContext().forEach(context::setVariable); Set conditions = new HashSet<>(); + // 优先设置变量 + List keys = new ArrayList<>(); + Map ignoreMap = new HashMap<>(); + for (DataColumn dataColumn : dataPermission.value()) { + if (dataColumn.key().length != dataColumn.value().length) { + throw new ServiceException("角色数据范围异常 => key与value长度不匹配"); + } + // 包含权限标识符 这直接跳过 + if (StringUtils.isNotBlank(dataColumn.permission()) && + CollUtil.contains(user.getMenuPermission(), dataColumn.permission()) + ) { + ignoreMap.put(dataColumn, Boolean.TRUE); + continue; + } + // 设置注解变量 key 为表达式变量 value 为变量值 + for (int i = 0; i < dataColumn.key().length; i++) { + context.setVariable(dataColumn.key()[i], dataColumn.value()[i]); + } + keys.addAll(Arrays.stream(dataColumn.key()).map(key -> "#" + key).toList()); + } + for (RoleDTO role : user.getRoles()) { user.setRoleId(role.getRoleId()); // 获取角色权限泛型 @@ -144,34 +165,21 @@ public class PlusDataPermissionHandler { } // 全部数据权限直接返回 if (type == DataScopeType.ALL) { - return ""; + return StringUtils.EMPTY; } boolean isSuccess = false; - List keys = new ArrayList<>(); - for (DataColumn dataColumn : dataPermission.value()) { - if (dataColumn.key().length != dataColumn.value().length) { - throw new ServiceException("角色数据范围异常 => key与value长度不匹配"); - } - // 设置注解变量 key 为表达式变量 value 为变量值 - for (int i = 0; i < dataColumn.key().length; i++) { - context.setVariable(dataColumn.key()[i], dataColumn.value()[i]); - } - keys.addAll(Arrays.stream(dataColumn.key()).map(key -> "#" + key).toList()); - } for (DataColumn dataColumn : dataPermission.value()) { - // 不包含 key 变量 则不处理 - if (!StringUtils.containsAny(type.getSqlTemplate(), keys.toArray(String[]::new))) { - continue; - } // 包含权限标识符 这直接跳过 - if (StringUtils.isNotBlank(dataColumn.permission()) && - CollUtil.contains(user.getMenuPermission(), dataColumn.permission()) - ) { + if (ignoreMap.containsKey(dataColumn)) { // 修复多角色与权限标识符共用问题 https://gitee.com/dromara/RuoYi-Vue-Plus/issues/IB4CS4 conditions.add(joinStr + " 1 = 1 "); isSuccess = true; continue; } + // 不包含 key 变量 则不处理 + if (!StringUtils.containsAny(type.getSqlTemplate(), keys.toArray(String[]::new))) { + continue; + } // 忽略数据权限 防止spel表达式内有其他sql查询导致死循环调用 String sql = DataPermissionHelper.ignore(() -> @@ -191,7 +199,7 @@ public class PlusDataPermissionHandler { String sql = StreamUtils.join(conditions, Function.identity(), ""); return sql.substring(joinStr.length()); } - return ""; + return StringUtils.EMPTY; } /** -- Gitee From 4de9fa33b7261081a47d8b3bc4ae437a026c9716 Mon Sep 17 00:00:00 2001 From: AprilWind <2100166581@qq.com> Date: Tue, 7 Jan 2025 05:23:27 +0800 Subject: [PATCH 349/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=E4=BF=AE?= =?UTF-8?q?=E6=94=B9=E9=83=A8=E9=97=A8=E4=BF=A1=E6=81=AF=E5=A2=9E=E5=8A=A0?= =?UTF-8?q?=E4=BA=8B=E5=8A=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/dromara/system/service/impl/SysDeptServiceImpl.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java index 0199ec719..ca062bee6 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java @@ -31,6 +31,7 @@ import org.springframework.cache.annotation.CacheEvict; import org.springframework.cache.annotation.Cacheable; import org.springframework.cache.annotation.Caching; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; import java.util.ArrayList; import java.util.Arrays; @@ -301,6 +302,7 @@ public class SysDeptServiceImpl implements ISysDeptService, DeptService { @CacheEvict(cacheNames = CacheNames.SYS_DEPT_AND_CHILD, allEntries = true) }) @Override + @Transactional(rollbackFor = Exception.class) public int updateDept(SysDeptBo bo) { SysDept dept = MapstructUtils.convert(bo, SysDept.class); SysDept oldDept = baseMapper.selectById(dept.getDeptId()); -- Gitee From ad53965626f393e418a06b264a11550539419807 Mon Sep 17 00:00:00 2001 From: CoderKK Date: Tue, 7 Jan 2025 03:59:34 +0000 Subject: [PATCH 350/540] =?UTF-8?q?!634=20docs:=20=E4=BF=AE=E6=94=B9?= =?UTF-8?q?=E5=BA=94=E7=94=A8=E9=85=8D=E7=BD=AE=E6=96=87=E4=BB=B6=E4=B8=AD?= =?UTF-8?q?=E7=9A=84=E6=B3=A8=E9=87=8A=E9=94=99=E5=88=AB=E5=AD=97=20*=20do?= =?UTF-8?q?cs:=20=E4=BF=AE=E6=94=B9=E5=BA=94=E7=94=A8=E9=85=8D=E7=BD=AE?= =?UTF-8?q?=E6=96=87=E4=BB=B6=E4=B8=AD=E7=9A=84=E6=B3=A8=E9=87=8A=E9=94=99?= =?UTF-8?q?=E5=88=AB=E5=AD=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ruoyi-admin/src/main/resources/application-dev.yml | 2 +- ruoyi-admin/src/main/resources/application-prod.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/ruoyi-admin/src/main/resources/application-dev.yml b/ruoyi-admin/src/main/resources/application-dev.yml index 685708316..6a804a947 100644 --- a/ruoyi-admin/src/main/resources/application-dev.yml +++ b/ruoyi-admin/src/main/resources/application-dev.yml @@ -23,7 +23,7 @@ snail-job: port: 17888 # 命名空间UUID 详见 script/sql/ry_job.sql `sj_namespace`表`unique_id`字段 namespace: ${spring.profiles.active} - # 随主应用端口飘逸 + # 随主应用端口漂移 port: 2${server.port} # 客户端ip指定 host: diff --git a/ruoyi-admin/src/main/resources/application-prod.yml b/ruoyi-admin/src/main/resources/application-prod.yml index a8c54bcb6..15f2c5243 100644 --- a/ruoyi-admin/src/main/resources/application-prod.yml +++ b/ruoyi-admin/src/main/resources/application-prod.yml @@ -26,7 +26,7 @@ snail-job: port: 17888 # 命名空间UUID 详见 script/sql/ry_job.sql `sj_namespace`表`unique_id`字段 namespace: ${spring.profiles.active} - # 随主应用端口飘逸 + # 随主应用端口漂移 port: 2${server.port} # 客户端ip指定 host: -- Gitee From 254e61ab019e7c6826b5811024b387dd495c2299 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Tue, 7 Jan 2025 13:52:21 +0800 Subject: [PATCH 351/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20postgresql?= =?UTF-8?q?=E7=9A=84=E8=A1=A8=E5=85=83=E6=95=B0=E6=8D=AE=E6=B2=A1=E6=9C=89?= =?UTF-8?q?=E5=88=9B=E5=BB=BA=E6=97=B6=E9=97=B4=E8=BF=99=E4=B8=AA=E4=B8=9C?= =?UTF-8?q?=E8=A5=BF(=E5=A5=BD=E5=A5=87=E8=91=A9)=20=E5=8F=AA=E8=83=BDnew?= =?UTF-8?q?=20Date=E4=BB=A3=E6=9B=BF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/dromara/generator/service/GenTableServiceImpl.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java index 7eb99eb59..acf5bf820 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java +++ b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java @@ -162,7 +162,8 @@ public class GenTableServiceImpl implements IGenTableService { GenTable gen = new GenTable(); gen.setTableName(x.getName()); gen.setTableComment(x.getComment()); - gen.setCreateTime(x.getCreateTime()); + // postgresql的表元数据没有创建时间这个东西(好奇葩) 只能new Date代替 + gen.setCreateTime(ObjectUtil.defaultIfNull(x.getCreateTime(), new Date())); gen.setUpdateTime(x.getUpdateTime()); return gen; }).sorted(Comparator.comparing(GenTable::getCreateTime).reversed()) -- Gitee From 820db87604a8a21db5a84ed3fc9334c0c2a41f5a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Wed, 8 Jan 2025 10:57:14 +0800 Subject: [PATCH 352/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E4=BD=BF?= =?UTF-8?q?=E7=94=A8request=E5=AD=98=E5=82=A8=E5=8A=A8=E6=80=81=E7=A7=9F?= =?UTF-8?q?=E6=88=B7=20=E9=81=BF=E5=85=8D=E5=8D=95=E8=AF=B7=E6=B1=82?= =?UTF-8?q?=E5=A4=9A=E6=AC=A1=E6=9F=A5=E8=AF=A2redis=E8=8E=B7=E5=8F=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dromara/common/tenant/helper/TenantHelper.java | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/helper/TenantHelper.java b/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/helper/TenantHelper.java index 1a5ea1a76..74c31107d 100644 --- a/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/helper/TenantHelper.java +++ b/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/helper/TenantHelper.java @@ -5,10 +5,12 @@ import cn.hutool.core.convert.Convert; import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.plugins.IgnoreStrategy; import com.baomidou.mybatisplus.core.plugins.InterceptorIgnoreHelper; +import jakarta.servlet.http.HttpServletRequest; import lombok.AccessLevel; import lombok.NoArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.dromara.common.core.constant.GlobalConstants; +import org.dromara.common.core.utils.ServletUtils; import org.dromara.common.core.utils.SpringUtils; import org.dromara.common.core.utils.StringUtils; import org.dromara.common.core.utils.reflect.ReflectUtils; @@ -135,6 +137,7 @@ public class TenantHelper { } String cacheKey = DYNAMIC_TENANT_KEY + ":" + LoginHelper.getUserId(); RedisUtils.setCacheObject(cacheKey, tenantId); + ServletUtils.getRequest().setAttribute(cacheKey, tenantId); } /** @@ -154,8 +157,15 @@ public class TenantHelper { if (StringUtils.isNotBlank(tenantId)) { return tenantId; } + HttpServletRequest request = ServletUtils.getRequest(); String cacheKey = DYNAMIC_TENANT_KEY + ":" + LoginHelper.getUserId(); + tenantId = (String) request.getAttribute(cacheKey); + // 如果为 -1 说明已经查过redis并且不存在值 则直接返回null + if (StringUtils.isNotBlank(tenantId)) { + return tenantId.equals("-1") ? null : tenantId; + } tenantId = RedisUtils.getCacheObject(cacheKey); + request.setAttribute(cacheKey, StringUtils.isBlank(tenantId) ? "-1" : tenantId); return tenantId; } @@ -173,6 +183,7 @@ public class TenantHelper { TEMP_DYNAMIC_TENANT.remove(); String cacheKey = DYNAMIC_TENANT_KEY + ":" + LoginHelper.getUserId(); RedisUtils.deleteObject(cacheKey); + ServletUtils.getRequest().removeAttribute(cacheKey); } /** -- Gitee From a58f72868a5763d32c35742b254408eeb1b4ca61 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Wed, 8 Jan 2025 14:47:57 +0800 Subject: [PATCH 353/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E5=B7=A5?= =?UTF-8?q?=E5=85=B7=E7=B1=BB=E5=B0=81=E8=A3=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dromara/common/core/utils/StringUtils.java | 17 +++++++++++++++++ .../generator/service/GenTableServiceImpl.java | 14 ++------------ 2 files changed, 19 insertions(+), 12 deletions(-) diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/StringUtils.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/StringUtils.java index dd6ebb119..897ab920a 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/StringUtils.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/StringUtils.java @@ -320,4 +320,21 @@ public class StringUtils extends org.apache.commons.lang3.StringUtils { .collect(Collectors.toList()); } + /** + * 不区分大小写检查 CharSequence 是否以指定的前缀开头。 + * + * @param str 要检查的 CharSequence 可能为 null + * @param prefixs 要查找的前缀可能为 null + * @return 是否包含 + */ + public static boolean startWithAnyIgnoreCase(CharSequence str, CharSequence... prefixs) { + // 判断是否是以指定字符串开头 + for (CharSequence prefix : prefixs) { + if (StringUtils.startsWithIgnoreCase(str, prefix)) { + return true; + } + } + return false; + } + } diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java index acf5bf820..37299804a 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java +++ b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java @@ -137,7 +137,7 @@ public class GenTableServiceImpl implements IGenTableService { } // 过滤并转换表格数据 List tables = tablesMap.values().stream() - .filter(x -> !startWithAnyIgnoreCase(x.getName(), TABLE_IGNORE)) + .filter(x -> !StringUtils.startWithAnyIgnoreCase(x.getName(), TABLE_IGNORE)) .filter(x -> { if (CollUtil.isEmpty(tableNames)) { return true; @@ -176,16 +176,6 @@ public class GenTableServiceImpl implements IGenTableService { return TableDataInfo.build(page); } - public static boolean startWithAnyIgnoreCase(CharSequence cs, CharSequence... searchCharSequences) { - // 判断是否是以指定字符串开头 - for (CharSequence searchCharSequence : searchCharSequences) { - if (StringUtils.startsWithIgnoreCase(cs, searchCharSequence)) { - return true; - } - } - return false; - } - /** * 查询据库列表 * @@ -204,7 +194,7 @@ public class GenTableServiceImpl implements IGenTableService { } List> tableList = tablesMap.values().stream() - .filter(x -> !startWithAnyIgnoreCase(x.getName(), TABLE_IGNORE)) + .filter(x -> !StringUtils.startWithAnyIgnoreCase(x.getName(), TABLE_IGNORE)) .filter(x -> tableNameSet.contains(x.getName())).toList(); if (CollUtil.isEmpty(tableList)) { -- Gitee From 9a95c46578a7a6e805ef1d2b2688fda41e8457c0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Wed, 8 Jan 2025 15:50:38 +0800 Subject: [PATCH 354/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E5=B0=86?= =?UTF-8?q?servlet=E6=94=B9=E4=B8=BAsaholder=20=E5=85=BC=E5=AE=B9=E5=85=B6?= =?UTF-8?q?=E4=BB=96=E5=9C=BA=E6=99=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dromara/common/tenant/helper/TenantHelper.java | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/helper/TenantHelper.java b/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/helper/TenantHelper.java index 74c31107d..4b6981a10 100644 --- a/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/helper/TenantHelper.java +++ b/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/helper/TenantHelper.java @@ -1,16 +1,16 @@ package org.dromara.common.tenant.helper; +import cn.dev33.satoken.context.SaHolder; +import cn.dev33.satoken.context.model.SaStorage; import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.convert.Convert; import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.plugins.IgnoreStrategy; import com.baomidou.mybatisplus.core.plugins.InterceptorIgnoreHelper; -import jakarta.servlet.http.HttpServletRequest; import lombok.AccessLevel; import lombok.NoArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.dromara.common.core.constant.GlobalConstants; -import org.dromara.common.core.utils.ServletUtils; import org.dromara.common.core.utils.SpringUtils; import org.dromara.common.core.utils.StringUtils; import org.dromara.common.core.utils.reflect.ReflectUtils; @@ -137,7 +137,7 @@ public class TenantHelper { } String cacheKey = DYNAMIC_TENANT_KEY + ":" + LoginHelper.getUserId(); RedisUtils.setCacheObject(cacheKey, tenantId); - ServletUtils.getRequest().setAttribute(cacheKey, tenantId); + SaHolder.getStorage().set(cacheKey, tenantId); } /** @@ -157,15 +157,15 @@ public class TenantHelper { if (StringUtils.isNotBlank(tenantId)) { return tenantId; } - HttpServletRequest request = ServletUtils.getRequest(); + SaStorage storage = SaHolder.getStorage(); String cacheKey = DYNAMIC_TENANT_KEY + ":" + LoginHelper.getUserId(); - tenantId = (String) request.getAttribute(cacheKey); + tenantId = storage.getString(cacheKey); // 如果为 -1 说明已经查过redis并且不存在值 则直接返回null if (StringUtils.isNotBlank(tenantId)) { return tenantId.equals("-1") ? null : tenantId; } tenantId = RedisUtils.getCacheObject(cacheKey); - request.setAttribute(cacheKey, StringUtils.isBlank(tenantId) ? "-1" : tenantId); + storage.set(cacheKey, StringUtils.isBlank(tenantId) ? "-1" : tenantId); return tenantId; } @@ -183,7 +183,7 @@ public class TenantHelper { TEMP_DYNAMIC_TENANT.remove(); String cacheKey = DYNAMIC_TENANT_KEY + ":" + LoginHelper.getUserId(); RedisUtils.deleteObject(cacheKey); - ServletUtils.getRequest().removeAttribute(cacheKey); + SaHolder.getStorage().delete(cacheKey); } /** -- Gitee From d2b9cd27970c754da35e951b4cb5f6e7a6fcdea1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 9 Jan 2025 14:27:52 +0800 Subject: [PATCH 355/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E6=9D=83=E9=99=90=20=E5=88=A4=E6=96=AD=E5=BD=93?= =?UTF-8?q?=E5=89=8D=E6=B3=A8=E8=A7=A3=E4=B8=8D=E6=BB=A1=E8=B6=B3=E6=A8=A1?= =?UTF-8?q?=E6=9D=BF=E5=88=99=E8=B7=B3=E8=BF=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/mybatis/handler/PlusDataPermissionHandler.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/PlusDataPermissionHandler.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/PlusDataPermissionHandler.java index 07baedb39..a3547075b 100644 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/PlusDataPermissionHandler.java +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/PlusDataPermissionHandler.java @@ -180,7 +180,10 @@ public class PlusDataPermissionHandler { if (!StringUtils.containsAny(type.getSqlTemplate(), keys.toArray(String[]::new))) { continue; } - + // 当前注解不满足模板 不处理 + if (!StringUtils.containsAny(type.getSqlTemplate(), dataColumn.key())) { + continue; + } // 忽略数据权限 防止spel表达式内有其他sql查询导致死循环调用 String sql = DataPermissionHelper.ignore(() -> parser.parseExpression(type.getSqlTemplate(), parserContext).getValue(context, String.class) -- Gitee From 55b1a67637cf63504ca207181a0df7753e2b030e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Sun, 12 Jan 2025 20:35:11 +0800 Subject: [PATCH 356/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E9=81=BF?= =?UTF-8?q?=E5=85=8D=E9=87=8D=E5=A4=8D=E5=A4=84=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/tenant/handle/TenantKeyPrefixHandler.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/handle/TenantKeyPrefixHandler.java b/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/handle/TenantKeyPrefixHandler.java index fbf210df1..dcdef6e62 100644 --- a/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/handle/TenantKeyPrefixHandler.java +++ b/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/handle/TenantKeyPrefixHandler.java @@ -60,18 +60,18 @@ public class TenantKeyPrefixHandler extends KeyPrefixHandler { } try { if (InterceptorIgnoreHelper.willIgnoreTenantLine("")) { - return super.unmap(name); + return unmap; } } catch (NoClassDefFoundError ignore) { // 有些服务不需要mp导致类不存在 忽略即可 } if (StringUtils.contains(name, GlobalConstants.GLOBAL_REDIS_KEY)) { - return super.unmap(name); + return unmap; } String tenantId = TenantHelper.getTenantId(); if (StringUtils.isBlank(tenantId)) { log.debug("无法获取有效的租户id -> Null"); - return super.unmap(name); + return unmap; } if (StringUtils.startsWith(unmap, tenantId + "")) { // 如果存在则删除 -- Gitee From b47798ef198d725ec63800f73d3e7a3a61f7fdcd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Sun, 12 Jan 2025 20:35:39 +0800 Subject: [PATCH 357/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E6=97=A0?= =?UTF-8?q?=E9=9C=80=E5=A4=9A=E4=BD=99set=E5=8F=98=E9=87=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/org/dromara/common/tenant/config/TenantConfig.java | 2 -- 1 file changed, 2 deletions(-) diff --git a/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/config/TenantConfig.java b/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/config/TenantConfig.java index 2513aac92..3767fa2f1 100644 --- a/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/config/TenantConfig.java +++ b/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/config/TenantConfig.java @@ -55,14 +55,12 @@ public class TenantConfig { // 使用单机模式 // 设置多租户 redis key前缀 singleServerConfig.setNameMapper(nameMapper); - ReflectUtils.invokeSetter(config, "singleServerConfig", singleServerConfig); } ClusterServersConfig clusterServersConfig = ReflectUtils.invokeGetter(config, "clusterServersConfig"); // 集群配置方式 参考下方注释 if (ObjectUtil.isNotNull(clusterServersConfig)) { // 设置多租户 redis key前缀 clusterServersConfig.setNameMapper(nameMapper); - ReflectUtils.invokeSetter(config, "clusterServersConfig", clusterServersConfig); } }; } -- Gitee From e36e8f77581314541b27bcf43dd99bbc2c916255 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Mon, 13 Jan 2025 13:35:57 +0800 Subject: [PATCH 358/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20satoken=20da?= =?UTF-8?q?o=E5=B1=82=E8=8E=B7=E5=8F=96timeout=E4=B8=BA=E7=A7=92=E5=AF=BC?= =?UTF-8?q?=E8=87=B4=E4=B8=A2=E5=A4=B1=E6=AF=AB=E7=A7=92=E8=BF=9B=E5=BA=A6?= =?UTF-8?q?=E9=97=AE=E9=A2=98(=E4=B8=B4=E6=97=B6=E4=BF=AE=E5=A4=8D=20?= =?UTF-8?q?=E7=AD=89satoken=E5=AE=98=E6=96=B9=E8=A7=A3=E5=86=B3)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/satoken/core/dao/PlusSaTokenDao.java | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/ruoyi-common/ruoyi-common-satoken/src/main/java/org/dromara/common/satoken/core/dao/PlusSaTokenDao.java b/ruoyi-common/ruoyi-common-satoken/src/main/java/org/dromara/common/satoken/core/dao/PlusSaTokenDao.java index 38e12c315..a2a152003 100644 --- a/ruoyi-common/ruoyi-common-satoken/src/main/java/org/dromara/common/satoken/core/dao/PlusSaTokenDao.java +++ b/ruoyi-common/ruoyi-common-satoken/src/main/java/org/dromara/common/satoken/core/dao/PlusSaTokenDao.java @@ -51,7 +51,11 @@ public class PlusSaTokenDao implements SaTokenDao { if (timeout == NEVER_EXPIRE) { RedisUtils.setCacheObject(key, value); } else { - RedisUtils.setCacheObject(key, value, Duration.ofSeconds(timeout)); + if (RedisUtils.hasKey(key)) { + RedisUtils.setCacheObject(key, value, true); + } else { + RedisUtils.setCacheObject(key, value, Duration.ofSeconds(timeout)); + } } CAFFEINE.invalidate(key); } @@ -114,7 +118,11 @@ public class PlusSaTokenDao implements SaTokenDao { if (timeout == NEVER_EXPIRE) { RedisUtils.setCacheObject(key, object); } else { - RedisUtils.setCacheObject(key, object, Duration.ofSeconds(timeout)); + if (RedisUtils.hasKey(key)) { + RedisUtils.setCacheObject(key, object, true); + } else { + RedisUtils.setCacheObject(key, object, Duration.ofSeconds(timeout)); + } } CAFFEINE.invalidate(key); } -- Gitee From ae584d54a63306840172add6da2643cf93d6a234 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Mon, 13 Jan 2025 06:08:15 +0000 Subject: [PATCH 359/540] =?UTF-8?q?!635=20=E5=90=88=E5=B9=B6=20warmflow=20?= =?UTF-8?q?=E5=8A=9F=E8=83=BD=E5=88=86=E6=94=AF=20*=20update=20=E4=BC=98?= =?UTF-8?q?=E5=8C=96=20=E5=B7=A5=E4=BD=9C=E6=B5=81=E8=AE=BE=E8=AE=A1?= =?UTF-8?q?=E5=99=A8=E6=94=AF=E6=8C=81token=E4=BC=A0=E8=BE=93=20=E5=8F=AA?= =?UTF-8?q?=E9=9C=80=E8=A6=81=E6=94=BE=E8=A1=8Ctoken=E5=A4=B4=E8=8E=B7?= =?UTF-8?q?=E5=8F=96=E5=8D=B3=E5=8F=AF=20*=20Merge=20remote-tracking=20bra?= =?UTF-8?q?nch=20'origin/dev'=20into=20warm-flow-future=20*=20update=20?= =?UTF-8?q?=E4=BC=98=E5=8C=96=20=E6=97=A0=E9=9C=80=E5=A4=9A=E4=BD=99set?= =?UTF-8?q?=E5=8F=98=E9=87=8F=20*=20update=20=E4=BC=98=E5=8C=96=20?= =?UTF-8?q?=E9=81=BF=E5=85=8D=E9=87=8D=E5=A4=8D=E5=A4=84=E7=90=86=20*=20up?= =?UTF-8?q?date=20=E4=BC=98=E5=8C=96=20=E5=AE=9E=E4=BD=93=E7=B1=BB?= =?UTF-8?q?=E9=9A=94=E7=A6=BB=20*=20add=20=E5=A2=9E=E5=8A=A0=E6=B5=81?= =?UTF-8?q?=E7=A8=8B=E5=90=AF=E5=8A=A8=EF=BC=8C=E5=8A=9E=E7=90=86=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3=20*=20update=20=E8=B0=83=E6=95=B4=E6=B5=81=E7=A8=8B?= =?UTF-8?q?=E9=A9=B3=E5=9B=9E=20*=20Merge=20remote-tracking=20branch=20'or?= =?UTF-8?q?igin/dev'=20into=20warm-flow-future=20*=20update=20warmflow=201?= =?UTF-8?q?.3.7=20*=20update=20=E5=A2=9E=E5=8A=A0=20warmflow=20oracle=20pg?= =?UTF-8?q?=20sqlserver=20sql=E8=84=9A=E6=9C=AC=E6=96=87=E4=BB=B6=20*=20up?= =?UTF-8?q?date=20=E5=A2=9E=E5=8A=A0=20warmflow=20oracle=20pg=20sqlserver?= =?UTF-8?q?=20sql=E8=84=9A=E6=9C=AC=E6=96=87=E4=BB=B6=20*=20add=20?= =?UTF-8?q?=E6=96=B0=E5=A2=9Eworkflow=E4=B8=8D=E5=90=8C=E7=9A=84sql?= =?UTF-8?q?=E8=AF=AD=E5=8F=A5=20*=20add=20=E6=96=B0=E5=A2=9E=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0=E7=A7=9F=E6=88=B7=E5=90=8C=E6=AD=A5=E9=BB=98=E8=AE=A4?= =?UTF-8?q?=E6=B5=81=E7=A8=8B=E5=AE=9A=E4=B9=89=20*=20update=20=E4=BC=98?= =?UTF-8?q?=E5=8C=96=20=E6=B5=81=E7=A8=8B=E5=88=97=E8=A1=A8=E6=9F=A5?= =?UTF-8?q?=E8=AF=A2=20=E5=88=A0=E9=99=A4=E6=97=A0=E7=94=A8mapper=20*=20up?= =?UTF-8?q?date=20=E5=AF=BC=E5=85=A5=E6=B5=81=E7=A8=8B=20=E6=94=AF?= =?UTF-8?q?=E6=8C=81=E5=B9=B6=E5=8F=91=E5=A4=9A=E6=96=87=E4=BB=B6=E4=B8=8A?= =?UTF-8?q?=E4=BC=A0=20*=20update=20=E8=B0=83=E6=95=B4=E6=B5=81=E7=A8=8B?= =?UTF-8?q?=E5=AE=9A=E4=B9=89=E6=9F=A5=E8=AF=A2=20*=20update=20=E4=BC=98?= =?UTF-8?q?=E5=8C=96=20=E7=BB=9F=E4=B8=80=E4=B9=A6=E5=86=99=E6=A0=BC?= =?UTF-8?q?=E5=BC=8F=20*=20Merge=20remote-tracking=20branch=20'origin/dev'?= =?UTF-8?q?=20into=20warm-flow-future=20*=20update=20=E4=BC=98=E5=8C=96?= =?UTF-8?q?=E5=8F=91=E5=B8=83=E4=BA=8B=E4=BB=B6=E5=A2=9E=E5=8A=A0=E7=A7=9F?= =?UTF-8?q?=E6=88=B7ID=20*=20update=20=E8=B0=83=E6=95=B4=E9=A9=B3=E5=9B=9E?= =?UTF-8?q?=E8=AE=B0=E5=BD=95=20*=20Revert=20"update=20=E8=8E=B7=E5=8F=96?= =?UTF-8?q?=E7=94=A8=E6=88=B7=E7=AE=80=E7=95=A5=E4=BF=A1=E6=81=AF=EF=BC=8C?= =?UTF-8?q?=E7=A5=96=E7=BA=A7=E9=83=A8=E9=97=A8=E5=88=97=E8=A1=A8=EF=BC=8C?= =?UTF-8?q?=E9=83=A8=E9=97=A8=E8=B4=9F=E8=B4=A3=E4=BA=BA=E7=AD=89"=20*=20u?= =?UTF-8?q?pdate=20=E8=8E=B7=E5=8F=96=E7=94=A8=E6=88=B7=E7=AE=80=E7=95=A5?= =?UTF-8?q?=E4=BF=A1=E6=81=AF=EF=BC=8C=E7=A5=96=E7=BA=A7=E9=83=A8=E9=97=A8?= =?UTF-8?q?=E5=88=97=E8=A1=A8=EF=BC=8C=E9=83=A8=E9=97=A8=E8=B4=9F=E8=B4=A3?= =?UTF-8?q?=E4=BA=BA=E7=AD=89=20*=20update=20=E6=9B=B4=E6=96=B0warm-flow?= =?UTF-8?q?=E7=89=88=E6=9C=AC=E5=88=B0v1.3.6-m1=20*=20update=20=E6=9B=B4?= =?UTF-8?q?=E6=96=B0=E6=B3=A8=E9=87=8A=E4=BF=A1=E6=81=AF=20*=20fix=20?= =?UTF-8?q?=E4=B8=B4=E6=97=B6=E4=BF=AE=E5=A4=8D=20warm=E5=8F=82=E6=95=B0?= =?UTF-8?q?=E8=AF=BB=E5=8F=96=E9=97=AE=E9=A2=98=20*=20update=20warm-flow?= =?UTF-8?q?=201.3.4=20=3D>=201.3.5=20=E4=BC=98=E5=8C=96=E6=B5=81=E7=A8=8B?= =?UTF-8?q?=E5=9B=BE=E5=AF=BC=E5=85=A5=20*=20update=20=E6=9B=B4=E6=96=B0wa?= =?UTF-8?q?rm-flow=E7=89=88=E6=9C=AC=E5=88=B0v1.3.5=202024-12-20=20*=20upd?= =?UTF-8?q?ate=20=E5=A2=9E=E5=8A=A0=E6=8A=84=E9=80=81=E4=BA=BA=E5=90=8D?= =?UTF-8?q?=E7=A7=B0=20*=20update=20=E6=88=91=E7=9A=84=E6=8A=84=E9=80=81?= =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E7=94=B3=E8=AF=B7=E4=BA=BA=E4=BB=A5=E5=8F=8A?= =?UTF-8?q?=E6=9B=B4=E6=96=B0=E6=97=B6=E9=97=B4=20*=20update=20=E4=BC=98?= =?UTF-8?q?=E5=8C=96=E7=9B=91=E5=90=AC=E4=BA=8B=E4=BB=B6=E6=B3=A8=E9=87=8A?= =?UTF-8?q?=20*=20update=20=E4=BC=98=E5=8C=96=E6=B5=81=E7=A8=8B=E5=88=86?= =?UTF-8?q?=E7=B1=BB=E5=90=8D=E7=A7=B0=E7=BF=BB=E8=AF=91=E5=9B=9E=E6=98=BE?= =?UTF-8?q?=20*=20fix=20=E4=BF=AE=E6=94=B9=E6=A0=B9=E6=8D=AE=E6=B5=81?= =?UTF-8?q?=E7=A8=8B=E5=88=86=E7=B1=BBid=E6=9F=A5=E8=AF=A2=20*=20update=20?= =?UTF-8?q?=E6=96=B0=E5=A2=9E=E6=B5=81=E7=A8=8B=E5=88=86=E7=B1=BBid?= =?UTF-8?q?=E6=9F=A5=E8=AF=A2=20*=20fix=20=E4=BF=AE=E5=A4=8D=E6=8A=84?= =?UTF-8?q?=E9=80=81=E9=94=99=E8=AF=AF=20*=20fix=20=E4=BF=AE=E5=A4=8D?= =?UTF-8?q?=E9=94=99=E8=AF=AF=E5=88=A4=E7=A9=BA=20*=20fix=20=E4=BF=AE?= =?UTF-8?q?=E5=A4=8D=E9=94=99=E8=AF=AF=E5=88=A4=E7=A9=BA=20*=20update=20?= =?UTF-8?q?=E6=96=B0=E5=A2=9E=E5=88=A0=E9=99=A4=E6=B5=81=E7=A8=8B=E4=BA=8B?= =?UTF-8?q?=E4=BB=B6=20*=20Merge=20remote-tracking=20branch=20'origin/dev'?= =?UTF-8?q?=20into=20warm-flow-future=20*=20Merge=20remote-tracking=20bran?= =?UTF-8?q?ch=20'origin/dev'=20into=20warm-flow-future=20*=20update=20?= =?UTF-8?q?=E8=B0=83=E6=95=B4sql=E4=B9=A6=E5=86=99=E9=A1=BA=E5=BA=8F=20*?= =?UTF-8?q?=20fix=20=E4=BF=AE=E5=A4=8D=20=E6=8A=84=E9=80=81=E7=BC=BA?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=E9=97=AE=E9=A2=98=20=E4=B8=8E=20=E5=B7=B2?= =?UTF-8?q?=E5=AE=8C=E6=88=90=E4=BB=BB=E5=8A=A1=E6=95=B0=E6=8D=AE=E5=8F=96?= =?UTF-8?q?=E9=94=99=E9=97=AE=E9=A2=98=20*=20update=20=E6=96=B0=E5=A2=9E?= =?UTF-8?q?=E6=A0=B9=E6=8D=AE=E4=B8=9A=E5=8A=A1id=E6=9F=A5=E8=AF=A2?= =?UTF-8?q?=E6=B5=81=E7=A8=8B=E5=AE=9E=E4=BE=8B=E8=AF=A6=E7=BB=86=E4=BF=A1?= =?UTF-8?q?=E6=81=AF=20*=20update=20=E8=B0=83=E6=95=B4=E5=8F=98=E9=87=8F?= =?UTF-8?q?=E5=8F=82=E6=95=B0=20*=20update=20=E8=B0=83=E6=95=B4=E5=88=86?= =?UTF-8?q?=E7=B1=BB=E6=8E=A5=E5=8F=A3=20*=20update=20=E7=BB=9F=E4=B8=80?= =?UTF-8?q?=E4=B8=9A=E5=8A=A1id=E5=8F=82=E6=95=B0=20*=20update=20=E8=B0=83?= =?UTF-8?q?=E6=95=B4=E8=BF=94=E5=9B=9E=E5=8F=82=E6=95=B0=20*=20update=20?= =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E4=B8=9A=E5=8A=A1id=E9=80=9A=E7=94=A8?= =?UTF-8?q?=E6=9F=A5=E8=AF=A2=E6=9D=A1=E4=BB=B6=20*=20update=20=E4=BC=98?= =?UTF-8?q?=E5=8C=96=E4=BB=A3=E7=A0=81=20=E4=BF=AE=E5=A4=8Dbug=20*=20updat?= =?UTF-8?q?e=20=E4=BC=98=E5=8C=96=E6=96=B0=E5=A2=9E=E6=B5=81=E7=A8=8B?= =?UTF-8?q?=E5=88=86=E7=B1=BB=E5=88=A4=E6=96=AD=20*=20Merge=20remote-track?= =?UTF-8?q?ing=20branch=20'origin/dev'=20into=20warm-flow-future=20*=20upd?= =?UTF-8?q?ate=20=E8=B0=83=E6=95=B4=E9=A9=B3=E5=9B=9E=20*=20update=20?= =?UTF-8?q?=E4=BC=98=E5=8C=96=E9=94=99=E8=AF=AF=E6=B3=A8=E9=87=8A=20*=20up?= =?UTF-8?q?date=20=E4=BC=98=E5=8C=96=E6=B5=81=E7=A8=8B=E5=88=86=E7=B1=BBsq?= =?UTF-8?q?l=E8=AF=AD=E5=8F=A5=20*=20update=20=E8=B0=83=E6=95=B4=E9=A9=B3?= =?UTF-8?q?=E5=9B=9E=20*=20update=20=E5=88=A0=E9=99=A4=E6=B5=81=E7=A8=8B?= =?UTF-8?q?=E5=88=86=E7=B1=BB=E7=8A=B6=E6=80=81=20*=20update=20=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0=E6=B5=81=E7=A8=8B=E5=AE=9A=E4=B9=89=E9=98=B2=E9=87=8D?= =?UTF-8?q?=20*=20[fix]=20*=20update=20=E4=BC=98=E5=8C=96=E4=BB=A3?= =?UTF-8?q?=E7=A0=81=20=E4=BF=AE=E5=A4=8Dbug=20*=20update=20=E4=BC=98?= =?UTF-8?q?=E5=8C=96=E6=B5=81=E7=A8=8B=E5=AE=9A=E4=B9=89=E5=A2=9E=E5=8A=A0?= =?UTF-8?q?=E7=B1=BB=E5=88=AB=E6=A0=91=E6=9F=A5=E8=AF=A2=20*=20update=20?= =?UTF-8?q?=E6=96=B0=E5=A2=9E=E7=BF=BB=E8=AF=91=E6=A0=B9=E6=8D=AE=E6=B5=81?= =?UTF-8?q?=E7=A8=8B=E5=88=86=E7=B1=BBID=E6=9F=A5=E8=AF=A2=E6=B5=81?= =?UTF-8?q?=E7=A8=8B=E5=88=86=E7=B1=BB=E5=90=8D=E7=A7=B0=20*=20update=20?= =?UTF-8?q?=E6=A0=B9=E6=8D=AE=E5=88=86=E9=A1=B5=E5=AF=B9=E8=B1=A1=E6=9E=84?= =?UTF-8?q?=E5=BB=BA=E8=A1=A8=E6=A0=BC=E5=88=86=E9=A1=B5=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E5=AF=B9=E8=B1=A1=20*=20update=20=E4=BC=98=E5=8C=96=E6=B5=81?= =?UTF-8?q?=E7=A8=8B=E5=AE=9A=E4=B9=89=E5=88=97=E8=A1=A8=E5=90=8D=E7=A7=B0?= =?UTF-8?q?=20*=20update=20=E4=BC=98=E5=8C=96=E6=B5=81=E7=A8=8B=E5=88=86?= =?UTF-8?q?=E7=B1=BB=E6=A0=A1=E9=AA=8C=20*=20update=20=E5=AF=BC=E5=85=A5?= =?UTF-8?q?=E6=B5=81=E7=A8=8B=20=E6=94=AF=E6=8C=81=E8=87=AA=E5=AE=9A?= =?UTF-8?q?=E4=B9=89=E7=B1=BB=E5=88=AB=20*=20update=20=E6=B5=81=E7=A8=8B?= =?UTF-8?q?=E6=A1=88=E4=BE=8B=20=E5=A2=9E=E5=8A=A0=E8=A1=A8=E5=8D=95?= =?UTF-8?q?=E8=B7=AF=E5=BE=84=20*=20update=20=E6=B5=81=E7=A8=8B=E5=AE=9A?= =?UTF-8?q?=E4=B9=89=E6=9F=A5=E8=AF=A2=E8=BF=94=E5=9B=9E=E8=A1=A8=E5=8D=95?= =?UTF-8?q?=E8=B7=AF=E5=BE=84=20*=20update=20=E4=BC=98=E5=8C=96=E4=BB=BB?= =?UTF-8?q?=E5=8A=A1=E4=B8=9A=E5=8A=A1=E5=B1=82=20*=20fix=20=E4=BF=AE?= =?UTF-8?q?=E5=A4=8D=20=E8=AF=B7=E5=81=87=E5=A4=A9=E6=95=B0=E4=B8=8D?= =?UTF-8?q?=E5=87=86=E7=A1=AE=E9=97=AE=E9=A2=98=20*=20update=20=E4=BC=98?= =?UTF-8?q?=E5=8C=96=E9=A9=B3=E5=9B=9E=20=E6=92=A4=E9=94=80=20*=20update?= =?UTF-8?q?=20=E5=88=A0=E9=99=A4=E7=B1=BB=E5=88=AB=E6=9F=A5=E8=AF=A2?= =?UTF-8?q?=E6=9D=83=E9=99=90=20=E9=80=9A=E7=94=A8=E6=9F=A5=E8=AF=A2?= =?UTF-8?q?=E4=B8=8D=E9=9C=80=E8=A6=81=E5=8A=A0=E6=9D=83=E9=99=90=20*=20fi?= =?UTF-8?q?x=20=E4=BF=AE=E5=A4=8D=20=E5=8F=98=E9=87=8F=E5=90=8D=E4=BF=AE?= =?UTF-8?q?=E6=94=B9=E9=94=99=E8=AF=AF=20*=20Merge=20branch=20'warm-flow-f?= =?UTF-8?q?uture'=20of=20https://gitee.com/dromara/RuoYi-Vue=E2=80=A6=20*?= =?UTF-8?q?=20update=20=E8=B0=83=E6=95=B4=E9=A9=B3=E5=9B=9E=20*=20update?= =?UTF-8?q?=20=E8=A1=A8=E5=90=8D=E7=B1=BB=E5=90=8D=E7=BB=9F=E4=B8=80?= =?UTF-8?q?=E5=91=BD=E5=90=8D=20*=20Merge=20branch=20'warm-flow-future'=20?= =?UTF-8?q?of=20https://gitee.com/dromara/RuoYi-Vue=E2=80=A6=20*=20update?= =?UTF-8?q?=20=E6=8C=91=E6=88=98=E8=80=85=E9=A9=B3=E5=9B=9E=20=E6=92=A4?= =?UTF-8?q?=E9=94=80=20*=20Merge=20remote-tracking=20branch=20'origin/dev'?= =?UTF-8?q?=20into=20warm-flow-future=20*=20fix=20=E4=BF=AE=E5=A4=8D?= =?UTF-8?q?=E4=BC=9A=E7=AD=BE=20=E7=A5=A8=E7=AD=BE=E6=92=A4=E9=94=80?= =?UTF-8?q?=E9=97=AE=E9=A2=98=20*=20update=20=E8=B0=83=E6=95=B4=E5=B9=B6?= =?UTF-8?q?=E8=A1=8C=E7=8E=AF=E8=8A=82=E6=92=A4=E9=94=80=E9=94=99=E8=AF=AF?= =?UTF-8?q?=20=E5=A2=9E=E5=8A=A0=E5=8A=9E=E7=90=86=E6=A0=A1=E9=AA=8C=20*?= =?UTF-8?q?=20Merge=20branch=20'warm-flow-future'=20of=20https://gitee.com?= =?UTF-8?q?/dromara/RuoYi-Vue=E2=80=A6=20*=20update=20=E4=BC=98=E5=8C=96?= =?UTF-8?q?=E8=8E=B7=E5=8F=96=E5=8A=9E=E7=90=86=E4=BA=BA=20*=20update=20?= =?UTF-8?q?=E4=BC=98=E5=8C=96=20workflow=E6=A8=A1=E5=9D=97=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0doc=E4=BE=9D=E8=B5=96=E8=BE=93=E5=87=BA=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3=E6=96=87=E6=A1=A3=20*=20Revert=20"update=20=E4=BC=98?= =?UTF-8?q?=E5=8C=96=20=E5=88=A0=E9=99=A4=E6=97=A0=E7=94=A8=E6=96=B9?= =?UTF-8?q?=E6=B3=95"=20*=20Merge=20remote-tracking=20branch=20'origin/dev?= =?UTF-8?q?'=20into=20warm-flow-future=20*=20Merge=20branch=20'warm-flow-f?= =?UTF-8?q?uture'=20of=20https://gitee.com/dromara/RuoYi-Vue=E2=80=A6=20*?= =?UTF-8?q?=20update=20=E8=B0=83=E6=95=B4=E4=BB=A3=E5=8A=9E=E4=BA=BA?= =?UTF-8?q?=E6=9F=A5=E8=AF=A2=E9=94=99=E8=AF=AF=20=E5=A2=9E=E5=8A=A0?= =?UTF-8?q?=E7=A4=BA=E4=BE=8B=20*=20update=20=E4=BC=98=E5=8C=96=20?= =?UTF-8?q?=E9=87=8D=E6=9E=84=E4=BB=A3=E7=A0=81=20*=20update=20=E4=BC=98?= =?UTF-8?q?=E5=8C=96=20=E9=87=8D=E6=9E=84=E4=BB=A3=E7=A0=81=20*=20update?= =?UTF-8?q?=20=E4=BC=98=E5=8C=96=20=E5=B0=86=E5=B7=A5=E4=BD=9C=E6=B5=81?= =?UTF-8?q?=E6=B6=88=E6=81=AF=E6=8E=A8=E9=80=81=E6=94=B9=E4=B8=BAsse=20*?= =?UTF-8?q?=20add=20=E6=B7=BB=E5=8A=A0=E6=A8=A1=E5=9E=8B=20*=20update=20?= =?UTF-8?q?=E8=B0=83=E6=95=B4=E5=AE=A1=E6=89=B9=E8=AE=B0=E5=BD=95=20*=20up?= =?UTF-8?q?date=20=E8=B0=83=E6=95=B4=E8=AF=B7=E5=81=87=E6=A1=88=E4=BE=8B?= =?UTF-8?q?=20*=20fix=20=E4=BF=AE=E5=A4=8D=E6=B5=81=E7=A8=8B=E5=AE=9A?= =?UTF-8?q?=E4=B9=89=E6=9F=A5=E8=AF=A2=E9=94=99=E8=AF=AF=20*=20update=20?= =?UTF-8?q?=E8=B0=83=E6=95=B4=E6=B5=81=E7=A8=8B=E5=AE=9E=E4=BE=8B=E6=9F=A5?= =?UTF-8?q?=E8=AF=A2=E9=94=99=E8=AF=AF=20*=20update=20=E8=B0=83=E6=95=B4?= =?UTF-8?q?=E8=8E=B7=E5=8F=96=E5=BD=93=E5=89=8D=E7=99=BB=E5=BD=95=E4=BB=BB?= =?UTF-8?q?=E5=8A=A1=E5=AE=9E=E4=BE=8B=20*=20add=20=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E6=B6=88=E6=81=AF=E5=8F=91=E9=80=81=20*=20update=20=E8=B0=83?= =?UTF-8?q?=E6=95=B4=E5=8A=9E=E7=90=86=E7=9B=91=E5=90=AC=20*=20[add]=20*?= =?UTF-8?q?=20[fix]=20*=20update=20=E9=87=8D=E6=9E=84=20=E5=B0=86=E5=B7=A5?= =?UTF-8?q?=E4=BD=9C=E6=B5=81=E6=9F=A5=E8=AF=A2=E9=80=BB=E8=BE=91=E5=B0=81?= =?UTF-8?q?=E8=A3=85=E4=B8=BA=E5=8D=95=E7=8B=AC=E7=9A=84service=E7=B1=BB?= =?UTF-8?q?=20*=20[update]=20*=20[add]=20*=20=E5=8A=9E=E7=90=86=E9=99=84?= =?UTF-8?q?=E4=BB=B6=E6=8F=90=E4=BA=A4=20*=20=E7=94=B3=E8=AF=B7=E4=BA=BA?= =?UTF-8?q?=E6=9F=A5=E8=AF=A2=E4=BF=AE=E6=94=B9=20*=20update=20=E5=9B=9E?= =?UTF-8?q?=E9=80=80=E4=BC=98=E5=8C=96=20=E5=88=A0=E9=99=A4=E6=97=A0?= =?UTF-8?q?=E7=94=A8=E6=96=B9=E6=B3=95=20*=20update=20=E4=BC=98=E5=8C=96?= =?UTF-8?q?=E4=BB=BB=E5=8A=A1=E5=8A=9E=E7=90=86=E4=BA=BA=E7=BF=BB=E8=AF=91?= =?UTF-8?q?=E5=AE=9E=E7=8E=B0=20*=20update=20=E4=BC=98=E5=8C=96=E4=BB=BB?= =?UTF-8?q?=E5=8A=A1=E5=88=86=E9=85=8D=E4=BA=BA=E6=9E=9A=E4=B8=BE=20*=20up?= =?UTF-8?q?date=20=E4=BC=98=E5=8C=96=20=E5=88=A0=E9=99=A4=E6=97=A0?= =?UTF-8?q?=E7=94=A8=E6=96=B9=E6=B3=95=20*=20Merge=20remote-tracking=20bra?= =?UTF-8?q?nch=20'origin/dev'=20into=20warm-flow-future=20*=20Merge=20remo?= =?UTF-8?q?te-tracking=20branch=20'origin/dev'=20into=20warm-flow-future?= =?UTF-8?q?=20*=20[add]=20*=20update=20=E4=BC=98=E5=8C=96=E5=85=A8?= =?UTF-8?q?=E5=B1=80=E4=BB=BB=E5=8A=A1=E5=8A=9E=E7=90=86=E7=9B=91=E5=90=AC?= =?UTF-8?q?=20*=20update=20=E5=88=A0=E9=99=A4=E6=97=A0=E7=94=A8=E5=BC=95?= =?UTF-8?q?=E5=85=A5=20*=20Merge=20remote-tracking=20branch=20'origin/dev'?= =?UTF-8?q?=20into=20warm-flow-future=20*=20update=20=E4=BC=98=E5=8C=96?= =?UTF-8?q?=E6=BF=80=E6=B4=BB/=E6=8C=82=E8=B5=B7=E5=8F=96=E5=8F=8D?= =?UTF-8?q?=E9=80=BB=E8=BE=91=20*=20!614=20style=20workflow=20xml=20?= =?UTF-8?q?=E6=A0=BC=E5=BC=8F=20*=20style=20workflow=20xml=20=E6=A0=BC?= =?UTF-8?q?=E5=BC=8F=20*=20!612=20fix=20FlwInstanceMapper=20xml=E9=94=99?= =?UTF-8?q?=E8=AF=AF=20*=20fix=20FlwInstanceMapper=20xml=E9=94=99=E8=AF=AF?= =?UTF-8?q?=20*=20update=20=E4=BC=98=E5=8C=96=20=E5=90=8E=E7=AB=AF?= =?UTF-8?q?=E4=BB=A3=E7=A0=81=20*=20update=20=E4=BC=98=E5=8C=96=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3=E8=AF=B7=E6=B1=82=E8=B7=AF=E5=BE=84=20*=20update=20?= =?UTF-8?q?=E8=B0=83=E6=95=B4=E5=B7=B2=E5=8A=9E=E6=8E=92=E5=BA=8F=20*=20ad?= =?UTF-8?q?d=20=E6=B7=BB=E5=8A=A0=E4=BB=BB=E5=8A=A1=E4=BD=9C=E5=BA=9F=20*?= =?UTF-8?q?=20update=20=E8=B0=83=E6=95=B4=E4=BB=BB=E5=8A=A1=E5=8A=9E?= =?UTF-8?q?=E7=90=86=E6=93=8D=E4=BD=9C=20*=20update=20=E8=B0=83=E6=95=B4?= =?UTF-8?q?=E5=8A=A0=E7=AD=BE=EF=BC=8C=E5=87=8F=E7=AD=BE=E6=A0=A1=E9=AA=8C?= =?UTF-8?q?=20*=20update=20=E8=B0=83=E6=95=B4=E5=8A=A0=E7=AD=BE=20*=20add?= =?UTF-8?q?=20=E6=B7=BB=E5=8A=A0=E8=8E=B7=E5=8F=96=E5=BD=93=E5=89=8D?= =?UTF-8?q?=E4=BB=BB=E5=8A=A1=E7=9A=84=E5=8A=9E=E7=90=86=E4=BA=BA=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3=20*=20add=20=E6=B7=BB=E5=8A=A0=E4=BB=BB=E5=8A=A1?= =?UTF-8?q?=E6=9F=A5=E8=AF=A2=E4=BC=9A=E7=AD=BE=EF=BC=8C=E7=A5=A8=E7=AD=BE?= =?UTF-8?q?=E6=AF=94=E4=BE=8B=20*=20update=20=E8=B0=83=E6=95=B4=E4=BB=BB?= =?UTF-8?q?=E5=8A=A1=EF=BC=8C=E5=AE=9E=E4=BE=8B=E6=9F=A5=E8=AF=A2=20*=20up?= =?UTF-8?q?date=20=E8=B0=83=E6=95=B4=E4=BB=BB=E5=8A=A1=E5=A7=94=E6=89=98?= =?UTF-8?q?=EF=BC=8C=E8=BD=AC=E5=8A=9E=EF=BC=8C=E4=BC=98=E5=8C=96=E9=83=A8?= =?UTF-8?q?=E5=88=86=E4=BB=A3=E7=A0=81=E7=AD=89=20*=20update=20=E8=B0=83?= =?UTF-8?q?=E6=95=B4=E6=B5=81=E7=A8=8B=E5=AE=9A=E4=B9=89=E8=A7=86=E5=9B=BE?= =?UTF-8?q?=20*=20add=20=E6=B7=BB=E5=8A=A0=E4=BB=BB=E5=8A=A1=EF=BC=8C?= =?UTF-8?q?=E6=B5=81=E7=A8=8B=E5=AE=9E=E4=BE=8B=E5=B8=B8=E7=94=A8=E6=9F=A5?= =?UTF-8?q?=E8=AF=A2=E6=8E=A5=E5=8F=A3=20*=20Merge=20branch=20'dev'=20into?= =?UTF-8?q?=20warm-flow-future=20*=20update=20=E4=BC=98=E5=8C=96=E5=B7=A5?= =?UTF-8?q?=E4=BD=9C=E6=B5=81=E5=B8=B8=E9=87=8F=E4=BD=BF=E7=94=A8=20*=20up?= =?UTF-8?q?date=20=E4=BC=98=E5=8C=96=E6=B5=81=E7=A8=8B=E8=AE=B0=E5=BD=95?= =?UTF-8?q?=E8=BF=90=E8=A1=8C=E6=97=B6=E9=95=BF=E8=8E=B7=E5=8F=96=20*=20up?= =?UTF-8?q?date=20=E4=BC=98=E5=8C=96=E4=BB=BB=E5=8A=A1=E7=AE=A1=E7=90=86?= =?UTF-8?q?=E6=8E=A7=E5=88=B6=E5=B1=82=20*=20update=20=E5=9B=9E=E5=A4=8D?= =?UTF-8?q?=E4=B8=9A=E5=8A=A1=E7=8A=B6=E6=80=81=E6=9E=9A=E4=B8=BE=20*=20up?= =?UTF-8?q?date=20=E4=BC=98=E5=8C=96=E4=B8=9A=E5=8A=A1=E7=8A=B6=E6=80=81?= =?UTF-8?q?=E6=9E=9A=E4=B8=BE=20*=20update=20=E8=B0=83=E6=95=B4=E6=98=B5?= =?UTF-8?q?=E7=A7=B0=E7=BF=BB=E8=AF=91=20*=20update=20=E8=B0=83=E6=95=B4?= =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=8A=9E=E7=90=86=E4=BA=BA=E6=8E=A5=E5=8F=A3?= =?UTF-8?q?=20*=20update=20=E8=B0=83=E6=95=B4=E6=B5=81=E7=A8=8B=E5=85=A8?= =?UTF-8?q?=E5=B1=80=E7=9B=91=E5=90=AC=EF=BC=8C=E8=B0=83=E6=95=B4=E4=BB=BB?= =?UTF-8?q?=E5=8A=A1=E5=8A=9E=E7=90=86=E4=BA=BA=E6=89=B9=E9=87=8F=E4=BF=AE?= =?UTF-8?q?=E6=94=B9=EF=BC=8C=E4=BC=98=E5=8C=96=E4=BB=A3=E7=A0=81=20*=20up?= =?UTF-8?q?date=20=E4=BC=98=E5=8C=96=E6=9F=A5=E8=AF=A2=E5=8F=AF=E9=A9=B3?= =?UTF-8?q?=E5=9B=9E=E8=8A=82=E7=82=B9=20*=20update=20=E4=BC=98=E5=8C=96?= =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E6=8A=84=E9=80=81=E4=BA=BA=20*=20update=20?= =?UTF-8?q?=E4=BC=98=E5=8C=96=E5=A2=9E=E5=8A=A0=E4=BA=BA=E5=91=98=E7=B1=BB?= =?UTF-8?q?=E5=9E=8B=E6=9E=9A=E4=B8=BE=EF=BC=8C=E5=88=A0=E9=99=A4=E6=97=A0?= =?UTF-8?q?=E7=94=A8=E5=B8=B8=E9=87=8F=20*=20update=20=E4=BC=98=E5=8C=96?= =?UTF-8?q?=E8=AF=B7=E5=81=87=E5=A4=A9=E6=95=B0=E5=B7=A5=E5=85=B7=E7=B1=BB?= =?UTF-8?q?=EF=BC=8C=E5=88=A0=E9=99=A4=E7=BC=93=E5=AD=98=EF=BC=8C=E5=8A=A0?= =?UTF-8?q?=E9=94=81=E5=A4=84=E7=90=86=EF=BC=8C=E5=8F=AF=E4=BB=A5=E9=87=87?= =?UTF-8?q?=E7=94=A8=E5=A4=96=E9=83=A8=E4=BC=A0=E5=8F=82=E7=9A=84=E5=BD=A2?= =?UTF-8?q?=E5=BC=8F=E5=A4=84=E7=90=86redis=E9=83=A8=E5=88=86=20*=20update?= =?UTF-8?q?=20=E4=BC=98=E5=8C=96=E8=AF=B7=E5=81=87=E5=A4=A9=E6=95=B0?= =?UTF-8?q?=E8=AE=A1=E7=AE=97=20*=20update=20=E4=BC=98=E5=8C=96=E4=BB=BB?= =?UTF-8?q?=E5=8A=A1=E5=AE=8C=E6=88=90=E6=97=B6=E9=97=B4=E5=A4=84=E7=90=86?= =?UTF-8?q?=20*=20update=20=E4=BC=98=E5=8C=96=E4=BB=BB=E5=8A=A1=E5=8A=9E?= =?UTF-8?q?=E7=90=86=E4=BA=BA=E8=8E=B7=E5=8F=96=20*=20update=20=E4=BC=98?= =?UTF-8?q?=E5=8C=96=E4=BB=BB=E5=8A=A1=E6=93=8D=E4=BD=9C=EF=BC=8C=E5=A7=94?= =?UTF-8?q?=E6=B4=BE=E3=80=81=E8=BD=AC=E5=8A=9E=E3=80=81=E5=8A=A0=E7=AD=BE?= =?UTF-8?q?=E3=80=81=E5=87=8F=E7=AD=BE=E3=80=81=E4=BF=AE=E6=94=B9=E5=8A=9E?= =?UTF-8?q?=E7=90=86=E4=BA=BA=E7=AD=89=20*=20add=20=E6=96=B0=E5=A2=9Ewarm-?= =?UTF-8?q?flow-all.sql=20*=20del=20=E5=88=A0=E9=99=A4=E5=A4=9A=E4=BD=99SQ?= =?UTF-8?q?L=20*=20del=20=E5=88=A0=E9=99=A4=E6=97=A0=E7=94=A8vo=20*=20del?= =?UTF-8?q?=20=E5=88=A0=E9=99=A4=E8=A1=A8=E5=8D=95=E7=AE=A1=E7=90=86?= =?UTF-8?q?=E4=BF=A1=E6=81=AF=20*=20del=20=E5=88=A0=E9=99=A4=E8=8A=82?= =?UTF-8?q?=E7=82=B9=E9=85=8D=E7=BD=AE=E4=BF=A1=E6=81=AF=20*=20update=20?= =?UTF-8?q?=E4=BC=98=E5=8C=96=E8=8A=82=E7=82=B9=E7=B1=BB=E5=9E=8B=E5=B8=B8?= =?UTF-8?q?=E9=87=8F=E8=8E=B7=E5=8F=96=20*=20update=20=E4=BC=98=E5=8C=96?= =?UTF-8?q?=E6=9D=83=E9=99=90=E5=8A=9E=E7=90=86=E4=BA=BA=E8=8E=B7=E5=8F=96?= =?UTF-8?q?=20*=20update=20=E4=BC=98=E5=8C=96=E6=9D=83=E9=99=90=E5=8A=9E?= =?UTF-8?q?=E7=90=86=E4=BA=BA=E8=8E=B7=E5=8F=96=E5=88=A4=E6=96=AD=20*=20up?= =?UTF-8?q?date=20=E6=8F=90=E4=BA=A4=E7=AD=89=E5=BE=85=E6=96=B0=E7=89=88?= =?UTF-8?q?=E6=9C=AC=E5=BE=85=E4=BC=98=E5=8C=96=E7=9A=84=E5=BC=80=E5=A7=8B?= =?UTF-8?q?=E7=9B=91=E5=90=AC=E4=BF=A1=E6=81=AF=20*=20update=20=E6=96=B0?= =?UTF-8?q?=E5=A2=9E=E8=8E=B7=E5=8F=96=E9=83=A8=E9=97=A8=E8=B4=9F=E8=B4=A3?= =?UTF-8?q?=E4=BA=BA=20*=20add=20=E6=96=B0=E5=A2=9E=E5=88=86=E6=B4=BE?= =?UTF-8?q?=E5=8A=9E=E7=90=86=E4=BA=BA=E7=9B=91=E5=90=AC=E5=99=A8=20*=20up?= =?UTF-8?q?date=20=E4=BC=98=E5=8C=96=E6=88=96=E8=80=85=E5=AD=97=E7=AC=A6?= =?UTF-8?q?=E4=B8=B2=E7=94=A8=E6=88=B7ID=20*=20update=20=E7=94=A8=E6=88=B7?= =?UTF-8?q?=E5=89=8D=E7=BC=80=E5=8E=BB=E6=8E=89=20*=20update=20=E8=B0=83?= =?UTF-8?q?=E6=95=B4=E6=B5=81=E7=A8=8B=E5=AE=9E=E4=BE=8B=E7=8A=B6=E6=80=81?= =?UTF-8?q?=E6=9F=A5=E8=AF=A2=20*=20add=20=E6=B7=BB=E5=8A=A0=E6=B5=81?= =?UTF-8?q?=E7=A8=8B=E6=92=A4=E9=94=80=20*=20add=20=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E6=B5=81=E7=A8=8B=E6=8A=84=E9=80=81=20*=20add=20=E6=96=B0?= =?UTF-8?q?=E5=A2=9E=E5=8A=9E=E7=90=86=E4=BA=BA=E6=9D=83=E9=99=90=E5=A4=84?= =?UTF-8?q?=E7=90=86=E5=99=A8=20*=20update=20=E5=8D=87=E7=BA=A7warm-flow1.?= =?UTF-8?q?3.4=20*=20Merge=20branch=20'dev'=20into=20warm-flow-future=20*?= =?UTF-8?q?=20update=20=E8=B0=83=E6=95=B4=E6=B5=81=E7=A8=8B=E5=AE=9A?= =?UTF-8?q?=E4=B9=89=E5=A4=8D=E5=88=B6=20*=20update=20=E8=B0=83=E6=95=B4?= =?UTF-8?q?=E6=B5=81=E7=A8=8B=E5=90=AF=E5=8A=A8=E8=AE=BE=E7=BD=AE=E5=90=AF?= =?UTF-8?q?=E5=8A=A8=E4=BA=BA=E5=8F=98=E9=87=8F=20*=20update=20=E8=B0=83?= =?UTF-8?q?=E6=95=B4=E6=B5=81=E7=A8=8B=E5=AE=9A=E4=B9=89=E5=88=A0=E9=99=A4?= =?UTF-8?q?=20*=20update=20=E8=B0=83=E6=95=B4=E6=B5=81=E7=A8=8B=E5=AE=9A?= =?UTF-8?q?=E4=B9=89=E5=AF=BC=E5=85=A5=20*=20update=20=E8=B0=83=E6=95=B4?= =?UTF-8?q?=E5=B7=A5=E4=BD=9C=E6=B5=81=E4=BB=BB=E5=8A=A1=EF=BC=8C=E6=B5=81?= =?UTF-8?q?=E7=A8=8B=E5=AE=9A=E4=B9=89=E7=AD=89=E6=9F=A5=E8=AF=A2=20*=20up?= =?UTF-8?q?date=20=E8=B0=83=E6=95=B4=E5=B7=A5=E4=BD=9C=E6=B5=81=E4=BA=BA?= =?UTF-8?q?=E5=91=98=E7=BF=BB=E8=AF=91=E6=9F=A5=E8=AF=A2=20*=20update=20?= =?UTF-8?q?=E8=B0=83=E6=95=B4=E8=BD=AC=E5=8A=9E=EF=BC=8C=E5=8A=A0=E7=AD=BE?= =?UTF-8?q?=E7=AD=89=E5=8F=82=E6=95=B0=20*=20update=20=E8=B0=83=E6=95=B4?= =?UTF-8?q?=E6=B5=81=E7=A8=8B=E5=8A=9E=E7=90=86=E8=AE=BE=E7=BD=AE=E5=8A=9E?= =?UTF-8?q?=E7=90=86=E4=BA=BA=20*=20update=20=E8=B0=83=E6=95=B4=E6=B5=81?= =?UTF-8?q?=E7=A8=8B=E8=AE=BE=E8=AE=A1=E4=BF=9D=E5=AD=98=20*=20update=20?= =?UTF-8?q?=E8=B0=83=E6=95=B4=E6=B5=81=E7=A8=8B=E7=8A=B6=E6=80=81=EF=BC=8C?= =?UTF-8?q?=E7=A7=BB=E9=99=A4=E8=BF=87=E6=97=B6=E6=96=B9=E6=B3=95=EF=BC=8C?= =?UTF-8?q?=E8=B0=83=E6=95=B4=E6=9F=A5=E8=AF=A2=E5=8A=9E=E7=90=86=E4=BA=BA?= =?UTF-8?q?=20*=20update=20=E8=A1=A5=E5=85=85=E5=B7=A5=E4=BD=9C=E6=B5=81?= =?UTF-8?q?=E8=AF=B7=E6=B1=82=E5=A2=9E=E5=8A=A0=E9=89=B4=E6=9D=83=20*=20up?= =?UTF-8?q?date=20=E5=B7=A5=E4=BD=9C=E6=B5=81=E8=AF=B7=E6=B1=82=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0=E9=89=B4=E6=9D=83=20*=20update=20=E6=96=B0=E5=A2=9E?= =?UTF-8?q?=E6=B5=81=E7=A8=8B=E5=AE=8C=E6=88=90=E7=9B=91=E5=90=AC=E5=99=A8?= =?UTF-8?q?=20*=20update=20=E6=96=B0=E5=A2=9E=E6=B5=81=E7=A8=8B=E5=90=AF?= =?UTF-8?q?=E5=8A=A8=E7=9B=91=E5=90=AC=E5=99=A8=20*=20Merge=20remote-track?= =?UTF-8?q?ing=20branch=20'origin/dev'=20into=20warm-flow-future=20*=20upd?= =?UTF-8?q?ate=20=E6=9B=B4=E6=96=B0warm-flow=E7=89=88=E6=9C=AC=20*=20updat?= =?UTF-8?q?e=20=E4=BC=98=E5=8C=96workflow=E8=A1=A8sql=E6=A0=BC=E5=BC=8F=20?= =?UTF-8?q?*=20update=20=E4=BC=98=E5=8C=96=EF=BC=8C=E5=A2=9E=E5=8A=A0?= =?UTF-8?q?=E5=B2=97=E4=BD=8D=E6=9D=83=E9=99=90=E5=88=A4=E7=A9=BA=E5=A4=84?= =?UTF-8?q?=E7=90=86=20*=20update=20=E5=BD=93=E5=89=8D=E7=94=A8=E6=88=B7?= =?UTF-8?q?=E6=89=80=E6=9C=89=E6=9D=83=E9=99=90=E5=B2=97=E4=BD=8DID?= =?UTF-8?q?=E6=94=B9=E4=B8=BA=E4=BB=8Etoken=E8=8E=B7=E5=8F=96=20*=20update?= =?UTF-8?q?=20=E5=BD=93=E5=89=8D=E7=94=A8=E6=88=B7=E6=89=80=E6=9C=89?= =?UTF-8?q?=E6=9D=83=E9=99=90=E5=A2=9E=E5=8A=A0=E5=B2=97=E4=BD=8DID?= =?UTF-8?q?=E6=9D=83=E9=99=90=20*=20update=20=E6=9B=B4=E6=96=B0=E9=80=9A?= =?UTF-8?q?=E8=BF=87=E5=B2=97=E4=BD=8DID=E6=9F=A5=E8=AF=A2=E7=94=A8?= =?UTF-8?q?=E6=88=B7=20*=20update=20=E4=BC=98=E5=8C=96=E6=BF=80=E6=B4=BB/?= =?UTF-8?q?=E6=8C=82=E8=B5=B7=E6=B5=81=E7=A8=8B=E5=AE=9A=E4=B9=89=E5=88=A4?= =?UTF-8?q?=E6=96=AD=20*=20Revert=20"add=20=E6=96=B0=E5=A2=9E=E5=BC=82?= =?UTF-8?q?=E5=B8=B8=E5=A4=84=E7=90=86=E5=99=A8=E5=92=8C=E5=B7=A5=E4=BD=9C?= =?UTF-8?q?=E6=B5=81=E5=B0=81=E8=A3=85=E5=8C=85"=20*=20add=20=E6=96=B0?= =?UTF-8?q?=E5=A2=9E=E5=BC=82=E5=B8=B8=E5=A4=84=E7=90=86=E5=99=A8=E5=92=8C?= =?UTF-8?q?=E5=B7=A5=E4=BD=9C=E6=B5=81=E5=B0=81=E8=A3=85=E5=8C=85=20*=20up?= =?UTF-8?q?date=20=E4=BC=98=E5=8C=96=E5=BE=85=E5=8A=9E=E4=BB=BB=E5=8A=A1?= =?UTF-8?q?=E6=9F=A5=E8=AF=A2=E4=BB=A5=E5=8F=8A=E4=BB=BB=E5=8A=A1=E6=B5=81?= =?UTF-8?q?=E8=BD=AC=20*=20update=20=E4=BC=98=E5=8C=96=E5=B7=A5=E4=BD=9C?= =?UTF-8?q?=E6=B5=81=E5=B7=A5=E5=85=B7=EF=BC=8C=E9=81=BF=E5=85=8D=E5=A4=9A?= =?UTF-8?q?=E6=AC=A1=E8=8E=B7=E5=8F=96=E8=AF=B7=E6=B1=82=20*=20fix=20?= =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=97=A0=E6=95=88=E6=A0=87=E8=AF=86=20*=20Me?= =?UTF-8?q?rge=20remote-tracking=20branch=20'origin/dev'=20into=20warm-flo?= =?UTF-8?q?w-future=20*=20update=20=E6=9F=A5=E8=AF=A2=E9=83=A8=E9=97=A8?= =?UTF-8?q?=E5=B9=B6=E8=BF=94=E5=9B=9E=E4=BB=BB=E5=8A=A1=E6=8C=87=E6=B4=BE?= =?UTF-8?q?=E7=9A=84=E5=88=97=E8=A1=A8=E6=A0=B9=E6=8D=AE=E9=83=A8=E9=97=A8?= =?UTF-8?q?=E6=A0=91=E6=90=9C=E7=B4=A2=20*=20Merge=20remote-tracking=20bra?= =?UTF-8?q?nch=20'origin/dev'=20into=20warm-flow-future=20*=20update=20?= =?UTF-8?q?=E4=BC=98=E5=8C=96=E4=BB=BB=E5=8A=A1=E5=8A=9E=E7=90=86=E4=BA=BA?= =?UTF-8?q?=E5=88=86=E7=BB=84=20*=20update=20=E4=BC=98=E5=8C=96=E4=BB=BB?= =?UTF-8?q?=E5=8A=A1=E5=8A=9E=E7=90=86=E4=BA=BA=E6=9F=A5=E8=AF=A2=20*=20up?= =?UTF-8?q?date=20=E4=BC=98=E5=8C=96=E4=BB=BB=E5=8A=A1=E5=8A=9E=E7=90=86?= =?UTF-8?q?=E4=BA=BA=E6=9F=A5=E8=AF=A2=20*=20update=20=E4=BC=98=E5=8C=96?= =?UTF-8?q?=E4=BB=BB=E5=8A=A1=E5=8A=9E=E7=90=86=E4=BA=BA=20*=20update=20?= =?UTF-8?q?=E5=AE=8C=E5=96=84=E4=BB=BB=E5=8A=A1=E5=8A=9E=E7=90=86=E4=BA=BA?= =?UTF-8?q?=20*=20add=20=E6=96=B0=E5=A2=9E=E8=A7=92=E8=89=B2=E5=8A=9E?= =?UTF-8?q?=E7=90=86=E4=BA=BA=20*=20!596=20=E4=BC=98=E5=8C=96=E5=B7=A5?= =?UTF-8?q?=E4=BD=9C=E6=B5=81=E4=BB=A3=E7=A0=81=E9=80=BB=E8=BE=91=20*=20up?= =?UTF-8?q?date=20=E4=BC=98=E5=8C=96=E5=B7=A5=E4=BD=9C=E6=B5=81=E5=B7=A5?= =?UTF-8?q?=E5=85=B7=E5=86=97=E4=BD=99=E4=BB=A3=E7=A0=81=20*=20update=20?= =?UTF-8?q?=E4=BC=98=E5=8C=96=E5=B7=A5=E4=BD=9C=E6=B5=81=E4=BB=A3=E7=A0=81?= =?UTF-8?q?=E9=80=BB=E8=BE=91=20*=20update=20=E8=B0=83=E6=95=B4=E5=8A=9E?= =?UTF-8?q?=E7=90=86=20=E9=A9=B3=E5=9B=9E=20=E7=BB=88=E6=AD=A2=E7=AD=89?= =?UTF-8?q?=E7=8A=B6=E6=80=81=20*=20update=20=E8=B0=83=E6=95=B4=E6=B5=81?= =?UTF-8?q?=E7=A8=8B=E5=AE=9A=E4=B9=89=E6=9F=A5=E8=AF=A2=20*=20=E8=A7=A3?= =?UTF-8?q?=E5=86=B3=E5=86=B2=E7=AA=81=E6=8F=90=E4=BA=A4=20warmflow?= =?UTF-8?q?=E4=BB=A3=E7=A0=81=20*=20update=20=E5=8D=87=E7=BA=A7warm-flow?= =?UTF-8?q?=E5=88=B01.3.0=20=E8=B0=83=E6=95=B4=E6=B5=81=E7=A8=8B=E5=8A=9E?= =?UTF-8?q?=E7=90=86=20=EF=BC=8C=E9=A9=B3=E5=9B=9E=EF=BC=8C=E7=BB=88?= =?UTF-8?q?=E6=AD=A2=E7=AD=89=20=E6=B7=BB=E5=8A=A0=E8=87=AA=E5=AE=9A?= =?UTF-8?q?=E4=B9=89=E7=9B=91=E5=90=AC=20*=20Merge=20remote-tracking=20bra?= =?UTF-8?q?nch=20'origin/dev'=20into=20warm-flow-future=20*=20update=20?= =?UTF-8?q?=E8=B0=83=E6=95=B4=E6=B5=81=E7=A8=8Bxml=E6=9F=A5=E8=AF=A2=20*?= =?UTF-8?q?=20update=20=E8=B0=83=E6=95=B4=E9=A9=B3=E5=9B=9E=20*=20update?= =?UTF-8?q?=20=E5=8D=87=E7=BA=A7warm-flow=20*=20update=20=E8=B0=83?= =?UTF-8?q?=E6=95=B4=E4=BB=BB=E5=8A=A1=E5=8A=9E=E7=90=86=E8=AE=BE=E7=BD=AE?= =?UTF-8?q?=E5=8A=9E=E7=90=86=E4=BA=BA=20*=20=E8=B0=83=E6=95=B4=E8=BD=AC?= =?UTF-8?q?=E5=8A=9E=EF=BC=8C=E5=A7=94=E6=89=98=E5=8F=82=E6=95=B0=20*=20up?= =?UTF-8?q?date=20warm-flow=201.2.4=20=3D>=201.2.7=20*=20Merge=20remote-tr?= =?UTF-8?q?acking=20branch=20'origin/dev'=20into=20warm-flow-future=20*=20?= =?UTF-8?q?update=20=E8=B0=83=E6=95=B4=E6=8A=84=E9=80=81=E9=94=99=E8=AF=AF?= =?UTF-8?q?=20*=20=E6=B7=BB=E5=8A=A0=E5=B7=B2=E5=8A=9E=EF=BC=8C=E6=9C=AA?= =?UTF-8?q?=E5=8A=9E=20*=20Merge=20branch=20'warm-flow-future'=20of=20http?= =?UTF-8?q?s://gitee.com/dromara/RuoYi-Vue=E2=80=A6=20*=20add=20=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0=E6=88=91=E5=8F=91=E8=B5=B7=E7=9A=84=E5=8D=95=E6=8D=AE?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3=20*=20Merge=20remote-tracking=20branch=20'or?= =?UTF-8?q?igin/dev'=20into=20warm-flow-future=20*=20update=20=E8=B0=83?= =?UTF-8?q?=E6=95=B4=E6=B5=81=E7=A8=8B=E5=AE=9E=E4=BE=8B=EF=BC=8C=E5=BE=85?= =?UTF-8?q?=E5=8A=9E=E6=9F=A5=E8=AF=A2=20*=20remove=20=E5=88=A0=E9=99=A4?= =?UTF-8?q?=E6=97=A0=E7=94=A8=E6=A0=A1=E9=AA=8C=20*=20add=20=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0=E5=BE=85=E5=8A=9E=E4=BA=BA=E6=9F=A5=E8=AF=A2=20*=20Me?= =?UTF-8?q?rge=20branch=20'dev'=20into=20warm-flow-future=20*=20update=20?= =?UTF-8?q?=E8=B0=83=E6=95=B4=E5=AD=97=E6=AE=B5=E9=94=99=E8=AF=AF=EF=BC=8C?= =?UTF-8?q?=E6=B5=81=E7=A8=8B=E5=AF=BC=E5=85=A5=20*=20add=20=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0=E6=B5=81=E7=A8=8B=E6=BF=80=E6=B4=BB/=E6=8C=82?= =?UTF-8?q?=E8=B5=B7=E6=8E=A5=E5=8F=A3=20=E5=8D=87=E7=BA=A7warm-flow?= =?UTF-8?q?=E5=88=B01.2.4=20*=20add=20=E6=B7=BB=E5=8A=A0=E5=8E=86=E5=8F=B2?= =?UTF-8?q?=E6=B5=81=E7=A8=8B=E5=AE=9A=E4=B9=89=E6=9F=A5=E8=AF=A2=20?= =?UTF-8?q?=E8=B0=83=E6=95=B4=E6=B5=81=E7=A8=8B=E5=8F=91=E5=B8=83=20*=20Me?= =?UTF-8?q?rge=20remote-tracking=20branch=20'origin/dev'=20into=20warm-flo?= =?UTF-8?q?w-future=20*=20Merge=20remote-tracking=20branch=20'origin/dev'?= =?UTF-8?q?=20into=20warm-flow-future=20*=20Merge=20remote-tracking=20bran?= =?UTF-8?q?ch=20'origin/dev'=20into=20warm-flow-future=20*=20Merge=20remot?= =?UTF-8?q?e-tracking=20branch=20'origin/dev'=20into=20warm-flow-future=20?= =?UTF-8?q?*=20update=20=E4=BC=98=E5=8C=96=20TenantSpringCacheManager=20?= =?UTF-8?q?=E5=A4=84=E7=90=86=E9=80=BB=E8=BE=91=20*=20fix=20=E4=BF=AE?= =?UTF-8?q?=E5=A4=8D=20=E4=B8=80=E7=BA=A7=E7=BC=93=E5=AD=98key=E6=9C=AA?= =?UTF-8?q?=E5=8C=BA=E5=88=86=E7=A7=9F=E6=88=B7=E9=97=AE=E9=A2=98=20*=20up?= =?UTF-8?q?date=20=E4=BC=98=E5=8C=96=20=E8=A7=92=E8=89=B2=E6=9D=83?= =?UTF-8?q?=E9=99=90=E5=88=A4=E6=96=AD=20*=20update=20=E6=9B=B4=E6=96=B0?= =?UTF-8?q?=20readme=20*=20update=20=E4=BC=98=E5=8C=96=20=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0=E5=88=A0=E9=99=A4=E6=A0=87=E5=BF=97=E4=BD=8D=E5=B8=B8?= =?UTF-8?q?=E9=87=8F=E4=BC=98=E5=8C=96=E6=9F=A5=E8=AF=A2=E4=BB=A3=E7=A0=81?= =?UTF-8?q?=20*=20fix=20=E4=BF=AE=E5=A4=8D=20=E7=99=BB=E5=87=BA=E6=97=A0?= =?UTF-8?q?=E6=B3=95=E6=AD=A3=E7=A1=AE=E5=88=A0=E9=99=A4=E5=AF=B9=E5=BA=94?= =?UTF-8?q?=E7=9A=84=E7=A7=9F=E6=88=B7=E6=95=B0=E6=8D=AE=E9=97=AE=E9=A2=98?= =?UTF-8?q?=20*=20update=20=E4=BC=98=E5=8C=96=20sse=20=E6=8B=A6=E6=88=AA?= =?UTF-8?q?=E7=BD=91=E7=BB=9C=E4=B8=AD=E6=96=ADio=E5=BC=82=E5=B8=B8=20*=20?= =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20=E7=99=BB=E5=BD=95=E9=94=99=E8=AF=AF?= =?UTF-8?q?=E9=94=81=E5=AE=9A=E4=B8=8D=E5=8C=BA=E5=88=86=E7=A7=9F=E6=88=B7?= =?UTF-8?q?=E9=97=AE=E9=A2=98=20*=20update=20=E4=BC=98=E5=8C=96=20sse=20?= =?UTF-8?q?=E5=85=B3=E9=97=AD=E8=BF=9E=E6=8E=A5=E5=90=84=E7=A7=8D=E5=BC=82?= =?UTF-8?q?=E5=B8=B8=E9=97=AE=E9=A2=98=20*=20update=20=E4=BC=98=E5=8C=96?= =?UTF-8?q?=20=E7=9B=91=E6=8E=A7=E4=BD=BF=E7=94=A8=E7=8B=AC=E7=AB=8Bweb?= =?UTF-8?q?=E4=BE=9D=E8=B5=96=20*=20fix=20=E4=BF=AE=E5=A4=8D=20=E4=BB=A3?= =?UTF-8?q?=E7=A0=81=E7=94=9F=E6=88=90=20=E9=94=99=E8=AF=AF=E5=8C=B9?= =?UTF-8?q?=E9=85=8D=E8=A1=A8=E5=90=8D=E9=97=AE=E9=A2=98=20*=20update=20?= =?UTF-8?q?=E4=BC=98=E5=8C=96=20=E9=80=82=E9=85=8D=20anyline=20=E6=96=B0?= =?UTF-8?q?=E6=94=B9=E5=8A=A8=20*=20update=20anyline=208.7.2-20240728=20*?= =?UTF-8?q?=20update=20=E8=84=B1=E6=95=8F=E7=AD=96=E7=95=A5=E4=BC=98?= =?UTF-8?q?=E5=8C=96=E5=A2=9E=E5=8A=A0=E5=AF=86=E7=A0=81=20*=20add=20?= =?UTF-8?q?=E6=96=B0=E5=A2=9E=20=E6=9B=B4=E5=A4=9A=E8=84=B1=E6=95=8F?= =?UTF-8?q?=E7=AD=96=E7=95=A5=20*=20update=20=E4=BC=98=E5=8C=96oss?= =?UTF-8?q?=E6=9F=A5=E8=AF=A2=E4=BB=A3=E7=A0=81=20*=20update=20=E4=BC=98?= =?UTF-8?q?=E5=8C=96=20sse=E5=8F=91=E9=80=81=E6=B6=88=E6=81=AF=20=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0token=E6=9C=89=E6=95=88=E6=9C=9F=E5=88=A4=E6=96=AD=20*?= =?UTF-8?q?=20fix=20=E4=BF=AE=E5=A4=8D=20=E7=99=BB=E5=87=BA=E5=90=8E?= =?UTF-8?q?=E9=87=8D=E6=96=B0=E7=99=BB=E5=BD=95=20sse=E6=8E=A8=E9=80=81?= =?UTF-8?q?=E6=8A=A5=E9=94=99=E9=97=AE=E9=A2=98=20*=20fix=20=E4=BF=AE?= =?UTF-8?q?=E5=A4=8D=20=E4=BB=A3=E7=A0=81=E7=94=9F=E6=88=90=20=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E6=BA=90=E5=88=87=E6=8D=A2=E9=97=AE=E9=A2=98=20*=20up?= =?UTF-8?q?date=20anyline=208.7.2-20240726=20*=20fix=20=E4=BF=AE=E5=A4=8D?= =?UTF-8?q?=20=E4=BB=A3=E7=A0=81=E7=94=9F=E6=88=90=20=E8=A1=A8=E7=BB=93?= =?UTF-8?q?=E6=9E=84=E7=BC=93=E5=AD=98=E9=97=AE=E9=A2=98=20*=20update=20sn?= =?UTF-8?q?ailjob=201.1.0=20=3D>=201.1.1=20*=20fix=20=E4=BF=AE=E5=A4=8D=20?= =?UTF-8?q?=E4=BB=A3=E7=A0=81=E7=94=9F=E6=88=90=20=E8=A1=A8=E7=BB=93?= =?UTF-8?q?=E6=9E=84=E7=BC=93=E5=AD=98=E9=97=AE=E9=A2=98=20*=20update=20?= =?UTF-8?q?=E4=BC=98=E5=8C=96=20sse=20=E8=87=AA=E5=8A=A8=E8=A3=85=E9=85=8D?= =?UTF-8?q?=20*=20=E5=88=9D=E5=A7=8B=E5=8C=96=E6=B7=BB=E5=8A=A0warm-flow?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 16 +- .../src/main/resources/application.yml | 31 +- .../core/domain/dto/CompleteTaskDTO.java | 71 + .../common/core/domain/dto/FlowCopyDTO.java | 23 +- .../core/domain/dto/StartProcessDTO.java | 45 + .../core/domain/dto/TaskAssigneeDTO.java | 101 + .../core/domain/event/ProcessDeleteEvent.java | 20 +- .../core/domain/event/ProcessEvent.java | 13 +- .../core/domain/event/ProcessTaskEvent.java | 18 +- .../core/domain/model/TaskAssigneeBody.java | 40 +- .../common/core/enums/BusinessStatusEnum.java | 79 +- .../core/service/TaskAssigneeService.java | 45 + .../common/core/service/WorkflowService.java | 54 +- .../common/satoken/utils/LoginHelper.java | 1 + .../service/GenTableServiceImpl.java | 2 +- .../dromara/system/mapper/SysDeptMapper.java | 12 + .../service/impl/SysPostServiceImpl.java | 1 + .../service/impl/SysRoleServiceImpl.java | 1 + .../impl/SysTaskAssigneeServiceImpl.java | 168 ++ .../service/impl/SysTenantServiceImpl.java | 12 +- .../resources/mapper/system/SysDeptMapper.xml | 11 + ruoyi-modules/ruoyi-workflow/pom.xml | 57 +- .../common/constant/FlowConstant.java | 113 +- .../workflow/common/enums/FormTypeEnum.java | 54 - .../common/enums/MessageTypeEnum.java | 20 +- .../common/enums/TaskAssigneeEnum.java | 109 + .../common/enums/TaskAssigneeType.java | 49 + .../workflow/common/enums/TaskStatusEnum.java | 32 +- .../workflow/config/WarmFlowConfig.java | 15 + .../controller/ActModelController.java | 148 -- .../ActProcessDefinitionController.java | 147 -- .../ActProcessInstanceController.java | 160 -- .../controller/ActTaskController.java | 295 --- ...roller.java => FlwCategoryController.java} | 78 +- .../controller/FlwDefinitionController.java | 194 ++ .../controller/FlwInstanceController.java | 155 ++ .../controller/FlwTaskController.java | 199 ++ .../WfDefinitionConfigController.java | 79 - .../controller/WfFormManageController.java | 114 -- .../workflow/domain/ActHiProcinst.java | 152 -- .../workflow/domain/ActHiTaskinst.java | 193 -- .../{WfCategory.java => FlowCategory.java} | 32 +- .../workflow/domain/WfDefinitionConfig.java | 56 - .../dromara/workflow/domain/WfFormManage.java | 51 - .../dromara/workflow/domain/WfNodeConfig.java | 61 - .../workflow/domain/WfTaskBackNode.java | 61 - .../workflow/domain/bo/AddMultiBo.java | 40 - .../workflow/domain/bo/BackProcessBo.java | 28 +- .../workflow/domain/bo/CompleteTaskBo.java | 20 +- .../workflow/domain/bo/DelegateBo.java | 38 - .../workflow/domain/bo/DeleteMultiBo.java | 52 - ...rocessInvalidBo.java => FlowCancelBo.java} | 14 +- ...{WfCategoryBo.java => FlowCategoryBo.java} | 35 +- .../{vo/WfCopy.java => bo/FlowCopyBo.java} | 5 +- ...essInstanceBo.java => FlowInstanceBo.java} | 28 +- .../{TransmitBo.java => FlowInvalidBo.java} | 18 +- .../bo/{TaskBo.java => FlowTaskBo.java} | 32 +- ...minationBo.java => FlowTerminationBo.java} | 8 +- .../dromara/workflow/domain/bo/ModelBo.java | 66 - .../workflow/domain/bo/StartProcessBo.java | 8 +- .../workflow/domain/bo/TaskOperationBo.java | 48 + .../workflow/domain/bo/TaskUrgingBo.java | 34 - .../workflow/domain/bo/TestLeaveBo.java | 1 - .../domain/bo/WfDefinitionConfigBo.java | 59 - .../workflow/domain/bo/WfFormManageBo.java | 53 - .../workflow/domain/bo/WfNodeConfigBo.java | 63 - .../workflow/domain/vo/ActHistoryInfoVo.java | 93 - ...{WfCategoryVo.java => FlowCategoryVo.java} | 47 +- ...sInstanceVo.java => FlowDefinitionVo.java} | 74 +- .../workflow/domain/vo/FlowHisTaskVo.java | 244 +++ .../workflow/domain/vo/FlowInstanceVo.java | 137 ++ .../vo/{TaskVo.java => FlowTaskVo.java} | 131 +- .../{VariableVo.java => FlowVariableVo.java} | 2 +- .../workflow/domain/vo/GraphicInfoVo.java | 47 - .../workflow/domain/vo/MultiInstanceVo.java | 33 - .../workflow/domain/vo/ParticipantVo.java | 43 - .../domain/vo/ProcessDefinitionVo.java | 70 - .../domain/vo/WfDefinitionConfigVo.java | 70 - .../workflow/domain/vo/WfFormManageVo.java | 63 - .../workflow/domain/vo/WfNodeConfigVo.java | 75 - .../CustomDefaultProcessDiagramCanvas.java | 108 - .../CustomDefaultProcessDiagramGenerator.java | 1120 ----------- .../cmd/AddSequenceMultiInstanceCmd.java | 61 - .../workflow/flowable/cmd/AttachmentCmd.java | 66 - .../flowable/cmd/DeleteExecutionCmd.java | 36 - .../cmd/DeleteSequenceMultiInstanceCmd.java | 83 - .../cmd/ExecutionChildByExecutionIdCmd.java | 39 - .../flowable/cmd/UpdateBusinessStatusCmd.java | 37 - .../flowable/cmd/UpdateHiTaskInstCmd.java | 51 - .../flowable/config/FlowableConfig.java | 32 - .../config/GlobalFlowableListener.java | 139 -- .../handler/FlowProcessEventHandler.java | 50 - .../handler/TaskTimeoutJobHandler.java | 37 - .../handler/FlowProcessEventHandler.java | 77 + .../handler/WorkflowPermissionHandler.java | 71 + .../listener/WorkflowGlobalListener.java | 115 ++ .../workflow/mapper/ActHiProcinstMapper.java | 16 - .../workflow/mapper/ActHiTaskinstMapper.java | 16 - .../workflow/mapper/FlwCategoryMapper.java | 60 + .../workflow/mapper/FlwInstanceMapper.java | 27 + ...{ActTaskMapper.java => FlwTaskMapper.java} | 26 +- .../workflow/mapper/WfCategoryMapper.java | 15 - .../mapper/WfDefinitionConfigMapper.java | 15 - .../workflow/mapper/WfFormManageMapper.java | 15 - .../workflow/mapper/WfNodeConfigMapper.java | 15 - .../workflow/mapper/WfTaskBackNodeMapper.java | 13 - .../service/IActHiProcinstService.java | 31 - .../service/IActHiTaskinstService.java | 11 - .../workflow/service/IActModelService.java | 83 - .../service/IActProcessDefinitionService.java | 91 - .../service/IActProcessInstanceService.java | 110 - .../workflow/service/IFlwCategoryService.java | 102 + .../service/IFlwDefinitionService.java | 79 + .../workflow/service/IFlwInstanceService.java | 159 ++ .../service/IFlwTaskAssigneeService.java | 22 + ...tTaskService.java => IFlwTaskService.java} | 131 +- .../workflow/service/ITestLeaveService.java | 3 +- .../workflow/service/IWfCategoryService.java | 51 - .../service/IWfDefinitionConfigService.java | 83 - .../service/IWfFormManageService.java | 81 - .../service/IWfNodeConfigService.java | 56 - .../service/IWfTaskBackNodeService.java | 65 - .../impl/ActHiProcinstServiceImpl.java | 51 - .../impl/ActHiTaskinstServiceImpl.java | 18 - .../service/impl/ActModelServiceImpl.java | 431 ---- .../impl/ActProcessDefinitionServiceImpl.java | 444 ----- .../impl/ActProcessInstanceServiceImpl.java | 691 ------- .../service/impl/ActTaskServiceImpl.java | 861 -------- .../impl/CategoryNameTranslationImpl.java | 31 + .../service/impl/FlwCategoryServiceImpl.java | 267 +++ .../impl/FlwDefinitionServiceImpl.java | 275 +++ .../service/impl/FlwInstanceServiceImpl.java | 455 +++++ .../impl/FlwTaskAssigneeServiceImpl.java | 158 ++ .../service/impl/FlwTaskServiceImpl.java | 669 +++++++ .../service/impl/TestLeaveServiceImpl.java | 56 +- .../service/impl/WfCategoryServiceImpl.java | 130 -- .../impl/WfDefinitionConfigServiceImpl.java | 117 -- .../service/impl/WfFormManageServiceImpl.java | 111 -- .../service/impl/WfNodeConfigServiceImpl.java | 75 - .../impl/WfTaskBackNodeServiceImpl.java | 144 -- .../service/impl/WorkflowServiceImpl.java | 100 +- .../dromara/workflow/utils/ModelUtils.java | 289 --- .../dromara/workflow/utils/QueryUtils.java | 169 -- .../dromara/workflow/utils/WorkflowUtils.java | 357 ++-- .../mapper/workflow/ActHiTaskinstMapper.xml | 7 - .../mapper/workflow/ActTaskMapper.xml | 77 - ...ocinstMapper.xml => FlwCategoryMapper.xml} | 6 +- .../mapper/workflow/FlwInstanceMapper.xml | 36 + .../mapper/workflow/FlwTaskMapper.xml | 115 ++ .../mapper/workflow/WfCategoryMapper.xml | 7 - .../workflow/WfDefinitionConfigMapper.xml | 7 - .../mapper/workflow/WfFormManageMapper.xml | 7 - .../mapper/workflow/WfNodeConfigMapper.xml | 7 - .../mapper/workflow/WfTaskBackNodeMapper.xml | 7 - script/bpmn/leave1.xml | 17 + script/bpmn/leave2.xml | 24 + script/bpmn/leave3.xml | 27 + script/bpmn/leave4.xml | 20 + script/bpmn/leave5.xml | 27 + "script/bpmn/\346\250\241\345\236\213.zip" | Bin 8543 -> 0 bytes script/sql/oracle/oracle_ry_workflow.sql | 633 +++--- script/sql/postgres/postgres_ry_workflow.sql | 608 +++--- script/sql/ry_workflow.sql | 405 ++-- script/sql/sqlserver/sqlserver_ry_vue_5.X.sql | 6 +- .../sql/sqlserver/sqlserver_ry_workflow.sql | 1762 ++++++++++++----- 165 files changed, 7662 insertions(+), 10707 deletions(-) create mode 100644 ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/CompleteTaskDTO.java rename ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/SysUserMultiBo.java => ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/FlowCopyDTO.java (44%) create mode 100644 ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/StartProcessDTO.java create mode 100644 ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/TaskAssigneeDTO.java rename ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/ProcessDefinitionBo.java => ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/event/ProcessDeleteEvent.java (41%) rename ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/ModelVo.java => ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/model/TaskAssigneeBody.java (31%) create mode 100644 ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/service/TaskAssigneeService.java create mode 100644 ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTaskAssigneeServiceImpl.java delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/enums/FormTypeEnum.java create mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/enums/TaskAssigneeEnum.java create mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/enums/TaskAssigneeType.java create mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/config/WarmFlowConfig.java delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/ActModelController.java delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/ActProcessDefinitionController.java delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/ActProcessInstanceController.java delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/ActTaskController.java rename ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/{WfCategoryController.java => FlwCategoryController.java} (42%) create mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwDefinitionController.java create mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwInstanceController.java create mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwTaskController.java delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/WfDefinitionConfigController.java delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/WfFormManageController.java delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/ActHiProcinst.java delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/ActHiTaskinst.java rename ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/{WfCategory.java => FlowCategory.java} (56%) delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/WfDefinitionConfig.java delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/WfFormManage.java delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/WfNodeConfig.java delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/WfTaskBackNode.java delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/AddMultiBo.java delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/DelegateBo.java delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/DeleteMultiBo.java rename ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/{ProcessInvalidBo.java => FlowCancelBo.java} (56%) rename ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/{WfCategoryBo.java => FlowCategoryBo.java} (48%) rename ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/{vo/WfCopy.java => bo/FlowCopyBo.java} (77%) rename ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/{ProcessInstanceBo.java => FlowInstanceBo.java} (49%) rename ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/{TransmitBo.java => FlowInvalidBo.java} (48%) rename ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/{TaskBo.java => FlowTaskBo.java} (41%) rename ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/{TerminationBo.java => FlowTerminationBo.java} (66%) delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/ModelBo.java create mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/TaskOperationBo.java delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/TaskUrgingBo.java delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/WfDefinitionConfigBo.java delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/WfFormManageBo.java delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/WfNodeConfigBo.java delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/ActHistoryInfoVo.java rename ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/{WfCategoryVo.java => FlowCategoryVo.java} (44%) rename ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/{ProcessInstanceVo.java => FlowDefinitionVo.java} (32%) create mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/FlowHisTaskVo.java create mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/FlowInstanceVo.java rename ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/{TaskVo.java => FlowTaskVo.java} (35%) rename ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/{VariableVo.java => FlowVariableVo.java} (86%) delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/GraphicInfoVo.java delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/MultiInstanceVo.java delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/ParticipantVo.java delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/ProcessDefinitionVo.java delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/WfDefinitionConfigVo.java delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/WfFormManageVo.java delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/WfNodeConfigVo.java delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/flowable/CustomDefaultProcessDiagramCanvas.java delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/flowable/CustomDefaultProcessDiagramGenerator.java delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/flowable/cmd/AddSequenceMultiInstanceCmd.java delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/flowable/cmd/AttachmentCmd.java delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/flowable/cmd/DeleteExecutionCmd.java delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/flowable/cmd/DeleteSequenceMultiInstanceCmd.java delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/flowable/cmd/ExecutionChildByExecutionIdCmd.java delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/flowable/cmd/UpdateBusinessStatusCmd.java delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/flowable/cmd/UpdateHiTaskInstCmd.java delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/flowable/config/FlowableConfig.java delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/flowable/config/GlobalFlowableListener.java delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/flowable/handler/FlowProcessEventHandler.java delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/flowable/handler/TaskTimeoutJobHandler.java create mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/handler/FlowProcessEventHandler.java create mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/handler/WorkflowPermissionHandler.java create mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/listener/WorkflowGlobalListener.java delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/mapper/ActHiProcinstMapper.java delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/mapper/ActHiTaskinstMapper.java create mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/mapper/FlwCategoryMapper.java create mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/mapper/FlwInstanceMapper.java rename ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/mapper/{ActTaskMapper.java => FlwTaskMapper.java} (49%) delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/mapper/WfCategoryMapper.java delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/mapper/WfDefinitionConfigMapper.java delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/mapper/WfFormManageMapper.java delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/mapper/WfNodeConfigMapper.java delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/mapper/WfTaskBackNodeMapper.java delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IActHiProcinstService.java delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IActHiTaskinstService.java delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IActModelService.java delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IActProcessDefinitionService.java delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IActProcessInstanceService.java create mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IFlwCategoryService.java create mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IFlwDefinitionService.java create mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IFlwInstanceService.java create mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IFlwTaskAssigneeService.java rename ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/{IActTaskService.java => IFlwTaskService.java} (34%) delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IWfCategoryService.java delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IWfDefinitionConfigService.java delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IWfFormManageService.java delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IWfNodeConfigService.java delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IWfTaskBackNodeService.java delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActHiProcinstServiceImpl.java delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActHiTaskinstServiceImpl.java delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActModelServiceImpl.java delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActProcessDefinitionServiceImpl.java delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActProcessInstanceServiceImpl.java delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActTaskServiceImpl.java create mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/CategoryNameTranslationImpl.java create mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwCategoryServiceImpl.java create mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwDefinitionServiceImpl.java create mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwInstanceServiceImpl.java create mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskAssigneeServiceImpl.java create mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WfCategoryServiceImpl.java delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WfDefinitionConfigServiceImpl.java delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WfFormManageServiceImpl.java delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WfNodeConfigServiceImpl.java delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WfTaskBackNodeServiceImpl.java delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/utils/ModelUtils.java delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/utils/QueryUtils.java delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/resources/mapper/workflow/ActHiTaskinstMapper.xml delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/resources/mapper/workflow/ActTaskMapper.xml rename ruoyi-modules/ruoyi-workflow/src/main/resources/mapper/workflow/{ActHiProcinstMapper.xml => FlwCategoryMapper.xml} (41%) create mode 100644 ruoyi-modules/ruoyi-workflow/src/main/resources/mapper/workflow/FlwInstanceMapper.xml create mode 100644 ruoyi-modules/ruoyi-workflow/src/main/resources/mapper/workflow/FlwTaskMapper.xml delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/resources/mapper/workflow/WfCategoryMapper.xml delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/resources/mapper/workflow/WfDefinitionConfigMapper.xml delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/resources/mapper/workflow/WfFormManageMapper.xml delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/resources/mapper/workflow/WfNodeConfigMapper.xml delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/resources/mapper/workflow/WfTaskBackNodeMapper.xml create mode 100644 script/bpmn/leave1.xml create mode 100644 script/bpmn/leave2.xml create mode 100644 script/bpmn/leave3.xml create mode 100644 script/bpmn/leave4.xml create mode 100644 script/bpmn/leave5.xml delete mode 100644 "script/bpmn/\346\250\241\345\236\213.zip" diff --git a/pom.xml b/pom.xml index 63b9d0226..2993af438 100644 --- a/pom.xml +++ b/pom.xml @@ -50,7 +50,7 @@ 8.7.2-20241022 - 7.0.1 + 1.3.7 3.2.2 @@ -118,12 +118,16 @@ import + - org.flowable - flowable-bom - ${flowable.version} - pom - import + org.dromara.warm + warm-flow-mybatis-plus-sb3-starter + ${warm-flow.version} + + + org.dromara.warm + warm-flow-plugin-ui-sb-web + ${warm-flow.version} diff --git a/ruoyi-admin/src/main/resources/application.yml b/ruoyi-admin/src/main/resources/application.yml index c42bb7f26..dbe16888d 100644 --- a/ruoyi-admin/src/main/resources/application.yml +++ b/ruoyi-admin/src/main/resources/application.yml @@ -119,6 +119,7 @@ security: - /error - /*/api-docs - /*/api-docs/** + - /warm-flow-ui/token-name # 多租户配置 tenant: @@ -227,8 +228,7 @@ xss: # 排除链接(多个用逗号分隔) excludeUrls: - /system/notice - - /workflow/model/save - - /workflow/model/editModelXml + - /warm-flow/save-xml # 全局线程池相关配置 # 如使用JDK21请直接使用虚拟线程 不要开启此配置 @@ -273,24 +273,11 @@ websocket: # 设置访问源地址 allowedOrigins: '*' ---- #flowable配置 -flowable: - # 开关 用于启动/停用工作流 +--- # warm-flow工作流配置 +warm-flow: + # 是否开启工作流,默认true enabled: true - process.enabled: ${flowable.enabled} - eventregistry.enabled: ${flowable.enabled} - async-executor-activate: false #关闭定时任务JOB - # 将databaseSchemaUpdate设置为true。当Flowable发现库与数据库表结构不一致时,会自动将数据库表结构升级至新版本。 - database-schema-update: true - activity-font-name: 宋体 - label-font-name: 宋体 - annotation-font-name: 宋体 - # 关闭各个模块生成表,目前只使用工作流基础表 - idm: - enabled: false - cmmn: - enabled: false - dmn: - enabled: false - app: - enabled: false + # 是否开启设计器ui + ui: true + # 默认Authorization,如果有多个token,用逗号分隔 + token-name: ${sa-token.token-name},clientid diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/CompleteTaskDTO.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/CompleteTaskDTO.java new file mode 100644 index 000000000..2e63f8aca --- /dev/null +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/CompleteTaskDTO.java @@ -0,0 +1,71 @@ +package org.dromara.common.core.domain.dto; + +import lombok.Data; + +import java.io.Serial; +import java.io.Serializable; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.Objects; + +/** + * 办理任务请求对象 + * + * @author may + */ +@Data +public class CompleteTaskDTO implements Serializable { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 任务id + */ + private Long taskId; + + /** + * 附件id + */ + private String fileId; + + /** + * 抄送人员 + */ + private List flowCopyList; + + /** + * 消息类型 + */ + private List messageType; + + /** + * 办理意见 + */ + private String message; + + /** + * 消息通知 + */ + private String notice; + + /** + * 流程变量 + */ + private Map variables; + + /** + * 扩展变量(此处为逗号分隔的ossId) + */ + private String ext; + + public Map getVariables() { + if (variables == null) { + return new HashMap<>(16); + } + variables.entrySet().removeIf(entry -> Objects.isNull(entry.getValue())); + return variables; + } + +} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/SysUserMultiBo.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/FlowCopyDTO.java similarity index 44% rename from ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/SysUserMultiBo.java rename to ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/FlowCopyDTO.java index e4d99e47a..2f20b21f7 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/SysUserMultiBo.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/FlowCopyDTO.java @@ -1,4 +1,4 @@ -package org.dromara.workflow.domain.bo; +package org.dromara.common.core.domain.dto; import lombok.Data; @@ -7,33 +7,24 @@ import java.io.Serializable; /** - * 用户加签查询 + * 抄送 * * @author may */ @Data -public class SysUserMultiBo implements Serializable { +public class FlowCopyDTO implements Serializable { @Serial private static final long serialVersionUID = 1L; /** - * 人员名称 + * 用户id */ - private String userName; - - /** - * 人员名称 - */ - private String nickName; + private Long userId; /** - * 部门id + * 用户名称 */ - private String deptId; + private String userName; - /** - * 任务id - */ - private String taskId; } diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/StartProcessDTO.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/StartProcessDTO.java new file mode 100644 index 000000000..3934ada55 --- /dev/null +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/StartProcessDTO.java @@ -0,0 +1,45 @@ +package org.dromara.common.core.domain.dto; + + +import lombok.Data; + +import java.io.Serial; +import java.io.Serializable; +import java.util.HashMap; +import java.util.Map; +import java.util.Objects; + +/** + * 启动流程对象 + * + * @author may + */ +@Data +public class StartProcessDTO implements Serializable { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 业务唯一值id + */ + private String businessId; + + /** + * 流程定义编码 + */ + private String flowCode; + + /** + * 流程变量,前端会提交一个元素{'entity': {业务详情数据对象}} + */ + private Map variables; + + public Map getVariables() { + if (variables == null) { + return new HashMap<>(16); + } + variables.entrySet().removeIf(entry -> Objects.isNull(entry.getValue())); + return variables; + } +} diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/TaskAssigneeDTO.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/TaskAssigneeDTO.java new file mode 100644 index 000000000..85893e1dc --- /dev/null +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/TaskAssigneeDTO.java @@ -0,0 +1,101 @@ +package org.dromara.common.core.domain.dto; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.io.Serial; +import java.io.Serializable; +import java.util.Date; +import java.util.List; +import java.util.function.Function; +import java.util.stream.Collectors; + +/** + * 任务受让人 + * + * @author AprilWind + */ +@Data +@NoArgsConstructor +public class TaskAssigneeDTO implements Serializable { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 总大小 + */ + private Long total = 0L; + + /** + * + */ + private List list; + + public TaskAssigneeDTO(Long total, List list) { + this.total = total; + this.list = list; + } + + /** + * 将源列表转换为 TaskHandler 列表 + * + * @param 通用类型 + * @param sourceList 待转换的源列表 + * @param storageId 提取 storageId 的函数 + * @param handlerCode 提取 handlerCode 的函数 + * @param handlerName 提取 handlerName 的函数 + * @param groupName 提取 groupName 的函数 + * @param createTimeMapper 提取 createTime 的函数 + * @return 转换后的 TaskHandler 列表 + */ + public static List convertToHandlerList( + List sourceList, + Function storageId, + Function handlerCode, + Function handlerName, + Function groupName, + Function createTimeMapper) { + return sourceList.stream() + .map(item -> new TaskHandler( + String.valueOf(storageId.apply(item)), + handlerCode.apply(item), + handlerName.apply(item), + groupName != null ? String.valueOf(groupName.apply(item)) : null, + createTimeMapper.apply(item) + )).collect(Collectors.toList()); + } + + @Data + @NoArgsConstructor + @AllArgsConstructor + public static class TaskHandler { + + /** + * 主键 + */ + private String storageId; + + /** + * 权限编码 + */ + private String handlerCode; + + /** + * 权限名称 + */ + private String handlerName; + + /** + * 权限分组 + */ + private String groupName; + + /** + * 创建时间 + */ + private Date createTime; + } + +} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/ProcessDefinitionBo.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/event/ProcessDeleteEvent.java similarity index 41% rename from ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/ProcessDefinitionBo.java rename to ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/event/ProcessDeleteEvent.java index 2025932ba..d570c314e 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/ProcessDefinitionBo.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/event/ProcessDeleteEvent.java @@ -1,4 +1,4 @@ -package org.dromara.workflow.domain.bo; +package org.dromara.common.core.domain.event; import lombok.Data; @@ -6,29 +6,29 @@ import java.io.Serial; import java.io.Serializable; /** - * 流程定义请求对象 + * 删除流程监听 * - * @author may + * @author AprilWind */ @Data -public class ProcessDefinitionBo implements Serializable { +public class ProcessDeleteEvent implements Serializable { @Serial private static final long serialVersionUID = 1L; /** - * 流程定义名称key + * 租户ID */ - private String key; + private String tenantId; /** - * 流程定义名称 + * 流程定义编码 */ - private String name; + private String flowCode; /** - * 模型分类 + * 业务id */ - private String categoryCode; + private String businessId; } diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/event/ProcessEvent.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/event/ProcessEvent.java index 61c7efc39..21bfbefa4 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/event/ProcessEvent.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/event/ProcessEvent.java @@ -10,7 +10,6 @@ import java.io.Serializable; * * @author may */ - @Data public class ProcessEvent implements Serializable { @@ -18,14 +17,19 @@ public class ProcessEvent implements Serializable { private static final long serialVersionUID = 1L; /** - * 流程定义key + * 租户ID */ - private String key; + private String tenantId; + + /** + * 流程定义编码 + */ + private String flowCode; /** * 业务id */ - private String businessKey; + private String businessId; /** * 状态 @@ -37,5 +41,4 @@ public class ProcessEvent implements Serializable { */ private boolean submit; - } diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/event/ProcessTaskEvent.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/event/ProcessTaskEvent.java index 019ca823b..33bc6e5a6 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/event/ProcessTaskEvent.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/event/ProcessTaskEvent.java @@ -10,7 +10,6 @@ import java.io.Serializable; * * @author may */ - @Data public class ProcessTaskEvent implements Serializable { @@ -18,23 +17,28 @@ public class ProcessTaskEvent implements Serializable { private static final long serialVersionUID = 1L; /** - * 流程定义key + * 租户ID + */ + private String tenantId; + + /** + * 流程定义编码 */ - private String key; + private String flowCode; /** - * 审批节点key + * 审批节点编码 */ - private String taskDefinitionKey; + private String nodeCode; /** * 任务id */ - private String taskId; + private Long taskId; /** * 业务id */ - private String businessKey; + private String businessId; } diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/ModelVo.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/model/TaskAssigneeBody.java similarity index 31% rename from ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/ModelVo.java rename to ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/model/TaskAssigneeBody.java index b2ce81108..0cbed2f18 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/ModelVo.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/model/TaskAssigneeBody.java @@ -1,48 +1,56 @@ -package org.dromara.workflow.domain.vo; +package org.dromara.common.core.domain.model; import lombok.Data; +import lombok.NoArgsConstructor; import java.io.Serial; import java.io.Serializable; /** - * 模型视图对象 + * 任务受让人 * - * @author may + * @author AprilWind */ @Data -public class ModelVo implements Serializable { +@NoArgsConstructor +public class TaskAssigneeBody implements Serializable { @Serial private static final long serialVersionUID = 1L; /** - * 模型id + * 权限编码 */ - private String id; + private String handlerCode; /** - * 模型名称 + * 权限名称 */ - private String name; + private String handlerName; /** - * 模型标识key + * 权限分组 */ - private String key; + private String groupId; /** - * 模型分类 + * 开始时间 */ - private String categoryCode; + private String beginTime; /** - * 模型XML + * 结束时间 */ - private String xml; + private String endTime; /** - * 备注 + * 当前页 */ - private String description; + private Integer pageNum = 1; + + /** + * 每页显示条数 + */ + private Integer pageSize = 10; + } diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/enums/BusinessStatusEnum.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/enums/BusinessStatusEnum.java index 0af943a78..c1660ee93 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/enums/BusinessStatusEnum.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/enums/BusinessStatusEnum.java @@ -7,6 +7,10 @@ import org.dromara.common.core.exception.ServiceException; import org.dromara.common.core.utils.StringUtils; import java.util.Arrays; +import java.util.List; +import java.util.Map; +import java.util.function.Function; +import java.util.stream.Collectors; /** * 业务状态枚举 @@ -16,30 +20,37 @@ import java.util.Arrays; @Getter @AllArgsConstructor public enum BusinessStatusEnum { + /** * 已撤销 */ CANCEL("cancel", "已撤销"), + /** * 草稿 */ DRAFT("draft", "草稿"), + /** * 待审核 */ WAITING("waiting", "待审核"), + /** * 已完成 */ FINISH("finish", "已完成"), + /** * 已作废 */ INVALID("invalid", "已作废"), + /** * 已退回 */ BACK("back", "已退回"), + /** * 已终止 */ @@ -55,20 +66,72 @@ public enum BusinessStatusEnum { */ private final String desc; + private static final Map STATUS_MAP = Arrays.stream(BusinessStatusEnum.values()) + .collect(Collectors.toConcurrentMap(BusinessStatusEnum::getStatus, Function.identity())); + /** - * 获取业务状态 + * 根据状态获取对应的 BusinessStatusEnum 枚举 * - * @param status 状态 + * @param status 业务状态码 + * @return 对应的 BusinessStatusEnum 枚举,如果找不到则返回 null + */ + public static BusinessStatusEnum getByStatus(String status) { + // 使用 STATUS_MAP 获取对应的枚举,若找不到则返回 null + return STATUS_MAP.get(status); + } + + /** + * 根据状态获取对应的业务状态描述信息 + * + * @param status 业务状态码 + * @return 返回业务状态描述,若状态码为空或未找到对应的枚举,返回空字符串 */ public static String findByStatus(String status) { if (StringUtils.isBlank(status)) { return StrUtil.EMPTY; } - return Arrays.stream(BusinessStatusEnum.values()) - .filter(statusEnum -> statusEnum.getStatus().equals(status)) - .findFirst() - .map(BusinessStatusEnum::getDesc) - .orElse(StrUtil.EMPTY); + BusinessStatusEnum statusEnum = STATUS_MAP.get(status); + return (statusEnum != null) ? statusEnum.getDesc() : StrUtil.EMPTY; + } + + /** + * 判断是否为指定的状态之一:草稿、已撤销或已退回 + * + * @param status 要检查的状态 + * @return 如果状态为草稿、已撤销或已退回之一,则返回 true;否则返回 false + */ + public static boolean isDraftOrCancelOrBack(String status) { + return DRAFT.status.equals(status) || CANCEL.status.equals(status) || BACK.status.equals(status); + } + + /** + * 判断是否为撤销,退回,作废,终止 + * + * @param status status + * @return 结果 + */ + public static boolean initialState(String status) { + return CANCEL.status.equals(status) || BACK.status.equals(status) || INVALID.status.equals(status) || TERMINATION.status.equals(status); + } + + /** + * 获取运行中的实例状态列表 + * + * @return 包含运行中实例状态的不可变列表 + * (包含 DRAFT、WAITING、BACK 和 CANCEL 状态) + */ + public static List runningStatus() { + return Arrays.asList(DRAFT.status, WAITING.status, BACK.status, CANCEL.status); + } + + /** + * 获取结束实例的状态列表 + * + * @return 包含结束实例状态的不可变列表 + * (包含 FINISH、INVALID 和 TERMINATION 状态) + */ + public static List finishStatus() { + return Arrays.asList(FINISH.status, INVALID.status, TERMINATION.status); } /** @@ -148,5 +211,5 @@ public enum BusinessStatusEnum { throw new ServiceException("流程状态为空!"); } } -} +} diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/service/TaskAssigneeService.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/service/TaskAssigneeService.java new file mode 100644 index 000000000..9af669111 --- /dev/null +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/service/TaskAssigneeService.java @@ -0,0 +1,45 @@ +package org.dromara.common.core.service; + +import org.dromara.common.core.domain.dto.TaskAssigneeDTO; +import org.dromara.common.core.domain.model.TaskAssigneeBody; + +/** + * 工作流设计器获取任务执行人 + * + * @author Lion Li + */ +public interface TaskAssigneeService { + + /** + * 查询角色并返回任务指派的列表,支持分页 + * + * @param taskQuery 查询条件 + * @return 办理人 + */ + TaskAssigneeDTO selectRolesByTaskAssigneeList(TaskAssigneeBody taskQuery); + + /** + * 查询岗位并返回任务指派的列表,支持分页 + * + * @param taskQuery 查询条件 + * @return 办理人 + */ + TaskAssigneeDTO selectPostsByTaskAssigneeList(TaskAssigneeBody taskQuery); + + /** + * 查询部门并返回任务指派的列表,支持分页 + * + * @param taskQuery 查询条件 + * @return 办理人 + */ + TaskAssigneeDTO selectDeptsByTaskAssigneeList(TaskAssigneeBody taskQuery); + + /** + * 查询用户并返回任务指派的列表,支持分页 + * + * @param taskQuery 查询条件 + * @return 办理人 + */ + TaskAssigneeDTO selectUsersByTaskAssigneeList(TaskAssigneeBody taskQuery); + +} diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/service/WorkflowService.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/service/WorkflowService.java index 4e556c9cb..565362e56 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/service/WorkflowService.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/service/WorkflowService.java @@ -1,5 +1,8 @@ package org.dromara.common.core.service; +import org.dromara.common.core.domain.dto.CompleteTaskDTO; +import org.dromara.common.core.domain.dto.StartProcessDTO; + import java.util.List; import java.util.Map; @@ -13,64 +16,63 @@ public interface WorkflowService { /** * 运行中的实例 删除程实例,删除历史记录,删除业务与流程关联信息 * - * @param businessKeys 业务id + * @param businessIds 业务id * @return 结果 */ - boolean deleteRunAndHisInstance(List businessKeys); + boolean deleteInstance(List businessIds); /** * 获取当前流程状态 * * @param taskId 任务id + * @return 状态 */ - String getBusinessStatusByTaskId(String taskId); + String getBusinessStatusByTaskId(Long taskId); /** * 获取当前流程状态 * - * @param businessKey 业务id + * @param businessId 业务id + * @return 状态 */ - String getBusinessStatus(String businessKey); + String getBusinessStatus(String businessId); /** - * 设置流程变量(全局变量) + * 设置流程变量 * - * @param taskId 任务id - * @param variableName 变量名称 - * @param value 变量值 + * @param instanceId 流程实例id + * @param variable 流程变量 */ - void setVariable(String taskId, String variableName, Object value); + void setVariable(Long instanceId, Map variable); /** - * 设置流程变量(全局变量) + * 按照业务id查询流程实例id * - * @param taskId 任务id - * @param variables 流程变量 + * @param businessId 业务id + * @return 结果 */ - void setVariables(String taskId, Map variables); + Long getInstanceIdByBusinessId(String businessId); /** - * 设置流程变量(本地变量,非全局变量) + * 新增租户流程定义 * - * @param taskId 任务id - * @param variableName 变量名称 - * @param value 变量值 + * @param tenantId 租户id */ - void setVariableLocal(String taskId, String variableName, Object value); + void syncDef(String tenantId); /** - * 设置流程变量(本地变量,非全局变量) + * 启动流程 * - * @param taskId 任务id - * @param variables 流程变量 + * @param startProcess 参数 + * @return 结果 */ - void setVariablesLocal(String taskId, Map variables); + Map startWorkFlow(StartProcessDTO startProcess); /** - * 按照业务id查询流程实例id + * 办理任务 * - * @param businessKey 业务id + * @param completeTask 参数 * @return 结果 */ - String getInstanceIdByBusinessKey(String businessKey); + boolean completeTask(CompleteTaskDTO completeTask); } diff --git a/ruoyi-common/ruoyi-common-satoken/src/main/java/org/dromara/common/satoken/utils/LoginHelper.java b/ruoyi-common/ruoyi-common-satoken/src/main/java/org/dromara/common/satoken/utils/LoginHelper.java index 19557e131..e2c92366f 100644 --- a/ruoyi-common/ruoyi-common-satoken/src/main/java/org/dromara/common/satoken/utils/LoginHelper.java +++ b/ruoyi-common/ruoyi-common-satoken/src/main/java/org/dromara/common/satoken/utils/LoginHelper.java @@ -15,6 +15,7 @@ import org.dromara.common.core.enums.UserType; import java.util.Set; + /** * 登录鉴权助手 *

diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java index 37299804a..6b9e60617 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java +++ b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java @@ -63,7 +63,7 @@ public class GenTableServiceImpl implements IGenTableService { private final GenTableColumnMapper genTableColumnMapper; private final IdentifierGenerator identifierGenerator; - private static final String[] TABLE_IGNORE = new String[]{"sj_", "act_", "flw_", "gen_"}; + private static final String[] TABLE_IGNORE = new String[]{"sj_", "flow_", "gen_"}; /** * 查询业务字段列表 diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysDeptMapper.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysDeptMapper.java index 0f2c90667..b69624cf0 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysDeptMapper.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysDeptMapper.java @@ -3,6 +3,7 @@ package org.dromara.system.mapper; import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Constants; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import org.apache.ibatis.annotations.Param; import org.dromara.common.mybatis.annotation.DataColumn; import org.dromara.common.mybatis.annotation.DataPermission; @@ -31,6 +32,17 @@ public interface SysDeptMapper extends BaseMapperPlus { }) List selectDeptList(@Param(Constants.WRAPPER) Wrapper queryWrapper); + /** + * 分页查询部门管理数据 + * + * @param queryWrapper 查询条件 + * @return 部门信息集合 + */ + @DataPermission({ + @DataColumn(key = "deptName", value = "dept_id"), + }) + Page selectPageDeptList(@Param("page") Page page, @Param(Constants.WRAPPER) Wrapper queryWrapper); + /** * 统计指定部门ID的部门数量 * diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysPostServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysPostServiceImpl.java index 72f1a5e31..5888985a7 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysPostServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysPostServiceImpl.java @@ -245,4 +245,5 @@ public class SysPostServiceImpl implements ISysPostService, PostService { SysPost post = MapstructUtils.convert(bo, SysPost.class); return baseMapper.updateById(post); } + } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysRoleServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysRoleServiceImpl.java index 4c007358e..0a2e485f6 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysRoleServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysRoleServiceImpl.java @@ -548,4 +548,5 @@ public class SysRoleServiceImpl implements ISysRoleService, RoleService { } }); } + } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTaskAssigneeServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTaskAssigneeServiceImpl.java new file mode 100644 index 000000000..23dd0520c --- /dev/null +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTaskAssigneeServiceImpl.java @@ -0,0 +1,168 @@ +package org.dromara.system.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import lombok.RequiredArgsConstructor; +import org.dromara.common.core.constant.SystemConstants; +import org.dromara.common.core.domain.dto.TaskAssigneeDTO; +import org.dromara.common.core.domain.model.TaskAssigneeBody; +import org.dromara.common.core.service.TaskAssigneeService; +import org.dromara.common.core.utils.StreamUtils; +import org.dromara.common.core.utils.StringUtils; +import org.dromara.common.mybatis.core.page.PageQuery; +import org.dromara.system.domain.SysDept; +import org.dromara.system.domain.SysPost; +import org.dromara.system.domain.SysRole; +import org.dromara.system.domain.SysUser; +import org.dromara.system.domain.vo.SysDeptVo; +import org.dromara.system.domain.vo.SysPostVo; +import org.dromara.system.domain.vo.SysRoleVo; +import org.dromara.system.domain.vo.SysUserVo; +import org.dromara.system.mapper.SysDeptMapper; +import org.dromara.system.mapper.SysPostMapper; +import org.dromara.system.mapper.SysRoleMapper; +import org.dromara.system.mapper.SysUserMapper; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 工作流设计器获取任务执行人 + * + * @author Lion Li + */ +@RequiredArgsConstructor +@Service +public class SysTaskAssigneeServiceImpl implements TaskAssigneeService { + + private final SysPostMapper postMapper; + private final SysDeptMapper deptMapper; + private final SysUserMapper userMapper; + private final SysRoleMapper roleMapper; + + /** + * 查询角色并返回任务指派的列表,支持分页 + * + * @param taskQuery 查询条件 + * @return 办理人 + */ + @Override + public TaskAssigneeDTO selectRolesByTaskAssigneeList(TaskAssigneeBody taskQuery) { + PageQuery pageQuery = new PageQuery(taskQuery.getPageSize(), taskQuery.getPageNum()); + QueryWrapper wrapper = Wrappers.query(); + wrapper.eq("r.del_flag", SystemConstants.NORMAL) + .like(StringUtils.isNotBlank(taskQuery.getHandlerCode()), "r.role_name", taskQuery.getHandlerCode()) + .like(StringUtils.isNotBlank(taskQuery.getHandlerName()), "r.role_key", taskQuery.getHandlerName()) + .between(StringUtils.isNotBlank(taskQuery.getBeginTime()) && StringUtils.isNotBlank(taskQuery.getEndTime()), + "r.create_time", taskQuery.getBeginTime(), taskQuery.getEndTime()) + .orderByAsc("r.role_sort").orderByAsc("r.create_time"); + Page page = roleMapper.selectPageRoleList(pageQuery.build(), wrapper); + // 使用封装的字段映射方法进行转换 + List handlers = TaskAssigneeDTO.convertToHandlerList(page.getRecords(), + SysRoleVo::getRoleId, SysRoleVo::getRoleKey, SysRoleVo::getRoleName, null, SysRoleVo::getCreateTime); + return new TaskAssigneeDTO(page.getTotal(), handlers); + } + + /** + * 查询岗位并返回任务指派的列表,支持分页 + * + * @param taskQuery 查询条件 + * @return 办理人 + */ + @Override + public TaskAssigneeDTO selectPostsByTaskAssigneeList(TaskAssigneeBody taskQuery) { + PageQuery pageQuery = new PageQuery(taskQuery.getPageSize(), taskQuery.getPageNum()); + LambdaQueryWrapper wrapper = Wrappers.lambdaQuery() + .like(StringUtils.isNotBlank(taskQuery.getHandlerCode()), SysPost::getPostCategory, taskQuery.getHandlerCode()) + .like(StringUtils.isNotBlank(taskQuery.getHandlerName()), SysPost::getPostName, taskQuery.getHandlerName()) + .between(StringUtils.isNotBlank(taskQuery.getBeginTime()) && StringUtils.isNotBlank(taskQuery.getEndTime()), + SysPost::getCreateTime, taskQuery.getBeginTime(), taskQuery.getEndTime()); + if (StringUtils.isNotBlank(taskQuery.getGroupId())) { + Long belongDeptId = Long.valueOf(taskQuery.getGroupId()); + wrapper.and(x -> { + List deptList = deptMapper.selectListByParentId(belongDeptId); + List deptIds = StreamUtils.toList(deptList, SysDept::getDeptId); + deptIds.add(belongDeptId); + x.in(SysPost::getDeptId, deptIds); + }); + } + Page page = postMapper.selectPagePostList(pageQuery.build(), wrapper); + // 使用封装的字段映射方法进行转换 + List handlers = TaskAssigneeDTO.convertToHandlerList(page.getRecords(), + SysPostVo::getPostId, SysPostVo::getPostCategory, SysPostVo::getPostName, SysPostVo::getDeptId, SysPostVo::getCreateTime); + return new TaskAssigneeDTO(page.getTotal(), handlers); + } + + /** + * 查询部门并返回任务指派的列表,支持分页 + * + * @param taskQuery 查询条件 + * @return 办理人 + */ + @Override + public TaskAssigneeDTO selectDeptsByTaskAssigneeList(TaskAssigneeBody taskQuery) { + PageQuery pageQuery = new PageQuery(taskQuery.getPageSize(), taskQuery.getPageNum()); + LambdaQueryWrapper wrapper = Wrappers.lambdaQuery() + .eq(SysDept::getDelFlag, SystemConstants.NORMAL) + .like(StringUtils.isNotBlank(taskQuery.getHandlerCode()), SysDept::getDeptCategory, taskQuery.getHandlerCode()) + .like(StringUtils.isNotBlank(taskQuery.getHandlerName()), SysDept::getDeptName, taskQuery.getHandlerName()) + .between(StringUtils.isNotBlank(taskQuery.getBeginTime()) && StringUtils.isNotBlank(taskQuery.getEndTime()), + SysDept::getCreateTime, taskQuery.getBeginTime(), taskQuery.getEndTime()) + .orderByAsc(SysDept::getAncestors) + .orderByAsc(SysDept::getParentId) + .orderByAsc(SysDept::getOrderNum) + .orderByAsc(SysDept::getDeptId); + if (StringUtils.isNotBlank(taskQuery.getGroupId())) { + //部门树搜索 + wrapper.and(x -> { + Long parentId = Long.valueOf(taskQuery.getGroupId()); + List deptList = deptMapper.selectListByParentId(parentId); + List deptIds = StreamUtils.toList(deptList, SysDept::getDeptId); + deptIds.add(parentId); + x.in(SysDept::getDeptId, deptIds); + }); + } + Page page = deptMapper.selectPageDeptList(pageQuery.build(), wrapper); + // 使用封装的字段映射方法进行转换 + List handlers = TaskAssigneeDTO.convertToHandlerList(page.getRecords(), + SysDeptVo::getDeptId, SysDeptVo::getDeptCategory, SysDeptVo::getDeptName, SysDeptVo::getParentId, SysDeptVo::getCreateTime); + return new TaskAssigneeDTO(page.getTotal(), handlers); + } + + + /** + * 查询用户并返回任务指派的列表,支持分页 + * + * @param taskQuery 查询条件 + * @return 办理人 + */ + @Override + public TaskAssigneeDTO selectUsersByTaskAssigneeList(TaskAssigneeBody taskQuery) { + PageQuery pageQuery = new PageQuery(taskQuery.getPageSize(), taskQuery.getPageNum()); + QueryWrapper wrapper = Wrappers.query(); + wrapper.eq("u.del_flag", SystemConstants.NORMAL) + .like(StringUtils.isNotBlank(taskQuery.getHandlerCode()), "u.user_name", taskQuery.getHandlerCode()) + .like(StringUtils.isNotBlank(taskQuery.getHandlerName()), "u.nick_name", taskQuery.getHandlerName()) + .between(taskQuery.getBeginTime() != null && taskQuery.getEndTime() != null, + "u.create_time", taskQuery.getBeginTime(), taskQuery.getEndTime()) + .orderByAsc("u.user_id"); + if (StringUtils.isNotBlank(taskQuery.getGroupId())) { + //部门树搜索 + wrapper.and(x -> { + Long parentId = Long.valueOf(taskQuery.getGroupId()); + List deptList = deptMapper.selectListByParentId(parentId); + List deptIds = StreamUtils.toList(deptList, SysDept::getDeptId); + deptIds.add(parentId); + x.in("u.dept_id", deptIds); + }); + } + Page page = userMapper.selectPageUserList(pageQuery.build(), wrapper); + // 使用封装的字段映射方法进行转换 + List handlers = TaskAssigneeDTO.convertToHandlerList(page.getRecords(), + SysUserVo::getUserId, SysUserVo::getUserName, SysUserVo::getNickName, SysUserVo::getDeptId, SysUserVo::getCreateTime); + return new TaskAssigneeDTO(page.getTotal(), handlers); + } + +} diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java index 7bfe989b9..856dabba5 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java @@ -15,6 +15,7 @@ import org.dromara.common.core.constant.Constants; import org.dromara.common.core.constant.SystemConstants; import org.dromara.common.core.constant.TenantConstants; import org.dromara.common.core.exception.ServiceException; +import org.dromara.common.core.service.WorkflowService; import org.dromara.common.core.utils.MapstructUtils; import org.dromara.common.core.utils.SpringUtils; import org.dromara.common.core.utils.StreamUtils; @@ -56,6 +57,7 @@ public class SysTenantServiceImpl implements ISysTenantService { private final SysDictTypeMapper dictTypeMapper; private final SysDictDataMapper dictDataMapper; private final SysConfigMapper configMapper; + private final WorkflowService workflowService; /** * 查询租户 @@ -121,7 +123,9 @@ public class SysTenantServiceImpl implements ISysTenantService { // 获取所有租户编号 List tenantIds = baseMapper.selectObjs( - new LambdaQueryWrapper().select(SysTenant::getTenantId), x -> {return Convert.toStr(x);}); + new LambdaQueryWrapper().select(SysTenant::getTenantId), x -> { + return Convert.toStr(x); + }); String tenantId = generateTenantId(tenantIds); add.setTenantId(tenantId); boolean flag = baseMapper.insert(add) > 0; @@ -191,6 +195,8 @@ public class SysTenantServiceImpl implements ISysTenantService { config.setTenantId(tenantId); } configMapper.insertBatch(sysConfigList); + //新增租户流程定义 + workflowService.syncDef(tenantId); return true; } @@ -399,7 +405,9 @@ public class SysTenantServiceImpl implements ISysTenantService { // 获取所有租户编号 List tenantIds = baseMapper.selectObjs( new LambdaQueryWrapper().select(SysTenant::getTenantId) - .eq(SysTenant::getStatus, SystemConstants.NORMAL), x -> {return Convert.toStr(x);}); + .eq(SysTenant::getStatus, SystemConstants.NORMAL), x -> { + return Convert.toStr(x); + }); List saveTypeList = new ArrayList<>(); List saveDataList = new ArrayList<>(); Set set = new HashSet<>(); diff --git a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysDeptMapper.xml b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysDeptMapper.xml index 6ad866f29..9057a0e22 100644 --- a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysDeptMapper.xml +++ b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysDeptMapper.xml @@ -18,6 +18,17 @@ from sys_dept ${ew.getCustomSqlSegment} + + diff --git a/ruoyi-modules/ruoyi-workflow/pom.xml b/ruoyi-modules/ruoyi-workflow/pom.xml index e55839ef7..d195fafa3 100644 --- a/ruoyi-modules/ruoyi-workflow/pom.xml +++ b/ruoyi-modules/ruoyi-workflow/pom.xml @@ -18,57 +18,14 @@ - - org.flowable - flowable-spring-boot-autoconfigure - - - org.flowable - flowable-spring-security - - - - - - org.flowable - flowable-spring-configurator - - - - org.flowable - flowable-spring-boot-starter-actuator - - - - - org.flowable - flowable-image-generator - - - - - org.flowable - flowable-json-converter - 6.8.0 - - - - - org.apache.xmlgraphics - batik-all - 1.17 - - - xalan - xalan - - + org.dromara + ruoyi-common-sse org.dromara - ruoyi-common-websocket + ruoyi-common-doc @@ -113,6 +70,14 @@ org.dromara ruoyi-common-security + + org.dromara.warm + warm-flow-mybatis-plus-sb3-starter + + + org.dromara.warm + warm-flow-plugin-ui-sb-web + diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/constant/FlowConstant.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/constant/FlowConstant.java index c3fcafa87..1b10eb8ea 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/constant/FlowConstant.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/constant/FlowConstant.java @@ -8,83 +8,6 @@ package org.dromara.workflow.common.constant; */ public interface FlowConstant { - String MESSAGE_CURRENT_TASK_IS_NULL = "当前任务不存在或你不是任务办理人!"; - - String MESSAGE_SUSPENDED = "当前任务已挂起不可审批!"; - - /** - * 连线 - */ - String SEQUENCE_FLOW = "sequenceFlow"; - - /** - * 并行网关 - */ - String PARALLEL_GATEWAY = "parallelGateway"; - - /** - * 排它网关 - */ - String EXCLUSIVE_GATEWAY = "exclusiveGateway"; - - /** - * 包含网关 - */ - String INCLUSIVE_GATEWAY = "inclusiveGateway"; - - /** - * 结束节点 - */ - String END_EVENT = "endEvent"; - - - /** - * 流程委派标识 - */ - String PENDING = "PENDING"; - - /** - * 候选人标识 - */ - String CANDIDATE = "candidate"; - - /** - * 会签任务总数 - */ - String NUMBER_OF_INSTANCES = "nrOfInstances"; - - /** - * 正在执行的会签总数 - */ - String NUMBER_OF_ACTIVE_INSTANCES = "nrOfActiveInstances"; - - /** - * 已完成的会签任务总数 - */ - String NUMBER_OF_COMPLETED_INSTANCES = "nrOfCompletedInstances"; - - /** - * 循环的索引值,可以使用elementIndexVariable属性修改loopCounter的变量名 - */ - String LOOP_COUNTER = "loopCounter"; - - String ZIP = "ZIP"; - - /** - * 业务与流程实例关联对象 - */ - String BUSINESS_INSTANCE_DTO = "businessInstanceDTO"; - - /** - * 流程定义配置 - */ - String WF_DEFINITION_CONFIG_VO = "wfDefinitionConfigVo"; - - /** - * 节点配置 - */ - String WF_NODE_CONFIG_VO = "wfNodeConfigVo"; - /** * 流程发起人 */ @@ -98,40 +21,46 @@ public interface FlowConstant { /** * 业务id */ - String BUSINESS_KEY = "businessKey"; + String BUSINESS_ID = "businessId"; + + /** + * 任务id + */ + String TASK_ID = "taskId"; /** - * 流程定义id + * 委托 */ - String PROCESS_DEFINITION_ID = "processDefinitionId"; + String DELEGATE_TASK = "delegateTask"; /** - * 开启跳过表达式变量 + * 转办 */ - String FLOWABLE_SKIP_EXPRESSION_ENABLED = "_FLOWABLE_SKIP_EXPRESSION_ENABLED"; + String TRANSFER_TASK = "transferTask"; /** - * 模型标识key命名规范正则表达式 + * 加签 */ - String MODEL_KEY_PATTERN = "^[a-zA-Z][a-zA-Z0-9_]{0,254}$"; + String ADD_SIGNATURE = "addSignature"; /** - * 用户任务 + * 减签 */ - String USER_TASK = "userTask"; + String REDUCTION_SIGNATURE = "reductionSignature"; /** - * 会签 + * 流程分类Id转名称 */ - String MULTI_INSTANCE = "multiInstance"; + String CATEGORY_ID_TO_NAME = "category_id_to_name"; /** - * 是 + * 流程分类名称 */ - String TRUE = "0"; + String FLOW_CATEGORY_NAME = "flow_category_name#30d"; /** - * 否 + * 默认租户OA申请分类id */ - String FALSE = "1"; + Long FLOW_CATEGORY_ID = 100L; + } diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/enums/FormTypeEnum.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/enums/FormTypeEnum.java deleted file mode 100644 index 083ab7b85..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/enums/FormTypeEnum.java +++ /dev/null @@ -1,54 +0,0 @@ -package org.dromara.workflow.common.enums; - -import cn.hutool.core.util.StrUtil; -import lombok.AllArgsConstructor; -import lombok.Getter; -import org.apache.commons.lang3.StringUtils; - -import java.util.Arrays; - -/** - * 任务状态枚举 - * - * @author may - */ -@Getter -@AllArgsConstructor -public enum FormTypeEnum { - /** - * 自定义表单 - */ - STATIC("static", "自定义表单"), - /** - * 动态表单 - */ - DYNAMIC("dynamic", "动态表单"); - - /** - * 类型 - */ - private final String type; - - /** - * 描述 - */ - private final String desc; - - /** - * 表单类型 - * - * @param formType 表单类型 - */ - public static String findByType(String formType) { - if (StringUtils.isBlank(formType)) { - return StrUtil.EMPTY; - } - - return Arrays.stream(FormTypeEnum.values()) - .filter(statusEnum -> statusEnum.getType().equals(formType)) - .findFirst() - .map(FormTypeEnum::getDesc) - .orElse(StrUtil.EMPTY); - } -} - diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/enums/MessageTypeEnum.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/enums/MessageTypeEnum.java index a28295822..0fe5cfe90 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/enums/MessageTypeEnum.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/enums/MessageTypeEnum.java @@ -3,8 +3,10 @@ package org.dromara.workflow.common.enums; import lombok.AllArgsConstructor; import lombok.Getter; +import java.util.Arrays; import java.util.Map; -import java.util.concurrent.ConcurrentHashMap; +import java.util.function.Function; +import java.util.stream.Collectors; /** * 消息类型枚举 @@ -14,14 +16,17 @@ import java.util.concurrent.ConcurrentHashMap; @Getter @AllArgsConstructor public enum MessageTypeEnum { + /** * 站内信 */ SYSTEM_MESSAGE("1", "站内信"), + /** * 邮箱 */ EMAIL_MESSAGE("2", "邮箱"), + /** * 短信 */ @@ -31,21 +36,18 @@ public enum MessageTypeEnum { private final String desc; - private final static Map MESSAGE_TYPE_ENUM_MAP = new ConcurrentHashMap<>(MessageTypeEnum.values().length); - - static { - for (MessageTypeEnum messageType : MessageTypeEnum.values()) { - MESSAGE_TYPE_ENUM_MAP.put(messageType.code, messageType); - } - } + private static final Map MESSAGE_TYPE_ENUM_MAP = Arrays.stream(values()) + .collect(Collectors.toConcurrentMap(MessageTypeEnum::getCode, Function.identity())); /** * 根据消息类型 code 获取 MessageTypeEnum + * * @param code 消息类型code * @return MessageTypeEnum */ public static MessageTypeEnum getByCode(String code) { - return MESSAGE_TYPE_ENUM_MAP.get(code); + return MESSAGE_TYPE_ENUM_MAP.getOrDefault(code, null); } + } diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/enums/TaskAssigneeEnum.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/enums/TaskAssigneeEnum.java new file mode 100644 index 000000000..60be92fe9 --- /dev/null +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/enums/TaskAssigneeEnum.java @@ -0,0 +1,109 @@ +package org.dromara.workflow.common.enums; + +import lombok.AllArgsConstructor; +import lombok.Getter; +import org.dromara.common.core.exception.ServiceException; + +import java.util.Arrays; +import java.util.List; +import java.util.stream.Collectors; + +/** + * 任务分配人枚举 + * + * @author AprilWind + */ +@Getter +@AllArgsConstructor +public enum TaskAssigneeEnum { + + /** + * 用户 + */ + USER("用户", ""), + + /** + * 角色 + */ + ROLE("角色", "role:"), + + /** + * 部门 + */ + DEPT("部门", "dept:"), + + /** + * 岗位 + */ + POST("岗位", "post:"); + + private final String desc; + private final String code; + + /** + * 根据描述获取对应的枚举类型 + *

+ * 通过传入描述,查找并返回匹配的枚举项。如果未找到匹配项,会抛出 {@link ServiceException}。 + *

+ * + * @param desc 描述,用于匹配对应的枚举项 + * @return TaskAssigneeEnum 返回对应的枚举类型 + * @throws ServiceException 如果未找到匹配的枚举项 + */ + public static TaskAssigneeEnum fromDesc(String desc) { + for (TaskAssigneeEnum type : values()) { + if (type.getDesc().equals(desc)) { + return type; + } + } + throw new ServiceException("未知的办理人类型: " + desc); + } + + /** + * 根据代码获取对应的枚举类型 + *

+ * 通过传入代码,查找并返回匹配的枚举项。如果未找到匹配项,会抛出 {@link ServiceException}。 + *

+ * + * @param code 代码,用于匹配对应的枚举项 + * @return TaskAssigneeEnum 返回对应的枚举类型 + * @throws IllegalArgumentException 如果未找到匹配的枚举项 + */ + public static TaskAssigneeEnum fromCode(String code) { + for (TaskAssigneeEnum type : values()) { + if (type.getCode().equals(code)) { + return type; + } + } + throw new ServiceException("未知的办理人类型代码: " + code); + } + + /** + * 获取所有办理人类型的描述列表 + *

+ * 获取当前枚举类所有项的描述字段列表,通常用于展示选择项。 + *

+ * + * @return List 返回所有办理人类型的描述列表 + */ + public static List getAssigneeTypeList() { + return Arrays.stream(values()) + .map(TaskAssigneeEnum::getDesc) + .collect(Collectors.toList()); + } + + /** + * 获取所有办理人类型的代码列表 + *

+ * 获取当前枚举类所有项的代码字段列表,通常用于程序内部逻辑的判断。 + *

+ * + * @return List 返回所有办理人类型的代码列表 + */ + public static List getAssigneeCodeList() { + return Arrays.stream(values()) + .map(TaskAssigneeEnum::getCode) + .collect(Collectors.toList()); + } +} + diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/enums/TaskAssigneeType.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/enums/TaskAssigneeType.java new file mode 100644 index 000000000..eed1b91fb --- /dev/null +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/enums/TaskAssigneeType.java @@ -0,0 +1,49 @@ +package org.dromara.workflow.common.enums; + +import lombok.AllArgsConstructor; +import lombok.Getter; + +/** + * 人员类型 + * + * @author AprilWind + */ +@Getter +@AllArgsConstructor +public enum TaskAssigneeType { + + /** + * 待办任务的审批人权限 + *

该权限表示用户是待办任务的审批人,负责审核任务的执行情况。

+ */ + APPROVER("1", "待办任务的审批人权限"), + + /** + * 待办任务的转办人权限 + *

该权限表示用户是待办任务的转办人,负责将任务分配给其他人员。

+ */ + TRANSFER("2", "待办任务的转办人权限"), + + /** + * 待办任务的委托人权限 + *

该权限表示用户是待办任务的委托人,能够委托其他人代为处理任务。

+ */ + DELEGATE("3", "待办任务的委托人权限"), + + /** + * 待办任务的抄送人权限 + *

该权限表示用户是待办任务的抄送人,仅接收任务信息的通知,不参与任务的审批或处理。

+ */ + COPY("4", "待办任务的抄送人权限"); + + /** + * 类型 + */ + private final String code; + + /** + * 描述 + */ + private final String description; + +} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/enums/TaskStatusEnum.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/enums/TaskStatusEnum.java index 7b2f55c20..d18ebb01d 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/enums/TaskStatusEnum.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/enums/TaskStatusEnum.java @@ -3,9 +3,10 @@ package org.dromara.workflow.common.enums; import cn.hutool.core.util.StrUtil; import lombok.AllArgsConstructor; import lombok.Getter; -import org.apache.commons.lang3.StringUtils; import java.util.Arrays; +import java.util.Map; +import java.util.stream.Collectors; /** * 任务状态枚举 @@ -15,50 +16,62 @@ import java.util.Arrays; @Getter @AllArgsConstructor public enum TaskStatusEnum { + /** * 撤销 */ CANCEL("cancel", "撤销"), + /** * 通过 */ PASS("pass", "通过"), + /** * 待审核 */ WAITING("waiting", "待审核"), + /** * 作废 */ INVALID("invalid", "作废"), + /** * 退回 */ BACK("back", "退回"), + /** * 终止 */ TERMINATION("termination", "终止"), + /** * 转办 */ TRANSFER("transfer", "转办"), + /** * 委托 */ - PENDING("pending", "委托"), + DEPUTE("depute", "委托"), + /** * 抄送 */ COPY("copy", "抄送"), + /** * 加签 */ SIGN("sign", "加签"), + /** * 减签 */ SIGN_OFF("sign_off", "减签"), + /** * 超时 */ @@ -74,21 +87,18 @@ public enum TaskStatusEnum { */ private final String desc; + private static final Map STATUS_DESC_MAP = Arrays.stream(values()) + .collect(Collectors.toConcurrentMap(TaskStatusEnum::getStatus, TaskStatusEnum::getDesc)); + /** * 任务业务状态 * * @param status 状态 */ public static String findByStatus(String status) { - if (StringUtils.isBlank(status)) { - return StrUtil.EMPTY; - } - - return Arrays.stream(TaskStatusEnum.values()) - .filter(statusEnum -> statusEnum.getStatus().equals(status)) - .findFirst() - .map(TaskStatusEnum::getDesc) - .orElse(StrUtil.EMPTY); + // 从缓存中直接获取描述 + return STATUS_DESC_MAP.getOrDefault(status, StrUtil.EMPTY); } + } diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/config/WarmFlowConfig.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/config/WarmFlowConfig.java new file mode 100644 index 000000000..a38c83e27 --- /dev/null +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/config/WarmFlowConfig.java @@ -0,0 +1,15 @@ +package org.dromara.workflow.config; + + +import org.springframework.context.annotation.Configuration; + +/** + * warmFlow配置 + * + * @author may + */ +@Configuration +public class WarmFlowConfig { + +} + diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/ActModelController.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/ActModelController.java deleted file mode 100644 index 842d3d667..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/ActModelController.java +++ /dev/null @@ -1,148 +0,0 @@ -package org.dromara.workflow.controller; - -import jakarta.servlet.http.HttpServletResponse; -import jakarta.validation.constraints.NotBlank; -import jakarta.validation.constraints.NotEmpty; -import lombok.RequiredArgsConstructor; -import org.dromara.common.core.domain.R; -import org.dromara.common.core.validate.AddGroup; -import org.dromara.common.core.validate.EditGroup; -import org.dromara.common.idempotent.annotation.RepeatSubmit; -import org.dromara.common.log.annotation.Log; -import org.dromara.common.log.enums.BusinessType; -import org.dromara.common.mybatis.core.page.PageQuery; -import org.dromara.common.mybatis.core.page.TableDataInfo; -import org.dromara.common.web.core.BaseController; -import org.dromara.workflow.domain.bo.ModelBo; -import org.dromara.workflow.domain.vo.ModelVo; -import org.dromara.workflow.service.IActModelService; -import org.flowable.engine.RepositoryService; -import org.flowable.engine.repository.Model; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.transaction.annotation.Transactional; -import org.springframework.validation.annotation.Validated; -import org.springframework.web.bind.annotation.*; - -import java.util.Arrays; -import java.util.List; - -/** - * 模型管理 控制层 - * - * @author may - */ -@Validated -@RequiredArgsConstructor -@RestController -@RequestMapping("/workflow/model") -public class ActModelController extends BaseController { - - @Autowired(required = false) - private RepositoryService repositoryService; - private final IActModelService actModelService; - - - /** - * 分页查询模型 - * - * @param modelBo 模型参数 - */ - @GetMapping("/list") - public TableDataInfo page(ModelBo modelBo, PageQuery pageQuery) { - return actModelService.page(modelBo, pageQuery); - } - - /** - * 新增模型 - * - * @param modelBo 模型请求对象 - */ - @Log(title = "模型管理", businessType = BusinessType.INSERT) - @RepeatSubmit() - @PostMapping("/save") - public R saveNewModel(@Validated(AddGroup.class) @RequestBody ModelBo modelBo) { - return toAjax(actModelService.saveNewModel(modelBo)); - } - - /** - * 查询模型 - * - * @param id 模型id - */ - @GetMapping("/getInfo/{id}") - public R getInfo(@NotBlank(message = "模型id不能为空") @PathVariable String id) { - return R.ok(actModelService.getInfo(id)); - } - - /** - * 修改模型信息 - * - * @param modelBo 模型数据 - */ - @Log(title = "模型管理", businessType = BusinessType.UPDATE) - @RepeatSubmit() - @PutMapping(value = "/update") - public R update(@RequestBody ModelBo modelBo) { - return toAjax(actModelService.update(modelBo)); - } - - /** - * 编辑XMl模型 - * - * @param modelBo 模型数据 - */ - @Log(title = "模型管理", businessType = BusinessType.UPDATE) - @RepeatSubmit() - @PutMapping(value = "/editModelXml") - public R editModel(@Validated(EditGroup.class) @RequestBody ModelBo modelBo) { - return toAjax(actModelService.editModelXml(modelBo)); - } - - /** - * 删除流程模型 - * - * @param ids 模型id - */ - @Log(title = "模型管理", businessType = BusinessType.DELETE) - @RepeatSubmit() - @DeleteMapping("/{ids}") - @Transactional(rollbackFor = Exception.class) - public R delete(@NotEmpty(message = "主键不能为空") @PathVariable String[] ids) { - Arrays.stream(ids).parallel().forEachOrdered(repositoryService::deleteModel); - return R.ok(); - } - - /** - * 模型部署 - * - * @param id 模型id - */ - @Log(title = "模型管理", businessType = BusinessType.INSERT) - @RepeatSubmit() - @PostMapping("/modelDeploy/{id}") - public R deploy(@NotBlank(message = "模型id不能为空") @PathVariable("id") String id) { - return toAjax(actModelService.modelDeploy(id)); - } - - /** - * 导出模型zip压缩包 - * - * @param modelIds 模型id - * @param response 相应 - */ - @GetMapping("/export/zip/{modelIds}") - public void exportZip(@NotEmpty(message = "模型id不能为空") @PathVariable List modelIds, - HttpServletResponse response) { - actModelService.exportZip(modelIds, response); - } - - /** - * 复制模型 - * - * @param modelBo 模型数据 - */ - @PostMapping("/copyModel") - public R copyModel(@RequestBody ModelBo modelBo) { - return toAjax(actModelService.copyModel(modelBo)); - } -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/ActProcessDefinitionController.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/ActProcessDefinitionController.java deleted file mode 100644 index 5198bd164..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/ActProcessDefinitionController.java +++ /dev/null @@ -1,147 +0,0 @@ -package org.dromara.workflow.controller; - -import jakarta.validation.constraints.NotBlank; -import jakarta.validation.constraints.NotEmpty; -import jakarta.validation.constraints.NotNull; -import lombok.RequiredArgsConstructor; -import org.dromara.common.core.domain.R; -import org.dromara.common.idempotent.annotation.RepeatSubmit; -import org.dromara.common.log.annotation.Log; -import org.dromara.common.log.enums.BusinessType; -import org.dromara.common.mybatis.core.page.PageQuery; -import org.dromara.common.mybatis.core.page.TableDataInfo; -import org.dromara.common.web.core.BaseController; -import org.dromara.workflow.domain.bo.ProcessDefinitionBo; -import org.dromara.workflow.domain.vo.ProcessDefinitionVo; -import org.dromara.workflow.service.IActProcessDefinitionService; -import org.springframework.validation.annotation.Validated; -import org.springframework.web.bind.annotation.*; -import org.springframework.web.multipart.MultipartFile; - -import java.util.Arrays; -import java.util.HashMap; -import java.util.List; -import java.util.Map; - - -/** - * 流程定义管理 控制层 - * - * @author may - */ -@Validated -@RequiredArgsConstructor -@RestController -@RequestMapping("/workflow/processDefinition") -public class ActProcessDefinitionController extends BaseController { - - private final IActProcessDefinitionService actProcessDefinitionService; - - /** - * 分页查询 - * - * @param bo 参数 - */ - @GetMapping("/list") - public TableDataInfo page(ProcessDefinitionBo bo, PageQuery pageQuery) { - return actProcessDefinitionService.page(bo, pageQuery); - } - - /** - * 查询历史流程定义列表 - * - * @param key 流程定义key - */ - @GetMapping("/getListByKey/{key}") - public R> getListByKey(@NotEmpty(message = "流程定义key不能为空") @PathVariable String key) { - return R.ok("操作成功", actProcessDefinitionService.getListByKey(key)); - } - - /** - * 查看流程定义图片 - * - * @param processDefinitionId 流程定义id - */ - @GetMapping("/definitionImage/{processDefinitionId}") - public R definitionImage(@PathVariable String processDefinitionId) { - return R.ok("操作成功", actProcessDefinitionService.definitionImage(processDefinitionId)); - } - - /** - * 查看流程定义xml文件 - * - * @param processDefinitionId 流程定义id - */ - @GetMapping("/definitionXml/{processDefinitionId}") - public R> definitionXml(@NotBlank(message = "流程定义id不能为空") @PathVariable String processDefinitionId) { - Map map = new HashMap<>(); - String xmlStr = actProcessDefinitionService.definitionXml(processDefinitionId); - map.put("xml", Arrays.asList(xmlStr.split("\n"))); - map.put("xmlStr", xmlStr); - return R.ok(map); - } - - /** - * 删除流程定义 - * - * @param deploymentIds 部署id - * @param processDefinitionIds 流程定义id - */ - @Log(title = "流程定义管理", businessType = BusinessType.DELETE) - @DeleteMapping("/{deploymentIds}/{processDefinitionIds}") - public R deleteDeployment(@NotNull(message = "流程部署id不能为空") @PathVariable List deploymentIds, - @NotNull(message = "流程定义id不能为空") @PathVariable List processDefinitionIds) { - return toAjax(actProcessDefinitionService.deleteDeployment(deploymentIds, processDefinitionIds)); - } - - /** - * 激活或者挂起流程定义 - * - * @param processDefinitionId 流程定义id - */ - @Log(title = "流程定义管理", businessType = BusinessType.UPDATE) - @RepeatSubmit() - @PutMapping("/updateDefinitionState/{processDefinitionId}") - public R updateDefinitionState(@NotBlank(message = "流程定义id不能为空") @PathVariable String processDefinitionId) { - return toAjax(actProcessDefinitionService.updateDefinitionState(processDefinitionId)); - } - - /** - * 迁移流程定义 - * - * @param currentProcessDefinitionId 当前流程定义id - * @param fromProcessDefinitionId 需要迁移到的流程定义id - */ - @Log(title = "流程定义管理", businessType = BusinessType.UPDATE) - @RepeatSubmit() - @PutMapping("/migrationDefinition/{currentProcessDefinitionId}/{fromProcessDefinitionId}") - public R migrationDefinition(@NotBlank(message = "当前流程定义id") @PathVariable String currentProcessDefinitionId, - @NotBlank(message = "需要迁移到的流程定义id") @PathVariable String fromProcessDefinitionId) { - return toAjax(actProcessDefinitionService.migrationDefinition(currentProcessDefinitionId, fromProcessDefinitionId)); - } - - /** - * 流程定义转换为模型 - * - * @param processDefinitionId 流程定义id - */ - @Log(title = "流程定义管理", businessType = BusinessType.UPDATE) - @RepeatSubmit() - @PutMapping("/convertToModel/{processDefinitionId}") - public R convertToModel(@NotEmpty(message = "流程定义id不能为空") @PathVariable String processDefinitionId) { - return toAjax(actProcessDefinitionService.convertToModel(processDefinitionId)); - } - - /** - * 通过zip或xml部署流程定义 - * - * @param file 文件 - * @param categoryCode 分类 - */ - @Log(title = "流程定义管理", businessType = BusinessType.INSERT) - @PostMapping("/deployByFile") - public void deployByFile(@RequestParam("file") MultipartFile file, @RequestParam("categoryCode") String categoryCode) { - actProcessDefinitionService.deployByFile(file, categoryCode); - } - -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/ActProcessInstanceController.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/ActProcessInstanceController.java deleted file mode 100644 index 931b9f568..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/ActProcessInstanceController.java +++ /dev/null @@ -1,160 +0,0 @@ -package org.dromara.workflow.controller; - -import jakarta.validation.constraints.NotBlank; -import jakarta.validation.constraints.NotNull; -import lombok.RequiredArgsConstructor; -import org.dromara.common.core.domain.R; -import org.dromara.common.core.validate.AddGroup; -import org.dromara.common.idempotent.annotation.RepeatSubmit; -import org.dromara.common.log.annotation.Log; -import org.dromara.common.log.enums.BusinessType; -import org.dromara.common.mybatis.core.page.PageQuery; -import org.dromara.common.mybatis.core.page.TableDataInfo; -import org.dromara.common.web.core.BaseController; -import org.dromara.workflow.domain.bo.ProcessInstanceBo; -import org.dromara.workflow.domain.bo.ProcessInvalidBo; -import org.dromara.workflow.domain.bo.TaskUrgingBo; -import org.dromara.workflow.domain.vo.ActHistoryInfoVo; -import org.dromara.workflow.domain.vo.ProcessInstanceVo; -import org.dromara.workflow.service.IActProcessInstanceService; -import org.springframework.validation.annotation.Validated; -import org.springframework.web.bind.annotation.*; - -import java.util.Arrays; -import java.util.List; -import java.util.Map; - -/** - * 流程实例管理 控制层 - * - * @author may - */ -@Validated -@RequiredArgsConstructor -@RestController -@RequestMapping("/workflow/processInstance") -public class ActProcessInstanceController extends BaseController { - - private final IActProcessInstanceService actProcessInstanceService; - - /** - * 分页查询正在运行的流程实例 - * - * @param bo 参数 - */ - @GetMapping("/getPageByRunning") - public TableDataInfo getPageByRunning(ProcessInstanceBo bo, PageQuery pageQuery) { - return actProcessInstanceService.getPageByRunning(bo, pageQuery); - } - - /** - * 分页查询已结束的流程实例 - * - * @param bo 参数 - */ - @GetMapping("/getPageByFinish") - public TableDataInfo getPageByFinish(ProcessInstanceBo bo, PageQuery pageQuery) { - return actProcessInstanceService.getPageByFinish(bo, pageQuery); - } - - /** - * 通过业务id获取历史流程图 - * - * @param businessKey 业务id - */ - @GetMapping("/getHistoryImage/{businessKey}") - public R getHistoryImage(@NotBlank(message = "业务id不能为空") @PathVariable String businessKey) { - return R.ok("操作成功", actProcessInstanceService.getHistoryImage(businessKey)); - } - - /** - * 通过业务id获取历史流程图运行中,历史等节点 - * - * @param businessKey 业务id - */ - @GetMapping("/getHistoryList/{businessKey}") - public R> getHistoryList(@NotBlank(message = "业务id不能为空") @PathVariable String businessKey) { - return R.ok("操作成功", actProcessInstanceService.getHistoryList(businessKey)); - } - - /** - * 获取审批记录 - * - * @param businessKey 业务id - */ - @GetMapping("/getHistoryRecord/{businessKey}") - public R> getHistoryRecord(@NotBlank(message = "业务id不能为空") @PathVariable String businessKey) { - return R.ok(actProcessInstanceService.getHistoryRecord(businessKey)); - } - - /** - * 作废流程实例,不会删除历史记录(删除运行中的实例) - * - * @param processInvalidBo 参数 - */ - @Log(title = "流程实例管理", businessType = BusinessType.DELETE) - @RepeatSubmit() - @PostMapping("/deleteRunInstance") - public R deleteRunInstance(@Validated(AddGroup.class) @RequestBody ProcessInvalidBo processInvalidBo) { - return toAjax(actProcessInstanceService.deleteRunInstance(processInvalidBo)); - } - - /** - * 运行中的实例 删除程实例,删除历史记录,删除业务与流程关联信息 - * - * @param businessKeys 业务id - */ - @Log(title = "流程实例管理", businessType = BusinessType.DELETE) - @RepeatSubmit() - @DeleteMapping("/deleteRunAndHisInstance/{businessKeys}") - public R deleteRunAndHisInstance(@NotNull(message = "业务id不能为空") @PathVariable String[] businessKeys) { - return toAjax(actProcessInstanceService.deleteRunAndHisInstance(Arrays.asList(businessKeys))); - } - - /** - * 已完成的实例 删除程实例,删除历史记录,删除业务与流程关联信息 - * - * @param businessKeys 业务id - */ - @Log(title = "流程实例管理", businessType = BusinessType.DELETE) - @RepeatSubmit() - @DeleteMapping("/deleteFinishAndHisInstance/{businessKeys}") - public R deleteFinishAndHisInstance(@NotNull(message = "业务id不能为空") @PathVariable String[] businessKeys) { - return toAjax(actProcessInstanceService.deleteFinishAndHisInstance(Arrays.asList(businessKeys))); - } - - /** - * 撤销流程申请 - * - * @param businessKey 业务id - */ - @Log(title = "流程实例管理", businessType = BusinessType.INSERT) - @RepeatSubmit() - @PostMapping("/cancelProcessApply/{businessKey}") - public R cancelProcessApply(@NotBlank(message = "业务id不能为空") @PathVariable String businessKey) { - return toAjax(actProcessInstanceService.cancelProcessApply(businessKey)); - } - - /** - * 分页查询当前登录人单据 - * - * @param bo 参数 - */ - @GetMapping("/getPageByCurrent") - public TableDataInfo getPageByCurrent(ProcessInstanceBo bo, PageQuery pageQuery) { - return actProcessInstanceService.getPageByCurrent(bo, pageQuery); - } - - /** - * 任务催办(给当前任务办理人发送站内信,邮件,短信等) - * - * @param taskUrgingBo 任务催办 - */ - @Log(title = "流程实例管理", businessType = BusinessType.INSERT) - @RepeatSubmit() - @PostMapping("/taskUrging") - public R taskUrging(@RequestBody TaskUrgingBo taskUrgingBo) { - return toAjax(actProcessInstanceService.taskUrging(taskUrgingBo)); - } - -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/ActTaskController.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/ActTaskController.java deleted file mode 100644 index 25724b6d9..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/ActTaskController.java +++ /dev/null @@ -1,295 +0,0 @@ -package org.dromara.workflow.controller; - -import cn.hutool.core.collection.CollUtil; -import cn.hutool.core.convert.Convert; -import jakarta.validation.constraints.NotBlank; -import lombok.RequiredArgsConstructor; -import org.dromara.common.core.domain.R; -import org.dromara.common.core.validate.AddGroup; -import org.dromara.common.idempotent.annotation.RepeatSubmit; -import org.dromara.common.log.annotation.Log; -import org.dromara.common.log.enums.BusinessType; -import org.dromara.common.mybatis.core.page.PageQuery; -import org.dromara.common.mybatis.core.page.TableDataInfo; -import org.dromara.common.satoken.utils.LoginHelper; -import org.dromara.common.web.core.BaseController; -import org.dromara.workflow.domain.WfTaskBackNode; -import org.dromara.workflow.domain.bo.*; -import org.dromara.workflow.domain.vo.TaskVo; -import org.dromara.workflow.domain.vo.VariableVo; -import org.dromara.workflow.service.IActTaskService; -import org.dromara.workflow.service.IWfTaskBackNodeService; -import org.dromara.workflow.utils.QueryUtils; -import org.flowable.engine.TaskService; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.validation.annotation.Validated; -import org.springframework.web.bind.annotation.*; - -import java.util.List; -import java.util.Map; - -/** - * 任务管理 控制层 - * - * @author may - */ -@Validated -@RequiredArgsConstructor -@RestController -@RequestMapping("/workflow/task") -public class ActTaskController extends BaseController { - - @Autowired(required = false) - private TaskService taskService; - private final IActTaskService actTaskService; - private final IWfTaskBackNodeService wfTaskBackNodeService; - - - /** - * 启动任务 - * - * @param startProcessBo 启动流程参数 - */ - @Log(title = "任务管理", businessType = BusinessType.INSERT) - @RepeatSubmit() - @PostMapping("/startWorkFlow") - public R> startWorkFlow(@Validated(AddGroup.class) @RequestBody StartProcessBo startProcessBo) { - Map map = actTaskService.startWorkFlow(startProcessBo); - return R.ok("提交成功", map); - } - - /** - * 办理任务 - * - * @param completeTaskBo 办理任务参数 - */ - @Log(title = "任务管理", businessType = BusinessType.INSERT) - @RepeatSubmit() - @PostMapping("/completeTask") - public R completeTask(@Validated(AddGroup.class) @RequestBody CompleteTaskBo completeTaskBo) { - return toAjax(actTaskService.completeTask(completeTaskBo)); - } - - /** - * 查询当前用户的待办任务 - * - * @param taskBo 参数 - */ - @GetMapping("/getPageByTaskWait") - public TableDataInfo getPageByTaskWait(TaskBo taskBo, PageQuery pageQuery) { - return actTaskService.getPageByTaskWait(taskBo, pageQuery); - } - - /** - * 查询当前租户所有待办任务 - * - * @param taskBo 参数 - */ - @GetMapping("/getPageByAllTaskWait") - public TableDataInfo getPageByAllTaskWait(TaskBo taskBo, PageQuery pageQuery) { - return actTaskService.getPageByAllTaskWait(taskBo, pageQuery); - } - - /** - * 查询当前用户的已办任务 - * - * @param taskBo 参数 - */ - @GetMapping("/getPageByTaskFinish") - public TableDataInfo getPageByTaskFinish(TaskBo taskBo, PageQuery pageQuery) { - return actTaskService.getPageByTaskFinish(taskBo, pageQuery); - } - - /** - * 查询当前用户的抄送 - * - * @param taskBo 参数 - */ - @GetMapping("/getPageByTaskCopy") - public TableDataInfo getPageByTaskCopy(TaskBo taskBo, PageQuery pageQuery) { - return actTaskService.getPageByTaskCopy(taskBo, pageQuery); - } - - /** - * 查询当前租户所有已办任务 - * - * @param taskBo 参数 - */ - @GetMapping("/getPageByAllTaskFinish") - public TableDataInfo getPageByAllTaskFinish(TaskBo taskBo, PageQuery pageQuery) { - return actTaskService.getPageByAllTaskFinish(taskBo, pageQuery); - } - - /** - * 签收(拾取)任务 - * - * @param taskId 任务id - */ - @Log(title = "任务管理", businessType = BusinessType.INSERT) - @RepeatSubmit() - @PostMapping("/claim/{taskId}") - public R claimTask(@NotBlank(message = "任务id不能为空") @PathVariable String taskId) { - try { - taskService.claim(taskId, Convert.toStr(LoginHelper.getUserId())); - return R.ok(); - } catch (Exception e) { - e.printStackTrace(); - return R.fail("签收任务失败:" + e.getMessage()); - } - } - - /** - * 归还(拾取的)任务 - * - * @param taskId 任务id - */ - @Log(title = "任务管理", businessType = BusinessType.INSERT) - @RepeatSubmit() - @PostMapping("/returnTask/{taskId}") - public R returnTask(@NotBlank(message = "任务id不能为空") @PathVariable String taskId) { - try { - taskService.setAssignee(taskId, null); - return R.ok(); - } catch (Exception e) { - e.printStackTrace(); - return R.fail("归还任务失败:" + e.getMessage()); - } - } - - /** - * 委派任务 - * - * @param delegateBo 参数 - */ - @Log(title = "任务管理", businessType = BusinessType.INSERT) - @RepeatSubmit() - @PostMapping("/delegateTask") - public R delegateTask(@Validated({AddGroup.class}) @RequestBody DelegateBo delegateBo) { - return toAjax(actTaskService.delegateTask(delegateBo)); - } - - /** - * 终止任务 - * - * @param terminationBo 参数 - */ - @Log(title = "任务管理", businessType = BusinessType.DELETE) - @RepeatSubmit() - @PostMapping("/terminationTask") - public R terminationTask(@RequestBody TerminationBo terminationBo) { - return toAjax(actTaskService.terminationTask(terminationBo)); - } - - /** - * 转办任务 - * - * @param transmitBo 参数 - */ - @Log(title = "任务管理", businessType = BusinessType.INSERT) - @RepeatSubmit() - @PostMapping("/transferTask") - public R transferTask(@Validated({AddGroup.class}) @RequestBody TransmitBo transmitBo) { - return toAjax(actTaskService.transferTask(transmitBo)); - } - - /** - * 会签任务加签 - * - * @param addMultiBo 参数 - */ - @Log(title = "任务管理", businessType = BusinessType.INSERT) - @RepeatSubmit() - @PostMapping("/addMultiInstanceExecution") - public R addMultiInstanceExecution(@Validated({AddGroup.class}) @RequestBody AddMultiBo addMultiBo) { - return toAjax(actTaskService.addMultiInstanceExecution(addMultiBo)); - } - - /** - * 会签任务减签 - * - * @param deleteMultiBo 参数 - */ - @Log(title = "任务管理", businessType = BusinessType.INSERT) - @RepeatSubmit() - @PostMapping("/deleteMultiInstanceExecution") - public R deleteMultiInstanceExecution(@Validated({AddGroup.class}) @RequestBody DeleteMultiBo deleteMultiBo) { - return toAjax(actTaskService.deleteMultiInstanceExecution(deleteMultiBo)); - } - - /** - * 驳回审批 - * - * @param backProcessBo 参数 - */ - @Log(title = "任务管理", businessType = BusinessType.INSERT) - @RepeatSubmit() - @PostMapping("/backProcess") - public R backProcess(@Validated({AddGroup.class}) @RequestBody BackProcessBo backProcessBo) { - return R.ok("操作成功", actTaskService.backProcess(backProcessBo)); - } - - /** - * 获取当前任务 - * - * @param taskId 任务id - */ - @GetMapping("/getTaskById/{taskId}") - public R getTaskById(@PathVariable String taskId) { - return R.ok(QueryUtils.getTask(taskId)); - } - - - /** - * 修改任务办理人 - * - * @param taskIds 任务id - * @param userId 办理人id - */ - @Log(title = "任务管理", businessType = BusinessType.UPDATE) - @RepeatSubmit() - @PutMapping("/updateAssignee/{taskIds}/{userId}") - public R updateAssignee(@PathVariable String[] taskIds, @PathVariable String userId) { - return toAjax(actTaskService.updateAssignee(taskIds, userId)); - } - - /** - * 查询流程变量 - * - * @param taskId 任务id - */ - @GetMapping("/getInstanceVariable/{taskId}") - public R> getProcessInstVariable(@PathVariable String taskId) { - return R.ok(actTaskService.getInstanceVariable(taskId)); - } - - /** - * 获取可驳回得任务节点 - * - * @param processInstanceId 流程实例id - */ - @GetMapping("/getTaskNodeList/{processInstanceId}") - public R> getNodeList(@PathVariable String processInstanceId) { - return R.ok(CollUtil.reverse(wfTaskBackNodeService.getListByInstanceId(processInstanceId))); - } - - /** - * 查询工作流任务用户选择加签人员 - * - * @param taskId 任务id - */ - @GetMapping("/getTaskUserIdsByAddMultiInstance/{taskId}") - public R getTaskUserIdsByAddMultiInstance(@PathVariable String taskId) { - return R.ok("操作成功", actTaskService.getTaskUserIdsByAddMultiInstance(taskId)); - } - - /** - * 查询工作流选择减签人员 - * - * @param taskId 任务id - */ - @GetMapping("/getListByDeleteMultiInstance/{taskId}") - public R> getListByDeleteMultiInstance(@PathVariable String taskId) { - return R.ok(actTaskService.getListByDeleteMultiInstance(taskId)); - } - -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/WfCategoryController.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwCategoryController.java similarity index 42% rename from ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/WfCategoryController.java rename to ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwCategoryController.java index 8dced8929..99fa064df 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/WfCategoryController.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwCategoryController.java @@ -1,8 +1,8 @@ package org.dromara.workflow.controller; import cn.dev33.satoken.annotation.SaCheckPermission; +import cn.hutool.core.lang.tree.Tree; import jakarta.servlet.http.HttpServletResponse; -import jakarta.validation.constraints.NotEmpty; import jakarta.validation.constraints.NotNull; import lombok.RequiredArgsConstructor; import org.dromara.common.core.domain.R; @@ -13,9 +13,9 @@ import org.dromara.common.idempotent.annotation.RepeatSubmit; import org.dromara.common.log.annotation.Log; import org.dromara.common.log.enums.BusinessType; import org.dromara.common.web.core.BaseController; -import org.dromara.workflow.domain.bo.WfCategoryBo; -import org.dromara.workflow.domain.vo.WfCategoryVo; -import org.dromara.workflow.service.IWfCategoryService; +import org.dromara.workflow.domain.bo.FlowCategoryBo; +import org.dromara.workflow.domain.vo.FlowCategoryVo; +import org.dromara.workflow.service.IFlwCategoryService; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; @@ -25,25 +25,23 @@ import java.util.List; * 流程分类 * * @author may - * @date 2023-06-28 */ @Validated @RequiredArgsConstructor @RestController @RequestMapping("/workflow/category") -public class WfCategoryController extends BaseController { +public class FlwCategoryController extends BaseController { - private final IWfCategoryService wfCategoryService; + private final IFlwCategoryService flwCategoryService; /** * 查询流程分类列表 */ @SaCheckPermission("workflow:category:list") @GetMapping("/list") - public R> list(WfCategoryBo bo) { - List list = wfCategoryService.queryList(bo); + public R> list(FlowCategoryBo bo) { + List list = flwCategoryService.queryList(bo); return R.ok(list); - } /** @@ -52,21 +50,21 @@ public class WfCategoryController extends BaseController { @SaCheckPermission("workflow:category:export") @Log(title = "流程分类", businessType = BusinessType.EXPORT) @PostMapping("/export") - public void export(WfCategoryBo bo, HttpServletResponse response) { - List list = wfCategoryService.queryList(bo); - ExcelUtil.exportExcel(list, "流程分类", WfCategoryVo.class, response); + public void export(FlowCategoryBo bo, HttpServletResponse response) { + List list = flwCategoryService.queryList(bo); + ExcelUtil.exportExcel(list, "流程分类", FlowCategoryVo.class, response); } /** * 获取流程分类详细信息 * - * @param id 主键 + * @param categoryId 主键 */ @SaCheckPermission("workflow:category:query") - @GetMapping("/{id}") - public R getInfo(@NotNull(message = "主键不能为空") - @PathVariable Long id) { - return R.ok(wfCategoryService.queryById(id)); + @GetMapping("/{categoryId}") + public R getInfo(@NotNull(message = "主键不能为空") @PathVariable Long categoryId) { + flwCategoryService.checkCategoryDataScope(categoryId); + return R.ok(flwCategoryService.queryById(categoryId)); } /** @@ -76,8 +74,11 @@ public class WfCategoryController extends BaseController { @Log(title = "流程分类", businessType = BusinessType.INSERT) @RepeatSubmit() @PostMapping() - public R add(@Validated(AddGroup.class) @RequestBody WfCategoryBo bo) { - return toAjax(wfCategoryService.insertByBo(bo)); + public R add(@Validated(AddGroup.class) @RequestBody FlowCategoryBo category) { + if (!flwCategoryService.checkCategoryNameUnique(category)) { + return R.fail("新增流程分类'" + category.getCategoryName() + "'失败,流程分类名称已存在"); + } + return toAjax(flwCategoryService.insertByBo(category)); } /** @@ -87,20 +88,43 @@ public class WfCategoryController extends BaseController { @Log(title = "流程分类", businessType = BusinessType.UPDATE) @RepeatSubmit() @PutMapping() - public R edit(@Validated(EditGroup.class) @RequestBody WfCategoryBo bo) { - return toAjax(wfCategoryService.updateByBo(bo)); + public R edit(@Validated(EditGroup.class) @RequestBody FlowCategoryBo category) { + Long categoryId = category.getCategoryId(); + flwCategoryService.checkCategoryDataScope(categoryId); + if (!flwCategoryService.checkCategoryNameUnique(category)) { + return R.fail("修改流程分类'" + category.getCategoryName() + "'失败,流程分类名称已存在"); + } else if (category.getParentId().equals(categoryId)) { + return R.fail("修改流程分类'" + category.getCategoryName() + "'失败,上级流程分类不能是自己"); + } + return toAjax(flwCategoryService.updateByBo(category)); } /** * 删除流程分类 * - * @param ids 主键串 + * @param categoryId 主键 */ @SaCheckPermission("workflow:category:remove") @Log(title = "流程分类", businessType = BusinessType.DELETE) - @DeleteMapping("/{ids}") - public R remove(@NotEmpty(message = "主键不能为空") - @PathVariable Long[] ids) { - return toAjax(wfCategoryService.deleteWithValidByIds(List.of(ids), true)); + @DeleteMapping("/{categoryId}") + public R remove(@PathVariable Long categoryId) { + if (flwCategoryService.hasChildByCategoryId(categoryId)) { + return R.warn("存在下级流程分类,不允许删除"); + } + if (flwCategoryService.checkCategoryExistDefinition(categoryId)) { + return R.warn("流程分类存在流程定义,不允许删除"); + } + return toAjax(flwCategoryService.deleteWithValidById(categoryId)); } + + /** + * 获取流程分类树列表 + * + * @param categoryBo 流程分类 + */ + @GetMapping("/categoryTree") + public R>> categoryTree(FlowCategoryBo categoryBo) { + return R.ok(flwCategoryService.selectCategoryTreeList(categoryBo)); + } + } diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwDefinitionController.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwDefinitionController.java new file mode 100644 index 000000000..b125f0f28 --- /dev/null +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwDefinitionController.java @@ -0,0 +1,194 @@ +package org.dromara.workflow.controller; + +import jakarta.servlet.http.HttpServletResponse; +import lombok.RequiredArgsConstructor; +import org.dromara.common.core.domain.R; +import org.dromara.common.idempotent.annotation.RepeatSubmit; +import org.dromara.common.log.annotation.Log; +import org.dromara.common.log.enums.BusinessType; +import org.dromara.common.mybatis.core.page.PageQuery; +import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.dromara.common.web.core.BaseController; +import org.dromara.warm.flow.core.entity.Definition; +import org.dromara.warm.flow.core.service.DefService; +import org.dromara.warm.flow.orm.entity.FlowDefinition; +import org.dromara.workflow.domain.vo.FlowDefinitionVo; +import org.dromara.workflow.service.IFlwDefinitionService; +import org.springframework.transaction.annotation.Transactional; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; + +import java.io.IOException; +import java.util.List; + +/** + * 流程定义管理 控制层 + * + * @author may + */ +@Validated +@RequiredArgsConstructor +@RestController +@RequestMapping("/workflow/definition") +public class FlwDefinitionController extends BaseController { + + private final IFlwDefinitionService flwDefinitionService; + private final DefService defService; + + /** + * 查询流程定义列表 + * + * @param flowDefinition 参数 + * @param pageQuery 分页 + */ + @GetMapping("/list") + public TableDataInfo list(FlowDefinition flowDefinition, PageQuery pageQuery) { + return flwDefinitionService.queryList(flowDefinition, pageQuery); + } + + /** + * 查询未发布的流程定义列表 + * + * @param flowDefinition 参数 + * @param pageQuery 分页 + */ + @GetMapping("/unPublishList") + public TableDataInfo unPublishList(FlowDefinition flowDefinition, PageQuery pageQuery) { + return flwDefinitionService.unPublishList(flowDefinition, pageQuery); + } + + /** + * 获取流程定义详细信息 + * + * @param id 流程定义id + */ + @GetMapping(value = "/{id}") + public R getInfo(@PathVariable Long id) { + return R.ok(defService.getById(id)); + } + + /** + * 新增流程定义 + * + * @param flowDefinition 参数 + */ + @Log(title = "流程定义", businessType = BusinessType.INSERT) + @PostMapping + @RepeatSubmit() + @Transactional(rollbackFor = Exception.class) + public R add(@RequestBody FlowDefinition flowDefinition) { + return R.ok(defService.checkAndSave(flowDefinition)); + } + + /** + * 修改流程定义 + * + * @param flowDefinition 参数 + */ + @Log(title = "流程定义", businessType = BusinessType.UPDATE) + @PutMapping + @RepeatSubmit() + @Transactional(rollbackFor = Exception.class) + public R edit(@RequestBody FlowDefinition flowDefinition) { + return R.ok(defService.updateById(flowDefinition)); + } + + /** + * 发布流程定义 + * + * @param id 流程定义id + */ + @Log(title = "流程定义", businessType = BusinessType.INSERT) + @PutMapping("/publish/{id}") + @RepeatSubmit() + @Transactional(rollbackFor = Exception.class) + public R publish(@PathVariable Long id) { + return R.ok(flwDefinitionService.publish(id)); + } + + /** + * 取消发布流程定义 + * + * @param id 流程定义id + */ + @Log(title = "流程定义", businessType = BusinessType.INSERT) + @PutMapping("/unPublish/{id}") + @RepeatSubmit() + @Transactional(rollbackFor = Exception.class) + public R unPublish(@PathVariable Long id) { + return R.ok(defService.unPublish(id)); + } + + /** + * 删除流程定义 + */ + @Log(title = "流程定义", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + @Transactional(rollbackFor = Exception.class) + public R remove(@PathVariable List ids) { + return toAjax(flwDefinitionService.removeDef(ids)); + } + + /** + * 复制流程定义 + * + * @param id 流程定义id + */ + @Log(title = "流程定义", businessType = BusinessType.INSERT) + @PostMapping("/copy/{id}") + @RepeatSubmit() + @Transactional(rollbackFor = Exception.class) + public R copy(@PathVariable Long id) { + return R.ok(defService.copyDef(id)); + } + + /** + * 导入流程定义 + * + * @param file 文件 + * @param category 分类 + */ + @Log(title = "流程定义", businessType = BusinessType.IMPORT) + @PostMapping("/importDef") + @Transactional(rollbackFor = Exception.class) + public R importDef(MultipartFile file, String category) { + return R.ok(flwDefinitionService.importXml(file, category)); + } + + /** + * 导出流程定义 + * + * @param id 流程定义id + * @param response 响应 + * @throws IOException 异常 + */ + @Log(title = "流程定义", businessType = BusinessType.EXPORT) + @PostMapping("/exportDef/{id}") + public void exportDef(@PathVariable Long id, HttpServletResponse response) throws IOException { + flwDefinitionService.exportDef(id, response); + } + + /** + * 获取流程定义xml字符串 + * + * @param id 流程定义id + */ + @GetMapping("/xmlString/{id}") + public R xmlString(@PathVariable Long id) { + return R.ok("操作成功", defService.xmlString(id)); + } + + /** + * 激活/挂起流程定义 + * + * @param id 流程定义id + * @param active 激活/挂起 + */ + @RepeatSubmit() + @PutMapping("/active/{id}") + public R active(@PathVariable Long id, @RequestParam boolean active) { + return R.ok(active ? defService.active(id) : defService.unActive(id)); + } + +} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwInstanceController.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwInstanceController.java new file mode 100644 index 000000000..cb65f2158 --- /dev/null +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwInstanceController.java @@ -0,0 +1,155 @@ +package org.dromara.workflow.controller; + +import lombok.RequiredArgsConstructor; +import org.dromara.common.core.domain.R; +import org.dromara.common.idempotent.annotation.RepeatSubmit; +import org.dromara.common.log.annotation.Log; +import org.dromara.common.log.enums.BusinessType; +import org.dromara.common.mybatis.core.page.PageQuery; +import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.dromara.common.web.core.BaseController; +import org.dromara.warm.flow.core.service.InsService; +import org.dromara.workflow.domain.bo.FlowCancelBo; +import org.dromara.workflow.domain.bo.FlowInstanceBo; +import org.dromara.workflow.domain.bo.FlowInvalidBo; +import org.dromara.workflow.domain.vo.FlowInstanceVo; +import org.dromara.workflow.service.IFlwInstanceService; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; + +import java.util.List; +import java.util.Map; + +/** + * 流程实例管理 控制层 + * + * @author may + */ +@Validated +@RequiredArgsConstructor +@RestController +@RequestMapping("/workflow/instance") +public class FlwInstanceController extends BaseController { + + private final IFlwInstanceService flwInstanceService; + private final InsService insService; + + /** + * 查询正在运行的流程实例列表 + * + * @param flowInstanceBo 流程实例 + * @param pageQuery 分页 + */ + @GetMapping("/pageByRunning") + public TableDataInfo selectRunningInstanceList(FlowInstanceBo flowInstanceBo, PageQuery pageQuery) { + return flwInstanceService.selectRunningInstanceList(flowInstanceBo, pageQuery); + } + + /** + * 查询已结束的流程实例列表 + * + * @param flowInstanceBo 流程实例 + * @param pageQuery 分页 + */ + @GetMapping("/pageByFinish") + public TableDataInfo selectFinishInstanceList(FlowInstanceBo flowInstanceBo, PageQuery pageQuery) { + return flwInstanceService.selectFinishInstanceList(flowInstanceBo, pageQuery); + } + + /** + * 根据业务id查询流程实例详细信息 + * + * @param businessId 业务id + */ + @GetMapping("/getInfo/{businessId}") + public R getInfo(@PathVariable Long businessId) { + return R.ok(flwInstanceService.queryByBusinessId(businessId)); + } + + /** + * 按照业务id删除流程实例 + * + * @param businessIds 业务id + */ + @DeleteMapping("/deleteByBusinessIds/{businessIds}") + public R deleteByBusinessIds(@PathVariable List businessIds) { + return toAjax(flwInstanceService.deleteByBusinessIds(businessIds)); + } + + /** + * 按照实例id删除流程实例 + * + * @param instanceIds 实例id + */ + @DeleteMapping("/deleteByInstanceIds/{instanceIds}") + public R deleteByInstanceIds(@PathVariable List instanceIds) { + return toAjax(flwInstanceService.deleteByInstanceIds(instanceIds)); + } + + /** + * 撤销流程 + * + * @param bo 参数 + */ + @RepeatSubmit() + @PutMapping("/cancelProcessApply") + public R cancelProcessApply(@RequestBody FlowCancelBo bo) { + return toAjax(flwInstanceService.cancelProcessApply(bo)); + } + + /** + * 激活/挂起流程实例 + * + * @param id 流程实例id + * @param active 激活/挂起 + */ + @RepeatSubmit() + @PutMapping("/active/{id}") + public R active(@PathVariable Long id, @RequestParam boolean active) { + return R.ok(active ? insService.active(id) : insService.unActive(id)); + } + + /** + * 获取当前登陆人发起的流程实例 + * + * @param flowInstanceBo 参数 + * @param pageQuery 分页 + */ + @GetMapping("/pageByCurrent") + public TableDataInfo selectCurrentInstanceList(FlowInstanceBo flowInstanceBo, PageQuery pageQuery) { + return flwInstanceService.selectCurrentInstanceList(flowInstanceBo, pageQuery); + } + + /** + * 获取流程图,流程记录 + * + * @param businessId 业务id + */ + @GetMapping("/flowImage/{businessId}") + public R> flowImage(@PathVariable String businessId) { + return R.ok(flwInstanceService.flowImage(businessId)); + } + + /** + * 获取流程变量 + * + * @param instanceId 流程实例id + */ + @GetMapping("/instanceVariable/{instanceId}") + public R> instanceVariable(@PathVariable String instanceId) { + return R.ok(flwInstanceService.instanceVariable(instanceId)); + } + + /** + * 作废流程 + * + * @param bo 参数 + */ + @Log(title = "流程实例管理", businessType = BusinessType.INSERT) + @RepeatSubmit() + @PostMapping("/invalid") + public R invalid(@Validated @RequestBody FlowInvalidBo bo) { + return R.ok(flwInstanceService.processInvalid(bo)); + } + +} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwTaskController.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwTaskController.java new file mode 100644 index 000000000..7736b7bf8 --- /dev/null +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwTaskController.java @@ -0,0 +1,199 @@ +package org.dromara.workflow.controller; + +import lombok.RequiredArgsConstructor; +import org.dromara.common.core.domain.R; +import org.dromara.common.core.domain.dto.UserDTO; +import org.dromara.common.core.validate.AddGroup; +import org.dromara.common.idempotent.annotation.RepeatSubmit; +import org.dromara.common.log.annotation.Log; +import org.dromara.common.log.enums.BusinessType; +import org.dromara.common.mybatis.core.page.PageQuery; +import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.dromara.common.web.core.BaseController; +import org.dromara.warm.flow.core.entity.Node; +import org.dromara.workflow.domain.bo.*; +import org.dromara.workflow.domain.vo.FlowHisTaskVo; +import org.dromara.workflow.domain.vo.FlowTaskVo; +import org.dromara.workflow.service.IFlwTaskService; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; + +import java.util.List; +import java.util.Map; + +/** + * 任务管理 控制层 + * + * @author may + */ +@Validated +@RequiredArgsConstructor +@RestController +@RequestMapping("/workflow/task") +public class FlwTaskController extends BaseController { + + private final IFlwTaskService flwTaskService; + + /** + * 启动任务 + * + * @param startProcessBo 启动流程参数 + */ + @Log(title = "任务管理", businessType = BusinessType.INSERT) + @RepeatSubmit() + @PostMapping("/startWorkFlow") + public R> startWorkFlow(@Validated(AddGroup.class) @RequestBody StartProcessBo startProcessBo) { + Map map = flwTaskService.startWorkFlow(startProcessBo); + return R.ok("提交成功", map); + } + + /** + * 办理任务 + * + * @param completeTaskBo 办理任务参数 + */ + @Log(title = "任务管理", businessType = BusinessType.INSERT) + @RepeatSubmit() + @PostMapping("/completeTask") + public R completeTask(@Validated(AddGroup.class) @RequestBody CompleteTaskBo completeTaskBo) { + return toAjax(flwTaskService.completeTask(completeTaskBo)); + } + + /** + * 查询当前用户的待办任务 + * + * @param flowTaskBo 参数 + * @param pageQuery 分页 + */ + @GetMapping("/pageByTaskWait") + public TableDataInfo pageByTaskWait(FlowTaskBo flowTaskBo, PageQuery pageQuery) { + return flwTaskService.pageByTaskWait(flowTaskBo, pageQuery); + } + + /** + * 查询当前用户的已办任务 + * + * @param flowTaskBo 参数 + * @param pageQuery 分页 + */ + + @GetMapping("/pageByTaskFinish") + public TableDataInfo pageByTaskFinish(FlowTaskBo flowTaskBo, PageQuery pageQuery) { + return flwTaskService.pageByTaskFinish(flowTaskBo, pageQuery); + } + + /** + * 查询待办任务 + * + * @param flowTaskBo 参数 + * @param pageQuery 分页 + */ + @GetMapping("/pageByAllTaskWait") + public TableDataInfo pageByAllTaskWait(FlowTaskBo flowTaskBo, PageQuery pageQuery) { + return flwTaskService.pageByAllTaskWait(flowTaskBo, pageQuery); + } + + /** + * 查询已办任务 + * + * @param flowTaskBo 参数 + * @param pageQuery 分页 + */ + @GetMapping("/pageByAllTaskFinish") + public TableDataInfo pageByAllTaskFinish(FlowTaskBo flowTaskBo, PageQuery pageQuery) { + return flwTaskService.pageByAllTaskFinish(flowTaskBo, pageQuery); + } + + /** + * 查询当前用户的抄送 + * + * @param flowTaskBo 参数 + * @param pageQuery 分页 + */ + @GetMapping("/pageByTaskCopy") + public TableDataInfo pageByTaskCopy(FlowTaskBo flowTaskBo, PageQuery pageQuery) { + return flwTaskService.pageByTaskCopy(flowTaskBo, pageQuery); + } + + /** + * 根据taskId查询代表任务 + * + * @param taskId 任务id + */ + @GetMapping("/getTask/{taskId}") + public R getTask(@PathVariable Long taskId) { + return R.ok(flwTaskService.selectById(taskId)); + } + + /** + * 终止任务 + * + * @param bo 参数 + */ + @Log(title = "任务管理", businessType = BusinessType.INSERT) + @RepeatSubmit() + @PostMapping("/terminationTask") + public R terminationTask(@RequestBody FlowTerminationBo bo) { + return R.ok(flwTaskService.terminationTask(bo)); + } + + /** + * 任务操作 + * + * @param bo 参数 + * @param taskOperation 操作类型,委派 delegateTask、转办 transferTask、加签 addSignature、减签 reductionSignature + */ + @Log(title = "任务管理", businessType = BusinessType.UPDATE) + @RepeatSubmit + @PostMapping("/taskOperation/{taskOperation}") + public R taskOperation(@Validated @RequestBody TaskOperationBo bo, @PathVariable String taskOperation) { + return toAjax(flwTaskService.taskOperation(bo, taskOperation)); + } + + /** + * 修改任务办理人 + * + * @param taskIdList 任务id + * @param userId 办理人id + */ + @Log(title = "任务管理", businessType = BusinessType.UPDATE) + @RepeatSubmit() + @PutMapping("/updateAssignee/{userId}") + public R updateAssignee(@RequestBody List taskIdList, @PathVariable String userId) { + return toAjax(flwTaskService.updateAssignee(taskIdList, userId)); + } + + /** + * 驳回审批 + * + * @param bo 参数 + */ + @Log(title = "任务管理", businessType = BusinessType.INSERT) + @RepeatSubmit() + @PostMapping("/backProcess") + public R backProcess(@Validated({AddGroup.class}) @RequestBody BackProcessBo bo) { + return toAjax(flwTaskService.backProcess(bo)); + } + + /** + * 获取可驳回的前置节点 + * + * @param definitionId 流程定义id + * @param nowNodeCode 当前节点 + */ + @GetMapping("/getBackTaskNode/{definitionId}/{nowNodeCode}") + public R> getBackTaskNode(@PathVariable Long definitionId, @PathVariable String nowNodeCode) { + return R.ok(flwTaskService.getBackTaskNode(definitionId, nowNodeCode)); + } + + /** + * 获取当前任务的所有办理人 + * + * @param taskId 任务id + */ + @GetMapping("/currentTaskAllUser/{taskId}") + public R> currentTaskAllUser(@PathVariable Long taskId) { + return R.ok(flwTaskService.currentTaskAllUser(taskId)); + } + +} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/WfDefinitionConfigController.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/WfDefinitionConfigController.java deleted file mode 100644 index 176aba2e4..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/WfDefinitionConfigController.java +++ /dev/null @@ -1,79 +0,0 @@ -package org.dromara.workflow.controller; - -import java.util.List; - -import lombok.RequiredArgsConstructor; -import jakarta.validation.constraints.*; -import org.dromara.workflow.domain.bo.WfDefinitionConfigBo; -import org.springframework.web.bind.annotation.*; -import org.springframework.validation.annotation.Validated; -import org.dromara.common.idempotent.annotation.RepeatSubmit; -import org.dromara.common.log.annotation.Log; -import org.dromara.common.web.core.BaseController; -import org.dromara.common.core.domain.R; -import org.dromara.common.core.validate.AddGroup; -import org.dromara.common.log.enums.BusinessType; -import org.dromara.workflow.domain.vo.WfDefinitionConfigVo; -import org.dromara.workflow.service.IWfDefinitionConfigService; - -/** - * 流程定义配置 - * - * @author may - * @date 2024-03-18 - */ -@Validated -@RequiredArgsConstructor -@RestController -@RequestMapping("/workflow/definitionConfig") -public class WfDefinitionConfigController extends BaseController { - - private final IWfDefinitionConfigService wfDefinitionConfigService; - - - /** - * 获取流程定义配置详细信息 - * - * @param definitionId 主键 - */ - @GetMapping("/getByDefId/{definitionId}") - public R getByDefId(@NotBlank(message = "流程定义ID不能为空") - @PathVariable String definitionId) { - return R.ok(wfDefinitionConfigService.getByDefId(definitionId)); - } - - /** - * 新增流程定义配置 - */ - @Log(title = "流程定义配置", businessType = BusinessType.INSERT) - @RepeatSubmit() - @PostMapping("/saveOrUpdate") - public R saveOrUpdate(@Validated(AddGroup.class) @RequestBody WfDefinitionConfigBo bo) { - return toAjax(wfDefinitionConfigService.saveOrUpdate(bo)); - } - - /** - * 删除流程定义配置 - * - * @param ids 主键串 - */ - @Log(title = "流程定义配置", businessType = BusinessType.DELETE) - @DeleteMapping("/{ids}") - public R remove(@NotEmpty(message = "主键不能为空") - @PathVariable Long[] ids) { - return toAjax(wfDefinitionConfigService.deleteByIds(List.of(ids))); - } - - /** - * 查询流程定义配置排除当前查询的流程定义 - * - * @param tableName 表名 - * @param definitionId 流程定义id - */ - @GetMapping("/getByTableNameNotDefId/{tableName}/{definitionId}") - public R> getByTableNameNotDefId(@NotBlank(message = "表名不能为空") @PathVariable String tableName, - @NotBlank(message = "流程定义ID不能为空") @PathVariable String definitionId) { - return R.ok(wfDefinitionConfigService.getByTableNameNotDefId(tableName, definitionId)); - } - -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/WfFormManageController.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/WfFormManageController.java deleted file mode 100644 index 198e233b4..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/WfFormManageController.java +++ /dev/null @@ -1,114 +0,0 @@ -package org.dromara.workflow.controller; - -import java.util.List; - -import lombok.RequiredArgsConstructor; -import jakarta.servlet.http.HttpServletResponse; -import jakarta.validation.constraints.*; -import cn.dev33.satoken.annotation.SaCheckPermission; -import org.springframework.web.bind.annotation.*; -import org.springframework.validation.annotation.Validated; -import org.dromara.common.idempotent.annotation.RepeatSubmit; -import org.dromara.common.log.annotation.Log; -import org.dromara.common.web.core.BaseController; -import org.dromara.common.mybatis.core.page.PageQuery; -import org.dromara.common.core.domain.R; -import org.dromara.common.core.validate.AddGroup; -import org.dromara.common.core.validate.EditGroup; -import org.dromara.common.log.enums.BusinessType; -import org.dromara.common.excel.utils.ExcelUtil; -import org.dromara.workflow.domain.vo.WfFormManageVo; -import org.dromara.workflow.domain.bo.WfFormManageBo; -import org.dromara.workflow.service.IWfFormManageService; -import org.dromara.common.mybatis.core.page.TableDataInfo; - -/** - * 表单管理 - * - * @author may - * @date 2024-03-29 - */ -@Validated -@RequiredArgsConstructor -@RestController -@RequestMapping("/workflow/formManage") -public class WfFormManageController extends BaseController { - - private final IWfFormManageService wfFormManageService; - - /** - * 查询表单管理列表 - */ - @SaCheckPermission("workflow:formManage:list") - @GetMapping("/list") - public TableDataInfo list(WfFormManageBo bo, PageQuery pageQuery) { - return wfFormManageService.queryPageList(bo, pageQuery); - } - - /** - * 查询表单管理列表 - */ - @SaCheckPermission("workflow:formManage:list") - @GetMapping("/list/selectList") - public R> selectList() { - return R.ok(wfFormManageService.selectList()); - } - - /** - * 导出表单管理列表 - */ - @SaCheckPermission("workflow:formManage:export") - @Log(title = "表单管理", businessType = BusinessType.EXPORT) - @PostMapping("/export") - public void export(WfFormManageBo bo, HttpServletResponse response) { - List list = wfFormManageService.queryList(bo); - ExcelUtil.exportExcel(list, "表单管理", WfFormManageVo.class, response); - } - - /** - * 获取表单管理详细信息 - * - * @param id 主键 - */ - @SaCheckPermission("workflow:formManage:query") - @GetMapping("/{id}") - public R getInfo(@NotNull(message = "主键不能为空") - @PathVariable Long id) { - return R.ok(wfFormManageService.queryById(id)); - } - - /** - * 新增表单管理 - */ - @SaCheckPermission("workflow:formManage:add") - @Log(title = "表单管理", businessType = BusinessType.INSERT) - @RepeatSubmit() - @PostMapping() - public R add(@Validated(AddGroup.class) @RequestBody WfFormManageBo bo) { - return toAjax(wfFormManageService.insertByBo(bo)); - } - - /** - * 修改表单管理 - */ - @SaCheckPermission("workflow:formManage:edit") - @Log(title = "表单管理", businessType = BusinessType.UPDATE) - @RepeatSubmit() - @PutMapping() - public R edit(@Validated(EditGroup.class) @RequestBody WfFormManageBo bo) { - return toAjax(wfFormManageService.updateByBo(bo)); - } - - /** - * 删除表单管理 - * - * @param ids 主键串 - */ - @SaCheckPermission("workflow:formManage:remove") - @Log(title = "表单管理", businessType = BusinessType.DELETE) - @DeleteMapping("/{ids}") - public R remove(@NotEmpty(message = "主键不能为空") - @PathVariable Long[] ids) { - return toAjax(wfFormManageService.deleteByIds(List.of(ids))); - } -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/ActHiProcinst.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/ActHiProcinst.java deleted file mode 100644 index e87fb9253..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/ActHiProcinst.java +++ /dev/null @@ -1,152 +0,0 @@ -package org.dromara.workflow.domain; - -import com.baomidou.mybatisplus.annotation.TableField; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; -import lombok.Data; - -import java.io.Serial; -import java.io.Serializable; -import java.util.Date; - -/** - * 流程实例对象 act_hi_procinst - * - * @author may - * @date 2023-07-22 - */ -@Data -@TableName("act_hi_procinst") -public class ActHiProcinst implements Serializable { - - @Serial - private static final long serialVersionUID = 1L; - - /** - * - */ - @TableId(value = "ID_") - private String id; - - /** - * - */ - @TableField(value = "REV_") - private Long rev; - - /** - * - */ - @TableField(value = "PROC_INST_ID_") - private String procInstId; - - /** - * - */ - @TableField(value = "BUSINESS_KEY_") - private String businessKey; - - /** - * - */ - @TableField(value = "PROC_DEF_ID_") - private String procDefId; - - /** - * - */ - @TableField(value = "START_TIME_") - private Date startTime; - - /** - * - */ - @TableField(value = "END_TIME_") - private Date endTime; - - /** - * - */ - @TableField(value = "DURATION_") - private Long duration; - - /** - * - */ - @TableField(value = "START_USER_ID_") - private String startUserId; - - /** - * - */ - @TableField(value = "START_ACT_ID_") - private String startActId; - - /** - * - */ - @TableField(value = "END_ACT_ID_") - private String endActId; - - /** - * - */ - @TableField(value = "SUPER_PROCESS_INSTANCE_ID_") - private String superProcessInstanceId; - - /** - * - */ - @TableField(value = "DELETE_REASON_") - private String deleteReason; - - /** - * - */ - @TableField(value = "TENANT_ID_") - private String tenantId; - - /** - * - */ - @TableField(value = "NAME_") - private String name; - - /** - * - */ - @TableField(value = "CALLBACK_ID_") - private String callbackId; - - /** - * - */ - @TableField(value = "CALLBACK_TYPE_") - private String callbackType; - - /** - * - */ - @TableField(value = "REFERENCE_ID_") - private String referenceId; - - /** - * - */ - @TableField(value = "REFERENCE_TYPE_") - private String referenceType; - - /** - * - */ - @TableField(value = "PROPAGATED_STAGE_INST_ID_") - private String propagatedStageInstId; - - /** - * - */ - @TableField(value = "BUSINESS_STATUS_") - private String businessStatus; - - -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/ActHiTaskinst.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/ActHiTaskinst.java deleted file mode 100644 index abc17b54c..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/ActHiTaskinst.java +++ /dev/null @@ -1,193 +0,0 @@ -package org.dromara.workflow.domain; - -import com.baomidou.mybatisplus.annotation.*; -import lombok.Data; - -import java.io.Serializable; -import java.util.Date; - -import java.io.Serial; - -/** - * 流程历史任务对象 act_hi_taskinst - * - * @author may - * @date 2024-03-02 - */ -@Data -@TableName("act_hi_taskinst") -public class ActHiTaskinst implements Serializable { - - @Serial - private static final long serialVersionUID = 1L; - - /** - * - */ - @TableId(value = "ID_") - private String id; - - /** - * 版本 - */ - @TableField(value = "REV_") - private Long rev; - - /** - * 流程定义id - */ - @TableField(value = "PROC_DEF_ID_") - private String procDefId; - - /** - * - */ - @TableField(value = "TASK_DEF_ID_") - private String taskDefId; - - /** - * 任务节点id - */ - @TableField(value = "TASK_DEF_KEY_") - private String taskDefKey; - - /** - * 流程实例id - */ - @TableField(value = "PROC_INST_ID_") - private String procInstId; - - /** - * 流程执行id - */ - @TableField(value = "EXECUTION_ID") - private String executionId; - - /** - * - */ - @TableField(value = "SCOPE_ID_") - private String scopeId; - - /** - * - */ - @TableField(value = "SUB_SCOPE_ID_") - private String subScopeId; - - /** - * 先用当前字段标识抄送类型 - */ - @TableField(value = "SCOPE_TYPE_") - private String scopeType; - - /** - * - */ - @TableField(value = "SCOPE_DEFINITION_ID_") - private String scopeDefinitionId; - - /** - * - */ - @TableField(value = "PROPAGATED_STAGE_INST_ID_") - private String propagatedStageInstId; - - /** - * 任务名称 - */ - @TableField(value = "NAME_") - private String name; - - /** - * 父级id - */ - @TableField(value = "PARENT_TASK_ID_") - private String parentTaskId; - - /** - * 描述 - */ - @TableField(value = "DESCRIPTION_") - private String description; - - /** - * 办理人 - */ - @TableField(value = "OWNER_") - private String owner; - - /** - * 办理人 - */ - @TableField(value = "ASSIGNEE_") - private String assignee; - - /** - * 开始事件 - */ - @TableField(value = "START_TIME_") - private Date startTime; - - /** - * 认领时间 - */ - @TableField(value = "CLAIM_TIME_") - private Date claimTime; - - /** - * 结束时间 - */ - @TableField(value = "END_TIME_") - private Date endTime; - - /** - * 持续时间 - */ - @TableField(value = "DURATION_") - private Long duration; - - /** - * 删除原因 - */ - @TableField(value = "DELETE_REASON_") - private String deleteReason; - - /** - * 优先级 - */ - @TableField(value = "PRIORITY_") - private Long priority; - - /** - * 到期时间 - */ - @TableField(value = "DUE_DATE_") - private Date dueDate; - - /** - * - */ - @TableField(value = "FORM_KEY_") - private String formKey; - - /** - * 分类 - */ - @TableField(value = "CATEGORY_") - private String category; - - /** - * 最后修改时间 - */ - @TableField(value = "LAST_UPDATED_TIME_") - private Date lastUpdatedTime; - - /** - * 租户id - */ - @TableField(value = "TENANT_ID_") - private String tenantId; - - -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/WfCategory.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/FlowCategory.java similarity index 56% rename from ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/WfCategory.java rename to ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/FlowCategory.java index 94a7cf500..2ec297c5a 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/WfCategory.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/FlowCategory.java @@ -1,6 +1,7 @@ package org.dromara.workflow.domain; import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableLogic; import com.baomidou.mybatisplus.annotation.TableName; import lombok.Data; import lombok.EqualsAndHashCode; @@ -16,37 +17,42 @@ import java.io.Serial; */ @Data @EqualsAndHashCode(callSuper = true) -@TableName("wf_category") -public class WfCategory extends TenantEntity { +@TableName("flow_category") +public class FlowCategory extends TenantEntity { @Serial private static final long serialVersionUID = 1L; /** - * 主键 + * 流程分类ID */ - @TableId(value = "id") - private Long id; + @TableId(value = "category_id") + private Long categoryId; /** - * 分类名称 + * 父流程分类id */ - private String categoryName; + private Long parentId; /** - * 分类编码 + * 祖级列表 */ - private String categoryCode; + private String ancestors; /** - * 父级id + * 流程分类名称 */ - private Long parentId; + private String categoryName; /** - * 排序 + * 显示顺序 */ - private Long sortNum; + private Long orderNum; + /** + * 删除标志(0代表存在 2代表删除) + */ + @TableLogic + private String delFlag; } diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/WfDefinitionConfig.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/WfDefinitionConfig.java deleted file mode 100644 index 11dcaa081..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/WfDefinitionConfig.java +++ /dev/null @@ -1,56 +0,0 @@ -package org.dromara.workflow.domain; - -import org.dromara.common.mybatis.core.domain.BaseEntity; -import com.baomidou.mybatisplus.annotation.*; -import lombok.Data; -import lombok.EqualsAndHashCode; - -import java.io.Serial; - -/** - * 流程定义配置对象 wf_definition_config - * - * @author may - * @date 2024-03-18 - */ -@Data -@EqualsAndHashCode(callSuper = true) -@TableName("wf_definition_config") -public class WfDefinitionConfig extends BaseEntity { - - @Serial - private static final long serialVersionUID = 1L; - - /** - * 主键 - */ - @TableId(value = "id") - private Long id; - - /** - * 表名 - */ - private String tableName; - - /** - * 流程定义ID - */ - private String definitionId; - - /** - * 流程KEY - */ - private String processKey; - - /** - * 流程版本 - */ - private Integer version; - - /** - * 备注 - */ - private String remark; - - -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/WfFormManage.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/WfFormManage.java deleted file mode 100644 index 47f0d7a58..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/WfFormManage.java +++ /dev/null @@ -1,51 +0,0 @@ -package org.dromara.workflow.domain; - -import org.dromara.common.tenant.core.TenantEntity; -import com.baomidou.mybatisplus.annotation.*; -import lombok.Data; -import lombok.EqualsAndHashCode; - -import java.io.Serial; - -/** - * 表单管理对象 wf_form_manage - * - * @author may - * @date 2024-03-29 - */ -@Data -@EqualsAndHashCode(callSuper = true) -@TableName("wf_form_manage") -public class WfFormManage extends TenantEntity { - - @Serial - private static final long serialVersionUID = 1L; - - /** - * 主键 - */ - @TableId(value = "id") - private Long id; - - /** - * 表单名称 - */ - private String formName; - - /** - * 表单类型 - */ - private String formType; - - /** - * 路由地址/表单ID - */ - private String router; - - /** - * 备注 - */ - private String remark; - - -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/WfNodeConfig.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/WfNodeConfig.java deleted file mode 100644 index 999425f53..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/WfNodeConfig.java +++ /dev/null @@ -1,61 +0,0 @@ -package org.dromara.workflow.domain; - -import org.dromara.common.tenant.core.TenantEntity; -import com.baomidou.mybatisplus.annotation.*; -import lombok.Data; -import lombok.EqualsAndHashCode; - -import java.io.Serial; - -/** - * 节点配置对象 wf_node_config - * - * @author may - * @date 2024-03-30 - */ -@Data -@EqualsAndHashCode(callSuper = true) -@TableName("wf_node_config") -public class WfNodeConfig extends TenantEntity { - - @Serial - private static final long serialVersionUID = 1L; - - /** - * 主键 - */ - @TableId(value = "id") - private Long id; - - /** - * 表单id - */ - private Long formId; - - /** - * 表单类型 - */ - private String formType; - - /** - * 节点名称 - */ - private String nodeName; - - /** - * 节点id - */ - private String nodeId; - - /** - * 流程定义id - */ - private String definitionId; - - /** - * 是否为申请人节点 (0是 1否) - */ - private String applyUserTask; - - -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/WfTaskBackNode.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/WfTaskBackNode.java deleted file mode 100644 index 6f5972794..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/WfTaskBackNode.java +++ /dev/null @@ -1,61 +0,0 @@ -package org.dromara.workflow.domain; - -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; -import lombok.Data; -import lombok.EqualsAndHashCode; -import org.dromara.common.tenant.core.TenantEntity; - -import java.io.Serial; - -/** - * 节点驳回记录 wf_task_back_node - * - * @author may - * @date 2024-03-13 - */ -@Data -@EqualsAndHashCode(callSuper = true) -@TableName("wf_task_back_node") -public class WfTaskBackNode extends TenantEntity { - - @Serial - private static final long serialVersionUID = 1L; - - /** - * 主键 - */ - @TableId(value = "id") - private Long id; - - /** - * 实例id - */ - private String instanceId; - - /** - * 节点id - */ - private String nodeId; - - /** - * 节点名称 - */ - private String nodeName; - - /** - * 排序 - */ - private Integer orderNo; - - /** - * 节点类型 - */ - private String taskType; - - /** - * 办理人 - */ - private String assignee; - -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/AddMultiBo.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/AddMultiBo.java deleted file mode 100644 index 320ec64ca..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/AddMultiBo.java +++ /dev/null @@ -1,40 +0,0 @@ -package org.dromara.workflow.domain.bo; - -import jakarta.validation.constraints.NotBlank; -import jakarta.validation.constraints.NotEmpty; -import lombok.Data; -import org.dromara.common.core.validate.AddGroup; - -import java.io.Serial; -import java.io.Serializable; -import java.util.List; - -/** - * 加签参数请求 - * - * @author may - */ -@Data -public class AddMultiBo implements Serializable { - - @Serial - private static final long serialVersionUID = 1L; - - /** - * 任务ID - */ - @NotBlank(message = "任务ID不能为空", groups = AddGroup.class) - private String taskId; - - /** - * 加签人员id - */ - @NotEmpty(message = "加签人员不能为空", groups = AddGroup.class) - private List assignees; - - /** - * 加签人员名称 - */ - @NotEmpty(message = "加签人员不能为空", groups = AddGroup.class) - private List assigneeNames; -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/BackProcessBo.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/BackProcessBo.java index d0f436925..80b9691d9 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/BackProcessBo.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/BackProcessBo.java @@ -1,12 +1,16 @@ package org.dromara.workflow.domain.bo; import jakarta.validation.constraints.NotBlank; +import jakarta.validation.constraints.NotNull; import lombok.Data; import org.dromara.common.core.validate.AddGroup; import java.io.Serial; import java.io.Serializable; +import java.util.HashMap; import java.util.List; +import java.util.Map; +import java.util.Objects; /** @@ -23,8 +27,8 @@ public class BackProcessBo implements Serializable { /** * 任务ID */ - @NotBlank(message = "任务ID不能为空", groups = AddGroup.class) - private String taskId; + @NotNull(message = "任务ID不能为空", groups = AddGroup.class) + private Long taskId; /** * 消息类型 @@ -35,10 +39,28 @@ public class BackProcessBo implements Serializable { * 驳回的节点id(目前未使用,直接驳回到申请人) */ @NotBlank(message = "驳回的节点不能为空", groups = AddGroup.class) - private String targetActivityId; + private String nodeCode; /** * 办理意见 */ private String message; + + /** + * 通知 + */ + private String notice; + + /** + * 流程变量 + */ + private Map variables; + + public Map getVariables() { + if (variables == null) { + return new HashMap<>(16); + } + variables.entrySet().removeIf(entry -> Objects.isNull(entry.getValue())); + return variables; + } } diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/CompleteTaskBo.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/CompleteTaskBo.java index 062390551..9fdf48478 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/CompleteTaskBo.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/CompleteTaskBo.java @@ -1,9 +1,8 @@ package org.dromara.workflow.domain.bo; -import jakarta.validation.constraints.NotBlank; +import jakarta.validation.constraints.NotNull; import lombok.Data; import org.dromara.common.core.validate.AddGroup; -import org.dromara.workflow.domain.vo.WfCopy; import java.io.Serial; import java.io.Serializable; @@ -26,8 +25,8 @@ public class CompleteTaskBo implements Serializable { /** * 任务id */ - @NotBlank(message = "任务id不能为空", groups = {AddGroup.class}) - private String taskId; + @NotNull(message = "任务id不能为空", groups = {AddGroup.class}) + private Long taskId; /** * 附件id @@ -37,7 +36,7 @@ public class CompleteTaskBo implements Serializable { /** * 抄送人员 */ - private List wfCopyList; + private List flowCopyList; /** * 消息类型 @@ -49,11 +48,22 @@ public class CompleteTaskBo implements Serializable { */ private String message; + /** + * 消息通知 + */ + private String notice; + /** * 流程变量 */ private Map variables; + /** + * 扩展变量(此处为逗号分隔的ossId) + * @return + */ + private String ext; + public Map getVariables() { if (variables == null) { return new HashMap<>(16); diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/DelegateBo.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/DelegateBo.java deleted file mode 100644 index a6846a6d6..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/DelegateBo.java +++ /dev/null @@ -1,38 +0,0 @@ -package org.dromara.workflow.domain.bo; - -import jakarta.validation.constraints.NotBlank; -import lombok.Data; -import org.dromara.common.core.validate.AddGroup; - -import java.io.Serial; -import java.io.Serializable; - -/** - * 委派任务请求对象 - * - * @author may - */ -@Data -public class DelegateBo implements Serializable { - - @Serial - private static final long serialVersionUID = 1L; - - /** - * 委派人id - */ - @NotBlank(message = "委派人id不能为空", groups = {AddGroup.class}) - private String userId; - - /** - * 委派人名称 - */ - @NotBlank(message = "委派人名称不能为空", groups = {AddGroup.class}) - private String nickName; - - /** - * 任务id - */ - @NotBlank(message = "任务id不能为空", groups = {AddGroup.class}) - private String taskId; -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/DeleteMultiBo.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/DeleteMultiBo.java deleted file mode 100644 index e533167d9..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/DeleteMultiBo.java +++ /dev/null @@ -1,52 +0,0 @@ -package org.dromara.workflow.domain.bo; - -import jakarta.validation.constraints.NotBlank; -import jakarta.validation.constraints.NotEmpty; -import lombok.Data; -import org.dromara.common.core.validate.AddGroup; - -import java.io.Serial; -import java.io.Serializable; -import java.util.List; - -/** - * 减签参数请求 - * - * @author may - */ -@Data -public class DeleteMultiBo implements Serializable { - - @Serial - private static final long serialVersionUID = 1L; - - /** - * 任务ID - */ - @NotBlank(message = "任务ID不能为空", groups = AddGroup.class) - private String taskId; - - /** - * 减签人员 - */ - @NotEmpty(message = "减签人员不能为空", groups = AddGroup.class) - private List taskIds; - - /** - * 执行id - */ - @NotEmpty(message = "执行id不能为空", groups = AddGroup.class) - private List executionIds; - - /** - * 人员id - */ - @NotEmpty(message = "减签人员id不能为空", groups = AddGroup.class) - private List assigneeIds; - - /** - * 人员名称 - */ - @NotEmpty(message = "减签人员不能为空", groups = AddGroup.class) - private List assigneeNames; -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/ProcessInvalidBo.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/FlowCancelBo.java similarity index 56% rename from ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/ProcessInvalidBo.java rename to ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/FlowCancelBo.java index 41e51c2a6..31742ea79 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/ProcessInvalidBo.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/FlowCancelBo.java @@ -8,24 +8,24 @@ import java.io.Serial; import java.io.Serializable; /** - * 流程实例作废请求对象 + * 撤销任务请求对象 * * @author may */ @Data -public class ProcessInvalidBo implements Serializable { +public class FlowCancelBo implements Serializable { @Serial private static final long serialVersionUID = 1L; /** - * 业务id + * 任务ID */ - @NotBlank(message = "业务id不能为空", groups = {AddGroup.class}) - private String businessKey; + @NotBlank(message = "业务ID不能为空", groups = AddGroup.class) + private String businessId; /** - * 作废原因 + * 办理意见 */ - private String deleteReason; + private String message; } diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/WfCategoryBo.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/FlowCategoryBo.java similarity index 48% rename from ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/WfCategoryBo.java rename to ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/FlowCategoryBo.java index 69608fda3..fd626eb0d 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/WfCategoryBo.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/FlowCategoryBo.java @@ -8,7 +8,7 @@ import lombok.EqualsAndHashCode; import org.dromara.common.core.validate.AddGroup; import org.dromara.common.core.validate.EditGroup; import org.dromara.common.mybatis.core.domain.BaseEntity; -import org.dromara.workflow.domain.WfCategory; +import org.dromara.workflow.domain.FlowCategory; /** * 流程分类业务对象 wf_category @@ -18,37 +18,30 @@ import org.dromara.workflow.domain.WfCategory; */ @Data @EqualsAndHashCode(callSuper = true) -@AutoMapper(target = WfCategory.class, reverseConvertGenerate = false) -public class WfCategoryBo extends BaseEntity { +@AutoMapper(target = FlowCategory.class, reverseConvertGenerate = false) +public class FlowCategoryBo extends BaseEntity { /** - * 主键 + * 流程分类ID */ - @NotNull(message = "主键不能为空", groups = {EditGroup.class}) - private Long id; + @NotNull(message = "流程分类ID不能为空", groups = { EditGroup.class }) + private Long categoryId; /** - * 分类名称 + * 父流程分类id */ - @NotBlank(message = "分类名称不能为空", groups = {AddGroup.class, EditGroup.class}) - private String categoryName; - - /** - * 分类编码 - */ - @NotBlank(message = "分类编码不能为空", groups = {AddGroup.class, EditGroup.class}) - private String categoryCode; + @NotNull(message = "父流程分类id不能为空", groups = {AddGroup.class, EditGroup.class}) + private Long parentId; /** - * 父级id + * 流程分类名称 */ - @NotNull(message = "父级id不能为空", groups = {AddGroup.class, EditGroup.class}) - private Long parentId; + @NotBlank(message = "流程分类名称不能为空", groups = {AddGroup.class, EditGroup.class}) + private String categoryName; /** - * 排序 + * 显示顺序 */ - private Long sortNum; - + private Long orderNum; } diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/WfCopy.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/FlowCopyBo.java similarity index 77% rename from ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/WfCopy.java rename to ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/FlowCopyBo.java index 88a5a2184..a45e52109 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/WfCopy.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/FlowCopyBo.java @@ -1,17 +1,18 @@ -package org.dromara.workflow.domain.vo; +package org.dromara.workflow.domain.bo; import lombok.Data; import java.io.Serial; import java.io.Serializable; + /** * 抄送 * * @author may */ @Data -public class WfCopy implements Serializable { +public class FlowCopyBo implements Serializable { @Serial private static final long serialVersionUID = 1L; diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/ProcessInstanceBo.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/FlowInstanceBo.java similarity index 49% rename from ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/ProcessInstanceBo.java rename to ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/FlowInstanceBo.java index 2833b3ecb..fb1fe611b 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/ProcessInstanceBo.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/FlowInstanceBo.java @@ -4,6 +4,7 @@ import lombok.Data; import java.io.Serial; import java.io.Serializable; +import java.util.List; /** * 流程实例请求对象 @@ -11,20 +12,20 @@ import java.io.Serializable; * @author may */ @Data -public class ProcessInstanceBo implements Serializable { +public class FlowInstanceBo implements Serializable { @Serial private static final long serialVersionUID = 1L; /** - * 流程名称 + * 流程定义名称 */ - private String name; + private String flowName; /** - * 流程key + * 流程定义编码 */ - private String key; + private String flowCode; /** * 任务发起人 @@ -34,10 +35,21 @@ public class ProcessInstanceBo implements Serializable { /** * 业务id */ - private String businessKey; + private String businessId; /** - * 模型分类 + * 流程分类id */ - private String categoryCode; + private String category; + + /** + * 任务名称 + */ + private String nodeName; + + /** + * 申请人Ids + */ + private List createByIds; + } diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/TransmitBo.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/FlowInvalidBo.java similarity index 48% rename from ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/TransmitBo.java rename to ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/FlowInvalidBo.java index 3eb6609fd..297bd00d9 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/TransmitBo.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/FlowInvalidBo.java @@ -1,6 +1,6 @@ package org.dromara.workflow.domain.bo; -import jakarta.validation.constraints.NotBlank; +import jakarta.validation.constraints.NotNull; import lombok.Data; import org.dromara.common.core.validate.AddGroup; @@ -8,27 +8,21 @@ import java.io.Serial; import java.io.Serializable; /** - * 终转办务请求对象 + * 作废请求对象 * * @author may */ @Data -public class TransmitBo implements Serializable { +public class FlowInvalidBo implements Serializable { @Serial private static final long serialVersionUID = 1L; /** - * 任务id + * 流程实例id */ - @NotBlank(message = "任务id为空", groups = AddGroup.class) - private String taskId; - - /** - * 转办人id - */ - @NotBlank(message = "转办人不能为空", groups = AddGroup.class) - private String userId; + @NotNull(message = "流程实例id为空", groups = AddGroup.class) + private Long id; /** * 审批意见 diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/TaskBo.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/FlowTaskBo.java similarity index 41% rename from ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/TaskBo.java rename to ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/FlowTaskBo.java index 303747939..64dd08255 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/TaskBo.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/FlowTaskBo.java @@ -4,6 +4,7 @@ import lombok.Data; import java.io.Serial; import java.io.Serializable; +import java.util.List; /** * 任务请求对象 @@ -11,7 +12,7 @@ import java.io.Serializable; * @author may */ @Data -public class TaskBo implements Serializable { +public class FlowTaskBo implements Serializable { @Serial private static final long serialVersionUID = 1L; @@ -19,15 +20,36 @@ public class TaskBo implements Serializable { /** * 任务名称 */ - private String name; + private String nodeName; /** * 流程定义名称 */ - private String processDefinitionName; + private String flowName; /** - * 流程定义key + * 流程定义编码 */ - private String processDefinitionKey; + private String flowCode; + + /** + * 流程分类id + */ + private String category; + + /** + * 流程实例id + */ + private Long instanceId; + + /** + * 权限列表 + */ + private List permissionList; + + /** + * 申请人Ids + */ + private List createByIds; + } diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/TerminationBo.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/FlowTerminationBo.java similarity index 66% rename from ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/TerminationBo.java rename to ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/FlowTerminationBo.java index 8f2206e82..897fc21ee 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/TerminationBo.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/FlowTerminationBo.java @@ -1,6 +1,6 @@ package org.dromara.workflow.domain.bo; -import jakarta.validation.constraints.NotBlank; +import jakarta.validation.constraints.NotNull; import lombok.Data; import org.dromara.common.core.validate.AddGroup; @@ -13,7 +13,7 @@ import java.io.Serializable; * @author may */ @Data -public class TerminationBo implements Serializable { +public class FlowTerminationBo implements Serializable { @Serial private static final long serialVersionUID = 1L; @@ -21,8 +21,8 @@ public class TerminationBo implements Serializable { /** * 任务id */ - @NotBlank(message = "任务id为空", groups = AddGroup.class) - private String taskId; + @NotNull(message = "任务id为空", groups = AddGroup.class) + private Long taskId; /** * 审批意见 diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/ModelBo.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/ModelBo.java deleted file mode 100644 index efe9acddb..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/ModelBo.java +++ /dev/null @@ -1,66 +0,0 @@ -package org.dromara.workflow.domain.bo; - -import jakarta.validation.constraints.NotBlank; -import jakarta.validation.constraints.Pattern; -import lombok.Data; -import org.dromara.common.core.validate.AddGroup; -import org.dromara.common.core.validate.EditGroup; -import org.dromara.workflow.common.constant.FlowConstant; - -import java.io.Serial; -import java.io.Serializable; - -/** - * 模型请求对象 - * - * @author may - */ -@Data -public class ModelBo implements Serializable { - - @Serial - private static final long serialVersionUID = 1L; - - /** - * 模型id - */ - @NotBlank(message = "模型ID不能为空", groups = {EditGroup.class}) - private String id; - - /** - * 模型名称 - */ - @NotBlank(message = "模型名称不能为空", groups = {AddGroup.class}) - private String name; - - /** - * 模型标识key - */ - @NotBlank(message = "模型标识key不能为空", groups = {AddGroup.class}) - @Pattern(regexp = FlowConstant.MODEL_KEY_PATTERN, message = "模型标识key只能字符或者下划线开头", groups = {AddGroup.class}) - private String key; - - /** - * 模型分类 - */ - @NotBlank(message = "模型分类不能为空", groups = {AddGroup.class}) - private String categoryCode; - - /** - * 模型XML - */ - @NotBlank(message = "模型XML不能为空", groups = {AddGroup.class}) - private String xml; - - /** - * 模型SVG图片 - */ - @NotBlank(message = "模型SVG不能为空", groups = {EditGroup.class}) - private String svg; - - /** - * 备注 - */ - private String description; - -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/StartProcessBo.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/StartProcessBo.java index 7af7935e6..ea21a81e7 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/StartProcessBo.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/StartProcessBo.java @@ -26,13 +26,13 @@ public class StartProcessBo implements Serializable { * 业务唯一值id */ @NotBlank(message = "业务ID不能为空", groups = {AddGroup.class}) - private String businessKey; + private String businessId; /** - * 表名 + * 流程定义编码 */ - @NotBlank(message = "表名不能为空", groups = {AddGroup.class}) - private String tableName; + @NotBlank(message = "流程定义编码不能为空", groups = {AddGroup.class}) + private String flowCode; /** * 流程变量,前端会提交一个元素{'entity': {业务详情数据对象}} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/TaskOperationBo.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/TaskOperationBo.java new file mode 100644 index 000000000..4348e310c --- /dev/null +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/TaskOperationBo.java @@ -0,0 +1,48 @@ +package org.dromara.workflow.domain.bo; + +import jakarta.validation.constraints.NotNull; +import lombok.Data; +import org.dromara.common.core.validate.AddGroup; +import org.dromara.common.core.validate.EditGroup; + +import java.io.Serial; +import java.io.Serializable; +import java.util.List; + + +/** + * 任务操作业务对象,用于描述任务委派、转办、加签等操作的必要参数 + * 包含了用户ID、任务ID、任务相关的消息、以及加签/减签的用户ID + * + * @author AprilWind + */ +@Data +public class TaskOperationBo implements Serializable { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 委派/转办人的用户ID(必填,准对委派/转办人操作) + */ + @NotNull(message = "委派/转办人id不能为空", groups = {AddGroup.class}) + private String userId; + + /** + * 加签/减签人的用户ID列表(必填,针对加签/减签操作) + */ + @NotNull(message = "加签/减签id不能为空", groups = {EditGroup.class}) + private List userIds; + + /** + * 任务ID(必填) + */ + @NotNull(message = "任务id不能为空") + private Long taskId; + + /** + * 意见或备注信息(可选) + */ + private String message; + +} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/TaskUrgingBo.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/TaskUrgingBo.java deleted file mode 100644 index 20856efa9..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/TaskUrgingBo.java +++ /dev/null @@ -1,34 +0,0 @@ -package org.dromara.workflow.domain.bo; - -import lombok.Data; - -import java.io.Serial; -import java.io.Serializable; -import java.util.List; - -/** - * 任务催办 - * - * @author may - */ -@Data -public class TaskUrgingBo implements Serializable { - - @Serial - private static final long serialVersionUID = 1L; - - /** - * 流程实例id - */ - private String processInstanceId; - - /** - * 消息类型 - */ - private List messageType; - - /** - * 催办内容(为空默认系统内置信息) - */ - private String message; -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/TestLeaveBo.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/TestLeaveBo.java index 877e98160..a1a4b5968 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/TestLeaveBo.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/TestLeaveBo.java @@ -53,7 +53,6 @@ public class TestLeaveBo extends BaseEntity { /** * 请假天数 */ - @NotNull(message = "请假天数不能为空", groups = {AddGroup.class, EditGroup.class}) private Integer leaveDays; /** diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/WfDefinitionConfigBo.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/WfDefinitionConfigBo.java deleted file mode 100644 index fac17709a..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/WfDefinitionConfigBo.java +++ /dev/null @@ -1,59 +0,0 @@ -package org.dromara.workflow.domain.bo; - -import org.dromara.workflow.domain.WfDefinitionConfig; -import org.dromara.common.mybatis.core.domain.BaseEntity; -import org.dromara.common.core.validate.AddGroup; -import org.dromara.common.core.validate.EditGroup; -import io.github.linpeilie.annotations.AutoMapper; -import lombok.Data; -import lombok.EqualsAndHashCode; -import jakarta.validation.constraints.*; - -/** - * 流程定义配置业务对象 wf_form_definition - * - * @author may - * @date 2024-03-18 - */ -@Data -@EqualsAndHashCode(callSuper = true) -@AutoMapper(target = WfDefinitionConfig.class, reverseConvertGenerate = false) -public class WfDefinitionConfigBo extends BaseEntity { - - /** - * 主键 - */ - @NotNull(message = "主键不能为空", groups = {EditGroup.class}) - private Long id; - - /** - * 表名 - */ - @NotBlank(message = "表名不能为空", groups = {AddGroup.class}) - private String tableName; - - /** - * 流程定义ID - */ - @NotBlank(message = "流程定义ID不能为空", groups = {AddGroup.class}) - private String definitionId; - - /** - * 流程KEY - */ - @NotBlank(message = "流程KEY不能为空", groups = {AddGroup.class}) - private String processKey; - - /** - * 流程版本 - */ - @NotNull(message = "流程版本不能为空", groups = {AddGroup.class}) - private Integer version; - - /** - * 备注 - */ - private String remark; - - -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/WfFormManageBo.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/WfFormManageBo.java deleted file mode 100644 index 8afc286db..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/WfFormManageBo.java +++ /dev/null @@ -1,53 +0,0 @@ -package org.dromara.workflow.domain.bo; - -import org.dromara.workflow.domain.WfFormManage; -import org.dromara.common.mybatis.core.domain.BaseEntity; -import org.dromara.common.core.validate.AddGroup; -import org.dromara.common.core.validate.EditGroup; -import io.github.linpeilie.annotations.AutoMapper; -import lombok.Data; -import lombok.EqualsAndHashCode; -import jakarta.validation.constraints.*; - -/** - * 表单管理业务对象 wf_form_manage - * - * @author may - * @date 2024-03-29 - */ -@Data -@EqualsAndHashCode(callSuper = true) -@AutoMapper(target = WfFormManage.class, reverseConvertGenerate = false) -public class WfFormManageBo extends BaseEntity { - - /** - * 主键 - */ - @NotNull(message = "主键不能为空", groups = { EditGroup.class }) - private Long id; - - /** - * 表单名称 - */ - @NotBlank(message = "表单名称不能为空", groups = { AddGroup.class, EditGroup.class }) - private String formName; - - /** - * 表单类型 - */ - @NotBlank(message = "表单类型不能为空", groups = { AddGroup.class, EditGroup.class }) - private String formType; - /** - * 路由地址/表单ID - */ - @NotBlank(message = "路由地址/表单ID不能为空", groups = { AddGroup.class, EditGroup.class }) - private String router; - - - /** - * 备注 - */ - private String remark; - - -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/WfNodeConfigBo.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/WfNodeConfigBo.java deleted file mode 100644 index de518d3dd..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/WfNodeConfigBo.java +++ /dev/null @@ -1,63 +0,0 @@ -package org.dromara.workflow.domain.bo; - -import org.dromara.workflow.domain.WfNodeConfig; -import org.dromara.common.mybatis.core.domain.BaseEntity; -import org.dromara.common.core.validate.AddGroup; -import org.dromara.common.core.validate.EditGroup; -import io.github.linpeilie.annotations.AutoMapper; -import lombok.Data; -import lombok.EqualsAndHashCode; -import jakarta.validation.constraints.*; - -/** - * 节点配置业务对象 wf_node_config - * - * @author may - * @date 2024-03-30 - */ -@Data -@EqualsAndHashCode(callSuper = true) -@AutoMapper(target = WfNodeConfig.class, reverseConvertGenerate = false) -public class WfNodeConfigBo extends BaseEntity { - - /** - * 主键 - */ - @NotNull(message = "主键不能为空", groups = {EditGroup.class}) - private Long id; - - /** - * 表单id - */ - private Long formId; - - /** - * 表单类型 - */ - private String formType; - - /** - * 节点名称 - */ - @NotBlank(message = "节点名称不能为空", groups = {AddGroup.class, EditGroup.class}) - private String nodeName; - - /** - * 节点id - */ - @NotBlank(message = "节点id不能为空", groups = {AddGroup.class, EditGroup.class}) - private String nodeId; - - /** - * 流程定义id - */ - @NotBlank(message = "流程定义id不能为空", groups = {AddGroup.class, EditGroup.class}) - private String definitionId; - - /** - * 是否为申请人节点 (0是 1否) - */ - @NotBlank(message = "是否为申请人节点不能为空", groups = {AddGroup.class, EditGroup.class}) - private String applyUserTask; - -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/ActHistoryInfoVo.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/ActHistoryInfoVo.java deleted file mode 100644 index e4c1142ac..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/ActHistoryInfoVo.java +++ /dev/null @@ -1,93 +0,0 @@ -package org.dromara.workflow.domain.vo; - -import lombok.Data; -import org.dromara.common.translation.annotation.Translation; -import org.dromara.common.translation.constant.TransConstant; -import org.flowable.engine.task.Attachment; - -import java.io.Serial; -import java.io.Serializable; -import java.util.Date; -import java.util.List; - -/** - * 流程审批记录视图 - * - * @author may - */ -@Data -public class ActHistoryInfoVo implements Serializable { - - @Serial - private static final long serialVersionUID = 1L; - /** - * 任务id - */ - private String id; - /** - * 节点id - */ - private String taskDefinitionKey; - /** - * 任务名称 - */ - private String name; - /** - * 流程实例id - */ - private String processInstanceId; - /** - * 版本 - */ - private Integer version; - /** - * 开始时间 - */ - private Date startTime; - /** - * 结束时间 - */ - private Date endTime; - /** - * 运行时长 - */ - private String runDuration; - /** - * 状态 - */ - private String status; - /** - * 状态 - */ - private String statusName; - /** - * 办理人id - */ - private String assignee; - - /** - * 办理人名称 - */ - @Translation(type = TransConstant.USER_ID_TO_NICKNAME, mapper = "assignee") - private String nickName; - - /** - * 办理人id - */ - private String owner; - - /** - * 审批信息id - */ - private String commentId; - - /** - * 审批信息 - */ - private String comment; - - /** - * 审批附件 - */ - private List attachmentList; -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/WfCategoryVo.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/FlowCategoryVo.java similarity index 44% rename from ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/WfCategoryVo.java rename to ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/FlowCategoryVo.java index 362f64625..2c72143cb 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/WfCategoryVo.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/FlowCategoryVo.java @@ -4,10 +4,13 @@ import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; import com.alibaba.excel.annotation.ExcelProperty; import io.github.linpeilie.annotations.AutoMapper; import lombok.Data; -import org.dromara.workflow.domain.WfCategory; +import org.dromara.common.excel.annotation.ExcelDictFormat; +import org.dromara.common.excel.convert.ExcelDictConvert; +import org.dromara.workflow.domain.FlowCategory; import java.io.Serial; import java.io.Serializable; +import java.util.Date; /** @@ -18,41 +21,49 @@ import java.io.Serializable; */ @Data @ExcelIgnoreUnannotated -@AutoMapper(target = WfCategory.class) -public class WfCategoryVo implements Serializable { +@AutoMapper(target = FlowCategory.class) +public class FlowCategoryVo implements Serializable { @Serial private static final long serialVersionUID = 1L; /** - * 主键 + * 流程分类ID */ - @ExcelProperty(value = "主键") - private Long id; + @ExcelProperty(value = "流程分类ID") + private Long categoryId; /** - * 分类名称 + * 父级id */ - @ExcelProperty(value = "分类名称") - private String categoryName; + private Long parentId; /** - * 分类编码 + * 父类别名称 */ - @ExcelProperty(value = "分类编码") - private String categoryCode; + private String parentName; /** - * 父级id + * 祖级列表 */ - @ExcelProperty(value = "父级id") - private Long parentId; + private String ancestors; /** - * 排序 + * 流程分类名称 */ - @ExcelProperty(value = "排序") - private Long sortNum; + @ExcelProperty(value = "流程分类名称") + private String categoryName; + /** + * 显示顺序 + */ + @ExcelProperty(value = "显示顺序") + private Long orderNum; + + /** + * 创建时间 + */ + @ExcelProperty(value = "创建时间") + private Date createTime; } diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/ProcessInstanceVo.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/FlowDefinitionVo.java similarity index 32% rename from ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/ProcessInstanceVo.java rename to ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/FlowDefinitionVo.java index ab3e7a130..aef75739a 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/ProcessInstanceVo.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/FlowDefinitionVo.java @@ -1,100 +1,104 @@ package org.dromara.workflow.domain.vo; import lombok.Data; +import org.dromara.common.translation.annotation.Translation; +import org.dromara.workflow.common.constant.FlowConstant; import java.io.Serial; import java.io.Serializable; import java.util.Date; -import java.util.List; /** - * 流程实例视图 + * 流程定义视图 * * @author may */ @Data -public class ProcessInstanceVo implements Serializable { +public class FlowDefinitionVo implements Serializable { @Serial private static final long serialVersionUID = 1L; + private Long id; + /** - * 流程实例id + * 创建时间 */ - private String id; + private Date createTime; /** - * 流程定义id + * 更新时间 */ - private String processDefinitionId; + private Date updateTime; /** - * 流程定义名称 + * 租户ID */ - private String processDefinitionName; + private String tenantId; /** - * 流程定义key + * 删除标记 */ - private String processDefinitionKey; + private String delFlag; /** - * 流程定义版本 + * 流程定义编码 */ - private Integer processDefinitionVersion; + private String flowCode; /** - * 部署id + * 流程定义名称 */ - private String deploymentId; + private String flowName; /** - * 业务id + * 流程分类id */ - private String businessKey; + private String category; /** - * 是否挂起 + * 流程分类名称 */ - private Boolean isSuspended; + @Translation(type = FlowConstant.CATEGORY_ID_TO_NAME, mapper = "category") + private String categoryName; /** - * 租户id + * 流程版本 */ - private String tenantId; + private String version; /** - * 启动时间 + * 是否发布(0未发布 1已发布 9失效) */ - private Date startTime; + private Integer isPublish; /** - * 结束时间 + * 审批表单是否自定义(Y是 N否) */ - private Date endTime; + private String formCustom; /** - * 启动人id + * 审批表单路径 */ - private String startUserId; + private String formPath; /** - * 流程状态 + * 流程激活状态(0挂起 1激活) */ - private String businessStatus; + private Integer activityStatus; /** - * 流程状态 + * 监听器类型 */ - private String businessStatusName; + private String listenerType; /** - * 待办任务集合 + * 监听器路径 */ - private List taskVoList; + private String listenerPath; /** - * 节点配置 + * 扩展字段,预留给业务系统使用 */ - private WfNodeConfigVo wfNodeConfigVo; + private String ext; } diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/FlowHisTaskVo.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/FlowHisTaskVo.java new file mode 100644 index 000000000..8776a76b8 --- /dev/null +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/FlowHisTaskVo.java @@ -0,0 +1,244 @@ +package org.dromara.workflow.domain.vo; + +import lombok.Data; +import org.dromara.common.core.utils.DateUtils; +import org.dromara.common.translation.annotation.Translation; +import org.dromara.common.translation.constant.TransConstant; +import org.dromara.warm.flow.core.enums.CooperateType; +import org.dromara.workflow.common.constant.FlowConstant; + +import java.io.Serial; +import java.io.Serializable; +import java.util.Date; +import java.util.List; + +/** + * 历史任务视图 + * + * @author may + */ +@Data +public class FlowHisTaskVo implements Serializable { + + @Serial + private static final long serialVersionUID = 1L; + + private Long id; + + /** + * 创建时间 + */ + private Date createTime; + + /** + * 更新时间 + */ + private Date updateTime; + + /** + * 租户ID + */ + private String tenantId; + + /** + * 删除标记 + */ + private String delFlag; + + /** + * 对应flow_definition表的id + */ + private Long definitionId; + + /** + * 流程定义名称 + */ + private String flowName; + + /** + * 流程实例表id + */ + private Long instanceId; + + /** + * 任务表id + */ + private Long taskId; + + /** + * 协作方式(1审批 2转办 3委派 4会签 5票签 6加签 7减签) + */ + private Integer cooperateType; + + /** + * 协作方式(1审批 2转办 3委派 4会签 5票签 6加签 7减签) + */ + private String cooperateTypeName; + + /** + * 业务id + */ + private String businessId; + + /** + * 开始节点编码 + */ + private String nodeCode; + + /** + * 开始节点名称 + */ + private String nodeName; + + /** + * 开始节点类型(0开始节点 1中间节点 2结束节点 3互斥网关 4并行网关) + */ + private Integer nodeType; + + /** + * 目标节点编码 + */ + private String targetNodeCode; + + /** + * 结束节点名称 + */ + private String targetNodeName; + + /** + * 审批者 + */ + private String approver; + + /** + * 审批者 + */ + @Translation(type = TransConstant.USER_ID_TO_NICKNAME, mapper = "approver") + private String approveName; + + /** + * 协作人(只有转办、会签、票签、委派) + */ + private String collaborator; + + /** + * 权限标识 permissionFlag的list形式 + */ + private List permissionList; + + /** + * 跳转类型(PASS通过 REJECT退回 NONE无动作) + */ + private String skipType; + + /** + * 流程状态 + */ + private String flowStatus; + + /** + * 任务状态 + */ + private String flowTaskStatus; + + /** + * 流程状态 + */ + private String flowStatusName; + + /** + * 审批意见 + */ + private String message; + + /** + * 业务详情 存业务类的json + */ + private String ext; + + /** + * 创建者 + */ + private String createBy; + + /** + * 申请人 + */ + @Translation(type = TransConstant.USER_ID_TO_NICKNAME, mapper = "createBy") + private String createByName; + + /** + * 流程分类id + */ + private String category; + + /** + * 流程分类名称 + */ + @Translation(type = FlowConstant.CATEGORY_ID_TO_NAME, mapper = "category") + private String categoryName; + + /** + * 审批表单是否自定义(Y是 N否) + */ + private String formCustom; + + /** + * 审批表单路径 + */ + private String formPath; + + /** + * 流程定义编码 + */ + private String flowCode; + + /** + * 流程版本号 + */ + private String version; + + /** + * 运行时长 + */ + private String runDuration; + + /** + * 设置创建时间并计算任务运行时长 + * + * @param createTime 创建时间 + */ + public void setCreateTime(Date createTime) { + this.createTime = createTime; + updateRunDuration(); + } + + /** + * 设置更新时间并计算任务运行时长 + * + * @param updateTime 更新时间 + */ + public void setUpdateTime(Date updateTime) { + this.updateTime = updateTime; + updateRunDuration(); + } + + /** + * 更新运行时长 + */ + private void updateRunDuration() { + // 如果创建时间和更新时间均不为空,计算它们之间的时长 + if (this.updateTime != null && this.createTime != null) { + this.runDuration = DateUtils.getTimeDifference(this.updateTime, this.createTime); + } + } + + /** + * 设置协作方式,并通过协作方式获取名称 + */ + public void setCooperateType(Integer cooperateType) { + this.cooperateType = cooperateType; + this.cooperateTypeName = CooperateType.getValueByKey(cooperateType); + } + +} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/FlowInstanceVo.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/FlowInstanceVo.java new file mode 100644 index 000000000..75543f419 --- /dev/null +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/FlowInstanceVo.java @@ -0,0 +1,137 @@ +package org.dromara.workflow.domain.vo; + +import lombok.Data; +import org.dromara.common.translation.annotation.Translation; +import org.dromara.common.translation.constant.TransConstant; +import org.dromara.workflow.common.constant.FlowConstant; + +import java.util.Date; + +/** + * 流程实例视图 + * + * @author may + */ +@Data +public class FlowInstanceVo { + + private Long id; + + /** + * 创建时间 + */ + private Date createTime; + + /** + * 更新时间 + */ + private Date updateTime; + + /** + * 租户ID + */ + private String tenantId; + + /** + * 删除标记 + */ + private String delFlag; + + /** + * 对应flow_definition表的id + */ + private Long definitionId; + + /** + * 流程定义名称 + */ + private String flowName; + + /** + * 流程定义编码 + */ + private String flowCode; + + /** + * 业务id + */ + private String businessId; + + /** + * 节点类型(0开始节点 1中间节点 2结束节点 3互斥网关 4并行网关) + */ + private Integer nodeType; + + /** + * 流程节点编码 每个流程的nodeCode是唯一的,即definitionId+nodeCode唯一,在数据库层面做了控制 + */ + private String nodeCode; + + /** + * 流程节点名称 + */ + private String nodeName; + + /** + * 流程变量 + */ + private String variable; + + /** + * 流程状态(0待提交 1审批中 2 审批通过 3自动通过 8已完成 9已退回 10失效) + */ + private String flowStatus; + + /** + * 流程状态 + */ + private String flowStatusName; + + /** + * 流程激活状态(0挂起 1激活) + */ + private Integer activityStatus; + + /** + * 审批表单是否自定义(Y是 N否) + */ + private String formCustom; + + /** + * 审批表单路径 + */ + private String formPath; + + /** + * 扩展字段,预留给业务系统使用 + */ + private String ext; + + /** + * 流程定义版本 + */ + private String version; + + /** + * 创建者 + */ + private String createBy; + + /** + * 申请人 + */ + @Translation(type = TransConstant.USER_ID_TO_NICKNAME, mapper = "createBy") + private String createByName; + + /** + * 流程分类id + */ + private String category; + + /** + * 流程分类名称 + */ + @Translation(type = FlowConstant.CATEGORY_ID_TO_NAME, mapper = "category") + private String categoryName; + +} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/TaskVo.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/FlowTaskVo.java similarity index 35% rename from ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/TaskVo.java rename to ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/FlowTaskVo.java index 466e77690..3fb08d954 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/TaskVo.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/FlowTaskVo.java @@ -3,10 +3,14 @@ package org.dromara.workflow.domain.vo; import lombok.Data; import org.dromara.common.translation.annotation.Translation; import org.dromara.common.translation.constant.TransConstant; +import org.dromara.warm.flow.core.entity.User; +import org.dromara.workflow.common.constant.FlowConstant; import java.io.Serial; import java.io.Serializable; +import java.math.BigDecimal; import java.util.Date; +import java.util.List; /** * 任务视图 @@ -14,160 +18,159 @@ import java.util.Date; * @author may */ @Data -public class TaskVo implements Serializable { +public class FlowTaskVo implements Serializable { @Serial private static final long serialVersionUID = 1L; - /** - * 任务id - */ - private String id; + private Long id; /** - * 任务名称 + * 创建时间 */ - private String name; + private Date createTime; /** - * 描述 + * 更新时间 */ - private String description; + private Date updateTime; /** - * 优先级 + * 租户ID */ - private Integer priority; + private String tenantId; /** - * 负责此任务的人员的用户id + * 删除标记 */ - private String owner; + private String delFlag; /** - * 办理人id + * 对应flow_definition表的id */ - private Long assignee; + private Long definitionId; /** - * 办理人 + * 流程实例表id */ - @Translation(type = TransConstant.USER_ID_TO_NICKNAME, mapper = "assignee") - private String assigneeName; - + private Long instanceId; /** - * 流程实例id + * 流程定义名称 */ - private String processInstanceId; + private String flowName; /** - * 执行id + * 业务id */ - private String executionId; + private String businessId; /** - * 无用 + * 节点编码 */ - private String taskDefinitionId; + private String nodeCode; /** - * 流程定义id + * 节点名称 */ - private String processDefinitionId; + private String nodeName; /** - * 创建时间 + * 节点类型(0开始节点 1中间节点 2结束节点 3互斥网关 4并行网关) */ - private Date createTime; + private Integer nodeType; /** - * 已办任务-创建时间 + * 权限标识 permissionFlag的list形式 */ - private Date startTime; + private List permissionList; /** - * 结束时间 + * 流程用户列表 */ - private Date endTime; + private List userList; /** - * 节点id + * 审批表单是否自定义(Y是 N否) */ - private String taskDefinitionKey; + private String formCustom; /** - * 任务截止日期 + * 审批表单 */ - private Date dueDate; + private String formPath; /** - * 流程类别 + * 流程定义编码 */ - private String category; + private String flowCode; /** - * 父级任务id + * 流程版本号 */ - private String parentTaskId; + private String version; /** - * 租户id + * 流程状态 */ - private String tenantId; + private String flowStatus; /** - * 认领时间 + * 流程分类id */ - private Date claimTime; + private String category; /** - * 流程状态 + * 流程分类名称 */ - private String businessStatus; + @Translation(type = FlowConstant.CATEGORY_ID_TO_NAME, mapper = "category") + private String categoryName; /** * 流程状态 */ - private String businessStatusName; + @Translation(type = TransConstant.DICT_TYPE_TO_LABEL, mapper = "flowStatus", other = "wf_business_status") + private String flowStatusName; /** - * 流程定义名称 + * 办理人类型 */ - private String processDefinitionName; + private String type; /** - * 流程定义key + * 办理人ids */ - private String processDefinitionKey; + private String assigneeIds; /** - * 流程定义版本 + * 办理人名称 */ - private Integer processDefinitionVersion; + private String assigneeNames; /** - * 参与者 + * 抄送人id */ - private ParticipantVo participantVo; + private String processedBy; /** - * 是否会签 + * 抄送人名称 */ - private Boolean multiInstance; + @Translation(type = TransConstant.USER_ID_TO_NICKNAME, mapper = "processedBy") + private String processedByName; /** - * 业务id + * 流程签署比例值 大于0为票签,会签 */ - private String businessKey; + private BigDecimal nodeRatio; /** - * 流程定义配置 + * 申请人id */ - private WfDefinitionConfigVo wfDefinitionConfigVo; + private String createBy; /** - * 节点配置 + * 申请人名称 */ - private WfNodeConfigVo wfNodeConfigVo; + @Translation(type = TransConstant.USER_ID_TO_NICKNAME, mapper = "createBy") + private String createByName; } diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/VariableVo.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/FlowVariableVo.java similarity index 86% rename from ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/VariableVo.java rename to ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/FlowVariableVo.java index 6a26c8287..b4de76e93 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/VariableVo.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/FlowVariableVo.java @@ -11,7 +11,7 @@ import java.io.Serializable; * @author may */ @Data -public class VariableVo implements Serializable { +public class FlowVariableVo implements Serializable { @Serial private static final long serialVersionUID = 1L; diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/GraphicInfoVo.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/GraphicInfoVo.java deleted file mode 100644 index 763613165..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/GraphicInfoVo.java +++ /dev/null @@ -1,47 +0,0 @@ -package org.dromara.workflow.domain.vo; - -import lombok.Data; - -import java.io.Serial; -import java.io.Serializable; - -/** - * 节点图形信息 - * - * @author may - */ -@Data -public class GraphicInfoVo implements Serializable { - - @Serial - private static final long serialVersionUID = 1L; - /** - * x坐标 - */ - private double x; - - /** - * y坐标 - */ - private double y; - - /** - * 节点高度 - */ - private double height; - - /** - * 节点宽度 - */ - private double width; - - /** - * 节点id - */ - private String nodeId; - - /** - * 节点名称 - */ - private String nodeName; -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/MultiInstanceVo.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/MultiInstanceVo.java deleted file mode 100644 index b99839603..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/MultiInstanceVo.java +++ /dev/null @@ -1,33 +0,0 @@ -package org.dromara.workflow.domain.vo; - -import lombok.Data; - -import java.io.Serial; -import java.io.Serializable; - -/** - * 多实例信息 - * - * @author may - */ -@Data -public class MultiInstanceVo implements Serializable { - - @Serial - private static final long serialVersionUID = 1L; - - /** - * 会签类型(串行,并行) - */ - private Object type; - - /** - * 会签人员KEY - */ - private String assignee; - - /** - * 会签人员集合KEY - */ - private String assigneeList; -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/ParticipantVo.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/ParticipantVo.java deleted file mode 100644 index c5876f689..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/ParticipantVo.java +++ /dev/null @@ -1,43 +0,0 @@ -package org.dromara.workflow.domain.vo; - -import lombok.Data; - -import java.io.Serial; -import java.io.Serializable; -import java.util.List; - -/** - * 参与者 - * - * @author may - */ -@Data -public class ParticipantVo implements Serializable { - - @Serial - private static final long serialVersionUID = 1L; - - /** - * 组id(角色id) - */ - private List groupIds; - - /** - * 候选人id(用户id) 当组id不为空时,将组内人员查出放入candidate - */ - private List candidate; - - /** - * 候选人名称(用户名称) 当组id不为空时,将组内人员查出放入candidateName - */ - private List candidateName; - - /** - * 是否认领标识 - * 当为空时默认当前任务不需要认领 - * 当为true时当前任务说明为候选模式并且有人已经认领了任务可以归还, - * 当为false时当前任务说明为候选模式该任务未认领, - */ - private Boolean claim; - -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/ProcessDefinitionVo.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/ProcessDefinitionVo.java deleted file mode 100644 index 034adbb26..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/ProcessDefinitionVo.java +++ /dev/null @@ -1,70 +0,0 @@ -package org.dromara.workflow.domain.vo; - -import lombok.Data; - -import java.io.Serial; -import java.io.Serializable; -import java.util.Date; - -/** - * 流程定义视图 - * - * @author may - */ -@Data -public class ProcessDefinitionVo implements Serializable { - - @Serial - private static final long serialVersionUID = 1L; - - /** - * 流程定义id - */ - private String id; - - /** - * 流程定义名称 - */ - private String name; - - /** - * 流程定义标识key - */ - private String key; - - /** - * 流程定义版本 - */ - private int version; - - /** - * 流程定义挂起或激活 1激活 2挂起 - */ - private int suspensionState; - - /** - * 流程xml名称 - */ - private String resourceName; - - /** - * 流程图片名称 - */ - private String diagramResourceName; - - /** - * 流程部署id - */ - private String deploymentId; - - /** - * 流程部署时间 - */ - private Date deploymentTime; - - /** - * 流程定义配置 - */ - private WfDefinitionConfigVo wfDefinitionConfigVo; - -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/WfDefinitionConfigVo.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/WfDefinitionConfigVo.java deleted file mode 100644 index 9c7b0d7db..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/WfDefinitionConfigVo.java +++ /dev/null @@ -1,70 +0,0 @@ -package org.dromara.workflow.domain.vo; - -import org.dromara.workflow.domain.WfDefinitionConfig; -import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; -import com.alibaba.excel.annotation.ExcelProperty; -import io.github.linpeilie.annotations.AutoMapper; -import lombok.Data; - -import java.io.Serial; -import java.io.Serializable; - - -/** - * 流程定义配置视图对象 wf_definition_config - * - * @author may - * @date 2024-03-18 - */ -@Data -@ExcelIgnoreUnannotated -@AutoMapper(target = WfDefinitionConfig.class) -public class WfDefinitionConfigVo implements Serializable { - - @Serial - private static final long serialVersionUID = 1L; - - /** - * 主键 - */ - @ExcelProperty(value = "主键") - private Long id; - - /** - * 表名 - */ - @ExcelProperty(value = "表名") - private String tableName; - - /** - * 流程定义ID - */ - @ExcelProperty(value = "流程定义ID") - private String definitionId; - - /** - * 流程KEY - */ - @ExcelProperty(value = "流程KEY") - private String processKey; - - - /** - * 流程版本 - */ - @ExcelProperty(value = "流程版本") - private Integer version; - - /** - * 备注 - */ - @ExcelProperty(value = "备注") - private String remark; - - /** - * 表单管理 - */ - private WfFormManageVo wfFormManageVo; - - -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/WfFormManageVo.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/WfFormManageVo.java deleted file mode 100644 index 302df2396..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/WfFormManageVo.java +++ /dev/null @@ -1,63 +0,0 @@ -package org.dromara.workflow.domain.vo; - -import org.dromara.workflow.domain.WfFormManage; -import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; -import com.alibaba.excel.annotation.ExcelProperty; -import io.github.linpeilie.annotations.AutoMapper; -import lombok.Data; - -import java.io.Serial; -import java.io.Serializable; - - -/** - * 表单管理视图对象 wf_form_manage - * - * @author may - * @date 2024-03-29 - */ -@Data -@ExcelIgnoreUnannotated -@AutoMapper(target = WfFormManage.class) -public class WfFormManageVo implements Serializable { - - @Serial - private static final long serialVersionUID = 1L; - - /** - * 主键 - */ - @ExcelProperty(value = "主键") - private Long id; - - /** - * 表单名称 - */ - @ExcelProperty(value = "表单名称") - private String formName; - - /** - * 表单类型 - */ - @ExcelProperty(value = "表单类型") - private String formType; - - /** - * 表单类型名称 - */ - private String formTypeName; - - /** - * 路由地址/表单ID - */ - @ExcelProperty(value = "路由地址/表单ID") - private String router; - - /** - * 备注 - */ - @ExcelProperty(value = "备注") - private String remark; - - -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/WfNodeConfigVo.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/WfNodeConfigVo.java deleted file mode 100644 index 89e9d9b3f..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/WfNodeConfigVo.java +++ /dev/null @@ -1,75 +0,0 @@ -package org.dromara.workflow.domain.vo; - -import org.dromara.workflow.domain.WfNodeConfig; -import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; -import com.alibaba.excel.annotation.ExcelProperty; -import io.github.linpeilie.annotations.AutoMapper; -import lombok.Data; - -import java.io.Serial; -import java.io.Serializable; - - -/** - * 节点配置视图对象 wf_node_config - * - * @author may - * @date 2024-03-30 - */ -@Data -@ExcelIgnoreUnannotated -@AutoMapper(target = WfNodeConfig.class) -public class WfNodeConfigVo implements Serializable { - - @Serial - private static final long serialVersionUID = 1L; - - /** - * 主键 - */ - @ExcelProperty(value = "主键") - private Long id; - - /** - * 表单id - */ - @ExcelProperty(value = "表单id") - private Long formId; - - /** - * 表单类型 - */ - @ExcelProperty(value = "表单类型") - private String formType; - - /** - * 节点名称 - */ - @ExcelProperty(value = "节点名称") - private String nodeName; - - /** - * 节点id - */ - @ExcelProperty(value = "节点id") - private String nodeId; - - /** - * 流程定义id - */ - @ExcelProperty(value = "流程定义id") - private String definitionId; - - /** - * 是否为申请人节点 (0是 1否) - */ - @ExcelProperty(value = "是否为申请人节点 (0是 1否)") - private String applyUserTask; - - /** - * 表单管理 - */ - private WfFormManageVo wfFormManageVo; - - -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/flowable/CustomDefaultProcessDiagramCanvas.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/flowable/CustomDefaultProcessDiagramCanvas.java deleted file mode 100644 index 39fd9d363..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/flowable/CustomDefaultProcessDiagramCanvas.java +++ /dev/null @@ -1,108 +0,0 @@ -package org.dromara.workflow.flowable; - -import org.flowable.bpmn.model.AssociationDirection; -import org.flowable.image.impl.DefaultProcessDiagramCanvas; - -import java.awt.*; -import java.awt.geom.Line2D; -import java.awt.geom.RoundRectangle2D; - -public class CustomDefaultProcessDiagramCanvas extends DefaultProcessDiagramCanvas { - //设置高亮线的颜色 这里我设置成绿色 - protected static Color HIGHLIGHT_SEQUENCEFLOW_COLOR = Color.GREEN; - - public CustomDefaultProcessDiagramCanvas(int width, int height, int minX, int minY, String imageType, String activityFontName, String labelFontName, String annotationFontName, ClassLoader customClassLoader) { - super(width, height, minX, minY, imageType, activityFontName, labelFontName, annotationFontName, customClassLoader); - } - - /** - * 画线颜色设置 - */ - public void drawConnection(int[] xPoints, int[] yPoints, boolean conditional, boolean isDefault, String connectionType, - AssociationDirection associationDirection, boolean highLighted, double scaleFactor) { - - Paint originalPaint = g.getPaint(); - Stroke originalStroke = g.getStroke(); - - g.setPaint(CONNECTION_COLOR); - if (connectionType.equals("association")) { - g.setStroke(ASSOCIATION_STROKE); - } else if (highLighted) { - //设置线的颜色 - g.setPaint(HIGHLIGHT_SEQUENCEFLOW_COLOR); - g.setStroke(HIGHLIGHT_FLOW_STROKE); - } - - for (int i = 1; i < xPoints.length; i++) { - Integer sourceX = xPoints[i - 1]; - Integer sourceY = yPoints[i - 1]; - Integer targetX = xPoints[i]; - Integer targetY = yPoints[i]; - Line2D.Double line = new Line2D.Double(sourceX, sourceY, targetX, targetY); - g.draw(line); - } - - if (isDefault) { - Line2D.Double line = new Line2D.Double(xPoints[0], yPoints[0], xPoints[1], yPoints[1]); - drawDefaultSequenceFlowIndicator(line, scaleFactor); - } - - if (conditional) { - Line2D.Double line = new Line2D.Double(xPoints[0], yPoints[0], xPoints[1], yPoints[1]); - drawConditionalSequenceFlowIndicator(line, scaleFactor); - } - - if (associationDirection == AssociationDirection.ONE || associationDirection == AssociationDirection.BOTH) { - Line2D.Double line = new Line2D.Double(xPoints[xPoints.length - 2], yPoints[xPoints.length - 2], xPoints[xPoints.length - 1], yPoints[xPoints.length - 1]); - drawArrowHead(line, scaleFactor); - } - if (associationDirection == AssociationDirection.BOTH) { - Line2D.Double line = new Line2D.Double(xPoints[1], yPoints[1], xPoints[0], yPoints[0]); - drawArrowHead(line, scaleFactor); - } - g.setPaint(originalPaint); - g.setStroke(originalStroke); - } - - /** - * 高亮节点设置 - */ - public void drawHighLight(int x, int y, int width, int height) { - Paint originalPaint = g.getPaint(); - Stroke originalStroke = g.getStroke(); - //设置高亮节点的颜色 - g.setPaint(HIGHLIGHT_COLOR); - g.setStroke(THICK_TASK_BORDER_STROKE); - - RoundRectangle2D rect = new RoundRectangle2D.Double(x, y, width, height, 20, 20); - g.draw(rect); - - g.setPaint(originalPaint); - g.setStroke(originalStroke); - } - - /** - * @description: 高亮节点红色 - * @param: x - * @param: y - * @param: width - * @param: height - * @return: void - * @author: gssong - * @date: 2022/4/12 - */ - public void drawHighLightRed(int x, int y, int width, int height) { - Paint originalPaint = g.getPaint(); - Stroke originalStroke = g.getStroke(); - //设置高亮节点的颜色 - g.setPaint(Color.green); - g.setStroke(THICK_TASK_BORDER_STROKE); - - RoundRectangle2D rect = new RoundRectangle2D.Double(x, y, width, height, 20, 20); - g.draw(rect); - - g.setPaint(originalPaint); - g.setStroke(originalStroke); - } - -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/flowable/CustomDefaultProcessDiagramGenerator.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/flowable/CustomDefaultProcessDiagramGenerator.java deleted file mode 100644 index e4793a26f..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/flowable/CustomDefaultProcessDiagramGenerator.java +++ /dev/null @@ -1,1120 +0,0 @@ -/* Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.dromara.workflow.flowable; - -import org.flowable.bpmn.model.Event; -import org.flowable.bpmn.model.Process; -import org.flowable.bpmn.model.*; -import org.flowable.image.ProcessDiagramGenerator; - -import java.awt.*; -import java.awt.image.BufferedImage; -import java.io.InputStream; -import java.util.List; -import java.util.*; - -/** - * Class to generate an image based the diagram interchange information in a BPMN 2.0 process. - * - * @author Joram Barrez - * @author Tijs Rademakers - * @author Zheng Ji - */ -public class CustomDefaultProcessDiagramGenerator implements ProcessDiagramGenerator { - - protected Map, ActivityDrawInstruction> activityDrawInstructions = new HashMap<>(); - protected Map, ArtifactDrawInstruction> artifactDrawInstructions = new HashMap<>(); - - public CustomDefaultProcessDiagramGenerator() { - this(1.0); - } - - // The instructions on how to draw a certain construct is - // created statically and stored in a map for performance. - public CustomDefaultProcessDiagramGenerator(final double scaleFactor) { - // start event - activityDrawInstructions.put(StartEvent.class, new ActivityDrawInstruction() { - - @Override - public void draw(CustomDefaultProcessDiagramCanvas processDiagramCanvas, BpmnModel bpmnModel, FlowNode flowNode) { - GraphicInfo graphicInfo = bpmnModel.getGraphicInfo(flowNode.getId()); - StartEvent startEvent = (StartEvent) flowNode; - if (startEvent.getEventDefinitions() != null && !startEvent.getEventDefinitions().isEmpty()) { - EventDefinition eventDefinition = startEvent.getEventDefinitions().get(0); - if (eventDefinition instanceof TimerEventDefinition) { - processDiagramCanvas.drawTimerStartEvent(graphicInfo, scaleFactor); - } else if (eventDefinition instanceof ErrorEventDefinition) { - processDiagramCanvas.drawErrorStartEvent(graphicInfo, scaleFactor); - } else if (eventDefinition instanceof EscalationEventDefinition) { - processDiagramCanvas.drawEscalationStartEvent(graphicInfo, scaleFactor); - } else if (eventDefinition instanceof ConditionalEventDefinition) { - processDiagramCanvas.drawConditionalStartEvent(graphicInfo, scaleFactor); - } else if (eventDefinition instanceof SignalEventDefinition) { - processDiagramCanvas.drawSignalStartEvent(graphicInfo, scaleFactor); - } else if (eventDefinition instanceof MessageEventDefinition) { - processDiagramCanvas.drawMessageStartEvent(graphicInfo, scaleFactor); - } else { - processDiagramCanvas.drawNoneStartEvent(graphicInfo); - } - } else { - List eventTypeElements = startEvent.getExtensionElements().get("eventType"); - if (eventTypeElements != null && eventTypeElements.size() > 0) { - processDiagramCanvas.drawEventRegistryStartEvent(graphicInfo, scaleFactor); - - } else { - processDiagramCanvas.drawNoneStartEvent(graphicInfo); - } - } - } - }); - - // signal catch - activityDrawInstructions.put(IntermediateCatchEvent.class, new ActivityDrawInstruction() { - - @Override - public void draw(CustomDefaultProcessDiagramCanvas processDiagramCanvas, BpmnModel bpmnModel, FlowNode flowNode) { - GraphicInfo graphicInfo = bpmnModel.getGraphicInfo(flowNode.getId()); - IntermediateCatchEvent intermediateCatchEvent = (IntermediateCatchEvent) flowNode; - if (intermediateCatchEvent.getEventDefinitions() != null && !intermediateCatchEvent.getEventDefinitions().isEmpty()) { - - if (intermediateCatchEvent.getEventDefinitions().get(0) instanceof SignalEventDefinition) { - processDiagramCanvas.drawCatchingSignalEvent(flowNode.getName(), graphicInfo, true, scaleFactor); - } else if (intermediateCatchEvent.getEventDefinitions().get(0) instanceof TimerEventDefinition) { - processDiagramCanvas.drawCatchingTimerEvent(flowNode.getName(), graphicInfo, true, scaleFactor); - } else if (intermediateCatchEvent.getEventDefinitions().get(0) instanceof MessageEventDefinition) { - processDiagramCanvas.drawCatchingMessageEvent(flowNode.getName(), graphicInfo, true, scaleFactor); - } else if (intermediateCatchEvent.getEventDefinitions().get(0) instanceof ConditionalEventDefinition) { - processDiagramCanvas.drawCatchingConditionalEvent(flowNode.getName(), graphicInfo, true, scaleFactor); - } - } - } - }); - - // signal throw - activityDrawInstructions.put(ThrowEvent.class, new ActivityDrawInstruction() { - - @Override - public void draw(CustomDefaultProcessDiagramCanvas processDiagramCanvas, BpmnModel bpmnModel, FlowNode flowNode) { - GraphicInfo graphicInfo = bpmnModel.getGraphicInfo(flowNode.getId()); - ThrowEvent throwEvent = (ThrowEvent) flowNode; - if (throwEvent.getEventDefinitions() != null && !throwEvent.getEventDefinitions().isEmpty()) { - if (throwEvent.getEventDefinitions().get(0) instanceof SignalEventDefinition) { - processDiagramCanvas.drawThrowingSignalEvent(graphicInfo, scaleFactor); - } else if (throwEvent.getEventDefinitions().get(0) instanceof EscalationEventDefinition) { - processDiagramCanvas.drawThrowingEscalationEvent(graphicInfo, scaleFactor); - } else if (throwEvent.getEventDefinitions().get(0) instanceof CompensateEventDefinition) { - processDiagramCanvas.drawThrowingCompensateEvent(graphicInfo, scaleFactor); - } else { - processDiagramCanvas.drawThrowingNoneEvent(graphicInfo, scaleFactor); - } - } else { - processDiagramCanvas.drawThrowingNoneEvent(graphicInfo, scaleFactor); - } - } - }); - - // end event - activityDrawInstructions.put(EndEvent.class, new ActivityDrawInstruction() { - - @Override - public void draw(CustomDefaultProcessDiagramCanvas processDiagramCanvas, BpmnModel bpmnModel, FlowNode flowNode) { - GraphicInfo graphicInfo = bpmnModel.getGraphicInfo(flowNode.getId()); - EndEvent endEvent = (EndEvent) flowNode; - if (endEvent.getEventDefinitions() != null && !endEvent.getEventDefinitions().isEmpty()) { - if (endEvent.getEventDefinitions().get(0) instanceof ErrorEventDefinition) { - processDiagramCanvas.drawErrorEndEvent(flowNode.getName(), graphicInfo, scaleFactor); - } else if (endEvent.getEventDefinitions().get(0) instanceof EscalationEventDefinition) { - processDiagramCanvas.drawEscalationEndEvent(flowNode.getName(), graphicInfo, scaleFactor); - } else { - processDiagramCanvas.drawNoneEndEvent(graphicInfo, scaleFactor); - } - } else { - processDiagramCanvas.drawNoneEndEvent(graphicInfo, scaleFactor); - } - } - }); - - // task - activityDrawInstructions.put(Task.class, new ActivityDrawInstruction() { - - @Override - public void draw(CustomDefaultProcessDiagramCanvas processDiagramCanvas, BpmnModel bpmnModel, FlowNode flowNode) { - GraphicInfo graphicInfo = bpmnModel.getGraphicInfo(flowNode.getId()); - processDiagramCanvas.drawTask(flowNode.getName(), graphicInfo, scaleFactor); - } - }); - - // user task - activityDrawInstructions.put(UserTask.class, new ActivityDrawInstruction() { - - @Override - public void draw(CustomDefaultProcessDiagramCanvas processDiagramCanvas, BpmnModel bpmnModel, FlowNode flowNode) { - GraphicInfo graphicInfo = bpmnModel.getGraphicInfo(flowNode.getId()); - processDiagramCanvas.drawUserTask(flowNode.getName(), graphicInfo, scaleFactor); - } - }); - - // script task - activityDrawInstructions.put(ScriptTask.class, new ActivityDrawInstruction() { - - @Override - public void draw(CustomDefaultProcessDiagramCanvas processDiagramCanvas, BpmnModel bpmnModel, FlowNode flowNode) { - GraphicInfo graphicInfo = bpmnModel.getGraphicInfo(flowNode.getId()); - processDiagramCanvas.drawScriptTask(flowNode.getName(), graphicInfo, scaleFactor); - } - }); - - // service task - activityDrawInstructions.put(ServiceTask.class, new ActivityDrawInstruction() { - - @Override - public void draw(CustomDefaultProcessDiagramCanvas processDiagramCanvas, BpmnModel bpmnModel, FlowNode flowNode) { - GraphicInfo graphicInfo = bpmnModel.getGraphicInfo(flowNode.getId()); - ServiceTask serviceTask = (ServiceTask) flowNode; - if ("camel".equalsIgnoreCase(serviceTask.getType())) { - processDiagramCanvas.drawCamelTask(serviceTask.getName(), graphicInfo, scaleFactor); - }else if (ServiceTask.HTTP_TASK.equalsIgnoreCase(serviceTask.getType())) { - processDiagramCanvas.drawHttpTask(serviceTask.getName(), graphicInfo, scaleFactor); - } else if (ServiceTask.DMN_TASK.equalsIgnoreCase(serviceTask.getType())) { - processDiagramCanvas.drawDMNTask(serviceTask.getName(), graphicInfo, scaleFactor); - } else if (ServiceTask.SHELL_TASK.equalsIgnoreCase(serviceTask.getType())) { - processDiagramCanvas.drawShellTask(serviceTask.getName(), graphicInfo, scaleFactor); - } else { - processDiagramCanvas.drawServiceTask(serviceTask.getName(), graphicInfo, scaleFactor); - } - } - }); - - // http service task - activityDrawInstructions.put(HttpServiceTask.class, new ActivityDrawInstruction() { - - @Override - public void draw(CustomDefaultProcessDiagramCanvas processDiagramCanvas, BpmnModel bpmnModel, FlowNode flowNode) { - GraphicInfo graphicInfo = bpmnModel.getGraphicInfo(flowNode.getId()); - processDiagramCanvas.drawHttpTask(flowNode.getName(), graphicInfo, scaleFactor); - } - }); - - // receive task - activityDrawInstructions.put(ReceiveTask.class, new ActivityDrawInstruction() { - - @Override - public void draw(CustomDefaultProcessDiagramCanvas processDiagramCanvas, BpmnModel bpmnModel, FlowNode flowNode) { - GraphicInfo graphicInfo = bpmnModel.getGraphicInfo(flowNode.getId()); - processDiagramCanvas.drawReceiveTask(flowNode.getName(), graphicInfo, scaleFactor); - } - }); - - // send task - activityDrawInstructions.put(SendTask.class, new ActivityDrawInstruction() { - - @Override - public void draw(CustomDefaultProcessDiagramCanvas processDiagramCanvas, BpmnModel bpmnModel, FlowNode flowNode) { - GraphicInfo graphicInfo = bpmnModel.getGraphicInfo(flowNode.getId()); - processDiagramCanvas.drawSendTask(flowNode.getName(), graphicInfo, scaleFactor); - } - }); - - // manual task - activityDrawInstructions.put(ManualTask.class, new ActivityDrawInstruction() { - - @Override - public void draw(CustomDefaultProcessDiagramCanvas processDiagramCanvas, BpmnModel bpmnModel, FlowNode flowNode) { - GraphicInfo graphicInfo = bpmnModel.getGraphicInfo(flowNode.getId()); - processDiagramCanvas.drawManualTask(flowNode.getName(), graphicInfo, scaleFactor); - } - }); - - // send event service task - activityDrawInstructions.put(SendEventServiceTask.class, new ActivityDrawInstruction() { - - @Override - public void draw(CustomDefaultProcessDiagramCanvas processDiagramCanvas, BpmnModel bpmnModel, FlowNode flowNode) { - GraphicInfo graphicInfo = bpmnModel.getGraphicInfo(flowNode.getId()); - processDiagramCanvas.drawSendEventServiceTask(flowNode.getName(), graphicInfo, scaleFactor); - } - }); - - // external worker service task - activityDrawInstructions.put(ExternalWorkerServiceTask.class, new ActivityDrawInstruction() { - - @Override - public void draw(CustomDefaultProcessDiagramCanvas processDiagramCanvas, BpmnModel bpmnModel, FlowNode flowNode) { - GraphicInfo graphicInfo = bpmnModel.getGraphicInfo(flowNode.getId()); - ServiceTask serviceTask = (ServiceTask) flowNode; - processDiagramCanvas.drawServiceTask(serviceTask.getName(), graphicInfo, scaleFactor); - } - }); - - // case service task - activityDrawInstructions.put(CaseServiceTask.class, new ActivityDrawInstruction() { - - @Override - public void draw(CustomDefaultProcessDiagramCanvas processDiagramCanvas, BpmnModel bpmnModel, FlowNode flowNode) { - GraphicInfo graphicInfo = bpmnModel.getGraphicInfo(flowNode.getId()); - processDiagramCanvas.drawCaseServiceTask(flowNode.getName(), graphicInfo, scaleFactor); - } - }); - - // businessRuleTask task - activityDrawInstructions.put(BusinessRuleTask.class, new ActivityDrawInstruction() { - - @Override - public void draw(CustomDefaultProcessDiagramCanvas processDiagramCanvas, BpmnModel bpmnModel, FlowNode flowNode) { - GraphicInfo graphicInfo = bpmnModel.getGraphicInfo(flowNode.getId()); - processDiagramCanvas.drawBusinessRuleTask(flowNode.getName(), graphicInfo, scaleFactor); - } - }); - - // exclusive gateway - activityDrawInstructions.put(ExclusiveGateway.class, new ActivityDrawInstruction() { - - @Override - public void draw(CustomDefaultProcessDiagramCanvas processDiagramCanvas, BpmnModel bpmnModel, FlowNode flowNode) { - GraphicInfo graphicInfo = bpmnModel.getGraphicInfo(flowNode.getId()); - processDiagramCanvas.drawExclusiveGateway(graphicInfo, scaleFactor); - } - }); - - // inclusive gateway - activityDrawInstructions.put(InclusiveGateway.class, new ActivityDrawInstruction() { - - @Override - public void draw(CustomDefaultProcessDiagramCanvas processDiagramCanvas, BpmnModel bpmnModel, FlowNode flowNode) { - GraphicInfo graphicInfo = bpmnModel.getGraphicInfo(flowNode.getId()); - processDiagramCanvas.drawInclusiveGateway(graphicInfo, scaleFactor); - } - }); - - // parallel gateway - activityDrawInstructions.put(ParallelGateway.class, new ActivityDrawInstruction() { - - @Override - public void draw(CustomDefaultProcessDiagramCanvas processDiagramCanvas, BpmnModel bpmnModel, FlowNode flowNode) { - GraphicInfo graphicInfo = bpmnModel.getGraphicInfo(flowNode.getId()); - processDiagramCanvas.drawParallelGateway(graphicInfo, scaleFactor); - } - }); - - // event based gateway - activityDrawInstructions.put(EventGateway.class, new ActivityDrawInstruction() { - - @Override - public void draw(CustomDefaultProcessDiagramCanvas processDiagramCanvas, BpmnModel bpmnModel, FlowNode flowNode) { - GraphicInfo graphicInfo = bpmnModel.getGraphicInfo(flowNode.getId()); - processDiagramCanvas.drawEventBasedGateway(graphicInfo, scaleFactor); - } - }); - - // Boundary timer - activityDrawInstructions.put(BoundaryEvent.class, new ActivityDrawInstruction() { - - @Override - public void draw(CustomDefaultProcessDiagramCanvas processDiagramCanvas, BpmnModel bpmnModel, FlowNode flowNode) { - GraphicInfo graphicInfo = bpmnModel.getGraphicInfo(flowNode.getId()); - BoundaryEvent boundaryEvent = (BoundaryEvent) flowNode; - if (boundaryEvent.getEventDefinitions() != null && !boundaryEvent.getEventDefinitions().isEmpty()) { - EventDefinition eventDefinition = boundaryEvent.getEventDefinitions().get(0); - if (eventDefinition instanceof TimerEventDefinition) { - processDiagramCanvas.drawCatchingTimerEvent(flowNode.getName(), graphicInfo, boundaryEvent.isCancelActivity(), scaleFactor); - - } else if (eventDefinition instanceof ConditionalEventDefinition) { - processDiagramCanvas.drawCatchingConditionalEvent(graphicInfo, boundaryEvent.isCancelActivity(), scaleFactor); - - } else if (eventDefinition instanceof ErrorEventDefinition) { - processDiagramCanvas.drawCatchingErrorEvent(graphicInfo, boundaryEvent.isCancelActivity(), scaleFactor); - - } else if (eventDefinition instanceof EscalationEventDefinition) { - processDiagramCanvas.drawCatchingEscalationEvent(graphicInfo, boundaryEvent.isCancelActivity(), scaleFactor); - - } else if (eventDefinition instanceof SignalEventDefinition) { - processDiagramCanvas.drawCatchingSignalEvent(flowNode.getName(), graphicInfo, boundaryEvent.isCancelActivity(), scaleFactor); - - } else if (eventDefinition instanceof MessageEventDefinition) { - processDiagramCanvas.drawCatchingMessageEvent(flowNode.getName(), graphicInfo, boundaryEvent.isCancelActivity(), scaleFactor); - - } else if (eventDefinition instanceof CompensateEventDefinition) { - processDiagramCanvas.drawCatchingCompensateEvent(graphicInfo, boundaryEvent.isCancelActivity(), scaleFactor); - } - - } else { - List eventTypeElements = boundaryEvent.getExtensionElements().get("eventType"); - if (eventTypeElements != null && eventTypeElements.size() > 0) { - processDiagramCanvas.drawCatchingEventRegistryEvent(flowNode.getName(), graphicInfo, boundaryEvent.isCancelActivity(), scaleFactor); - } - } - } - }); - - // subprocess - activityDrawInstructions.put(SubProcess.class, new ActivityDrawInstruction() { - - @Override - public void draw(CustomDefaultProcessDiagramCanvas processDiagramCanvas, BpmnModel bpmnModel, FlowNode flowNode) { - GraphicInfo graphicInfo = bpmnModel.getGraphicInfo(flowNode.getId()); - if (graphicInfo.getExpanded() != null && !graphicInfo.getExpanded()) { - processDiagramCanvas.drawCollapsedSubProcess(flowNode.getName(), graphicInfo, false, scaleFactor); - } else { - processDiagramCanvas.drawExpandedSubProcess(flowNode.getName(), graphicInfo, false, scaleFactor); - } - } - }); - - // transaction - activityDrawInstructions.put(Transaction.class, new ActivityDrawInstruction() { - - @Override - public void draw(CustomDefaultProcessDiagramCanvas processDiagramCanvas, BpmnModel bpmnModel, FlowNode flowNode) { - GraphicInfo graphicInfo = bpmnModel.getGraphicInfo(flowNode.getId()); - if (graphicInfo.getExpanded() != null && !graphicInfo.getExpanded()) { - processDiagramCanvas.drawCollapsedSubProcess(flowNode.getName(), graphicInfo, false, scaleFactor); - } else { - processDiagramCanvas.drawExpandedTransaction(flowNode.getName(), graphicInfo, scaleFactor); - } - } - }); - - // Event subprocess - activityDrawInstructions.put(EventSubProcess.class, new ActivityDrawInstruction() { - - @Override - public void draw(CustomDefaultProcessDiagramCanvas processDiagramCanvas, BpmnModel bpmnModel, FlowNode flowNode) { - GraphicInfo graphicInfo = bpmnModel.getGraphicInfo(flowNode.getId()); - if (graphicInfo.getExpanded() != null && !graphicInfo.getExpanded()) { - processDiagramCanvas.drawCollapsedSubProcess(flowNode.getName(), graphicInfo, true, scaleFactor); - } else { - processDiagramCanvas.drawExpandedSubProcess(flowNode.getName(), graphicInfo, true, scaleFactor); - } - } - }); - - // Adhoc subprocess - activityDrawInstructions.put(AdhocSubProcess.class, new ActivityDrawInstruction() { - - @Override - public void draw(CustomDefaultProcessDiagramCanvas processDiagramCanvas, BpmnModel bpmnModel, FlowNode flowNode) { - GraphicInfo graphicInfo = bpmnModel.getGraphicInfo(flowNode.getId()); - if (graphicInfo.getExpanded() != null && !graphicInfo.getExpanded()) { - processDiagramCanvas.drawCollapsedSubProcess(flowNode.getName(), graphicInfo, false, scaleFactor); - } else { - processDiagramCanvas.drawExpandedSubProcess(flowNode.getName(), graphicInfo, false, scaleFactor); - } - } - }); - - // call activity - activityDrawInstructions.put(CallActivity.class, new ActivityDrawInstruction() { - - @Override - public void draw(CustomDefaultProcessDiagramCanvas processDiagramCanvas, BpmnModel bpmnModel, FlowNode flowNode) { - GraphicInfo graphicInfo = bpmnModel.getGraphicInfo(flowNode.getId()); - processDiagramCanvas.drawCollapsedCallActivity(flowNode.getName(), graphicInfo, scaleFactor); - } - }); - - // text annotation - artifactDrawInstructions.put(TextAnnotation.class, new ArtifactDrawInstruction() { - - @Override - public void draw(CustomDefaultProcessDiagramCanvas processDiagramCanvas, BpmnModel bpmnModel, Artifact artifact) { - GraphicInfo graphicInfo = bpmnModel.getGraphicInfo(artifact.getId()); - TextAnnotation textAnnotation = (TextAnnotation) artifact; - processDiagramCanvas.drawTextAnnotation(textAnnotation.getText(), graphicInfo, scaleFactor); - } - }); - - // association - artifactDrawInstructions.put(Association.class, new ArtifactDrawInstruction() { - - @Override - public void draw(CustomDefaultProcessDiagramCanvas processDiagramCanvas, BpmnModel bpmnModel, Artifact artifact) { - Association association = (Association) artifact; - String sourceRef = association.getSourceRef(); - String targetRef = association.getTargetRef(); - - // source and target can be instance of FlowElement or Artifact - BaseElement sourceElement = bpmnModel.getFlowElement(sourceRef); - BaseElement targetElement = bpmnModel.getFlowElement(targetRef); - if (sourceElement == null) { - sourceElement = bpmnModel.getArtifact(sourceRef); - } - if (targetElement == null) { - targetElement = bpmnModel.getArtifact(targetRef); - } - List graphicInfoList = bpmnModel.getFlowLocationGraphicInfo(artifact.getId()); - graphicInfoList = connectionPerfectionizer(processDiagramCanvas, bpmnModel, sourceElement, targetElement, graphicInfoList); - int[] xPoints = new int[graphicInfoList.size()]; - int[] yPoints = new int[graphicInfoList.size()]; - for (int i = 1; i < graphicInfoList.size(); i++) { - GraphicInfo graphicInfo = graphicInfoList.get(i); - GraphicInfo previousGraphicInfo = graphicInfoList.get(i - 1); - - if (i == 1) { - xPoints[0] = (int) previousGraphicInfo.getX(); - yPoints[0] = (int) previousGraphicInfo.getY(); - } - xPoints[i] = (int) graphicInfo.getX(); - yPoints[i] = (int) graphicInfo.getY(); - } - - AssociationDirection associationDirection = association.getAssociationDirection(); - processDiagramCanvas.drawAssociation(xPoints, yPoints, associationDirection, false, scaleFactor); - } - }); - } - - @Override - public InputStream generateDiagram(BpmnModel bpmnModel, String imageType, List highLightedActivities, List highLightedFlows, - String activityFontName, String labelFontName, String annotationFontName, ClassLoader customClassLoader, double scaleFactor, boolean drawSequenceFlowNameWithNoLabelDI) { - - return generateProcessDiagram(bpmnModel, imageType, highLightedActivities, highLightedFlows, - activityFontName, labelFontName, annotationFontName, customClassLoader, scaleFactor, drawSequenceFlowNameWithNoLabelDI).generateImage(imageType); - } - - @Override - public InputStream generateDiagram(BpmnModel bpmnModel, String imageType, List highLightedActivities, List highLightedFlows, boolean drawSequenceFlowNameWithNoLabelDI) { - return generateDiagram(bpmnModel, imageType, highLightedActivities, highLightedFlows, null, null, null, null, 1.0, drawSequenceFlowNameWithNoLabelDI); - } - - @Override - public InputStream generateDiagram(BpmnModel bpmnModel, String imageType, - List highLightedActivities, List highLightedFlows, double scaleFactor, boolean drawSequenceFlowNameWithNoLabelDI) { - return generateDiagram(bpmnModel, imageType, highLightedActivities, highLightedFlows, null, null, null, null, scaleFactor, drawSequenceFlowNameWithNoLabelDI); - } - - @Override - public InputStream generateDiagram(BpmnModel bpmnModel, String imageType, List highLightedActivities, boolean drawSequenceFlowNameWithNoLabelDI) { - return generateDiagram(bpmnModel, imageType, highLightedActivities, Collections.emptyList(), drawSequenceFlowNameWithNoLabelDI); - } - - @Override - public InputStream generateDiagram(BpmnModel bpmnModel, String imageType, List highLightedActivities, double scaleFactor, boolean drawSequenceFlowNameWithNoLabelDI) { - return generateDiagram(bpmnModel, imageType, highLightedActivities, Collections.emptyList(), scaleFactor, drawSequenceFlowNameWithNoLabelDI); - } - - @Override - public InputStream generateDiagram(BpmnModel bpmnModel, String imageType, String activityFontName, - String labelFontName, String annotationFontName, ClassLoader customClassLoader, boolean drawSequenceFlowNameWithNoLabelDI) { - - return generateDiagram(bpmnModel, imageType, Collections.emptyList(), Collections.emptyList(), - activityFontName, labelFontName, annotationFontName, customClassLoader, 1.0, drawSequenceFlowNameWithNoLabelDI); - } - - @Override - public InputStream generateDiagram(BpmnModel bpmnModel, String imageType, String activityFontName, - String labelFontName, String annotationFontName, ClassLoader customClassLoader, double scaleFactor, boolean drawSequenceFlowNameWithNoLabelDI) { - - return generateDiagram(bpmnModel, imageType, Collections.emptyList(), Collections.emptyList(), - activityFontName, labelFontName, annotationFontName, customClassLoader, scaleFactor, drawSequenceFlowNameWithNoLabelDI); - } - - @Override - public InputStream generatePngDiagram(BpmnModel bpmnModel, boolean drawSequenceFlowNameWithNoLabelDI) { - return generatePngDiagram(bpmnModel, 1.0, drawSequenceFlowNameWithNoLabelDI); - } - - @Override - public InputStream generatePngDiagram(BpmnModel bpmnModel, double scaleFactor, boolean drawSequenceFlowNameWithNoLabelDI) { - return generateDiagram(bpmnModel, "png", Collections.emptyList(), Collections.emptyList(), scaleFactor, drawSequenceFlowNameWithNoLabelDI); - } - - @Override - public InputStream generateJpgDiagram(BpmnModel bpmnModel) { - return generateJpgDiagram(bpmnModel, 1.0, false); - } - - @Override - public InputStream generateJpgDiagram(BpmnModel bpmnModel, double scaleFactor, boolean drawSequenceFlowNameWithNoLabelDI) { - return generateDiagram(bpmnModel, "jpg", Collections.emptyList(), Collections.emptyList(), drawSequenceFlowNameWithNoLabelDI); - } - - public BufferedImage generateImage(BpmnModel bpmnModel, String imageType, List highLightedActivities, List highLightedFlows, - String activityFontName, String labelFontName, String annotationFontName, ClassLoader customClassLoader, double scaleFactor, boolean drawSequenceFlowNameWithNoLabelDI) { - - return generateProcessDiagram(bpmnModel, imageType, highLightedActivities, highLightedFlows, - activityFontName, labelFontName, annotationFontName, customClassLoader, scaleFactor, drawSequenceFlowNameWithNoLabelDI).generateBufferedImage(imageType); - } - - public BufferedImage generateImage(BpmnModel bpmnModel, String imageType, - List highLightedActivities, List highLightedFlows, double scaleFactor, boolean drawSequenceFlowNameWithNoLabelDI) { - - return generateImage(bpmnModel, imageType, highLightedActivities, highLightedFlows, null, null, null, null, scaleFactor, drawSequenceFlowNameWithNoLabelDI); - } - - @Override - public BufferedImage generatePngImage(BpmnModel bpmnModel, double scaleFactor) { - return generateImage(bpmnModel, "png", Collections.emptyList(), Collections.emptyList(), scaleFactor, false); - } - - protected CustomDefaultProcessDiagramCanvas generateProcessDiagram(BpmnModel bpmnModel, String imageType, - List highLightedActivities, List highLightedFlows, - String activityFontName, String labelFontName, String annotationFontName, ClassLoader customClassLoader, double scaleFactor, boolean drawSequenceFlowNameWithNoLabelDI) { - - prepareBpmnModel(bpmnModel); - - CustomDefaultProcessDiagramCanvas processDiagramCanvas = initProcessDiagramCanvas(bpmnModel, imageType, activityFontName, labelFontName, annotationFontName, customClassLoader); - - // Draw pool shape, if process is participant in collaboration - for (Pool pool : bpmnModel.getPools()) { - GraphicInfo graphicInfo = bpmnModel.getGraphicInfo(pool.getId()); - processDiagramCanvas.drawPoolOrLane(pool.getName(), graphicInfo, scaleFactor); - } - - // Draw lanes - for (Process process : bpmnModel.getProcesses()) { - for (Lane lane : process.getLanes()) { - GraphicInfo graphicInfo = bpmnModel.getGraphicInfo(lane.getId()); - processDiagramCanvas.drawPoolOrLane(lane.getName(), graphicInfo, scaleFactor); - } - } - - // Draw activities and their sequence-flows - for (Process process : bpmnModel.getProcesses()) { - for (FlowNode flowNode : process.findFlowElementsOfType(FlowNode.class)) { - if (!isPartOfCollapsedSubProcess(flowNode, bpmnModel)) { - drawActivity(processDiagramCanvas, bpmnModel, flowNode, highLightedActivities, highLightedFlows, scaleFactor, drawSequenceFlowNameWithNoLabelDI); - } - } - } - - // Draw artifacts - for (Process process : bpmnModel.getProcesses()) { - - for (Artifact artifact : process.getArtifacts()) { - drawArtifact(processDiagramCanvas, bpmnModel, artifact); - } - - List subProcesses = process.findFlowElementsOfType(SubProcess.class, true); - if (subProcesses != null) { - for (SubProcess subProcess : subProcesses) { - - GraphicInfo graphicInfo = bpmnModel.getGraphicInfo(subProcess.getId()); - if (graphicInfo != null && graphicInfo.getExpanded() != null && !graphicInfo.getExpanded()) { - continue; - } - - if (!isPartOfCollapsedSubProcess(subProcess, bpmnModel)) { - for (Artifact subProcessArtifact : subProcess.getArtifacts()) { - drawArtifact(processDiagramCanvas, bpmnModel, subProcessArtifact); - } - } - } - } - } - - return processDiagramCanvas; - } - - protected void prepareBpmnModel(BpmnModel bpmnModel) { - - // Need to make sure all elements have positive x and y. - // Check all graphicInfo and update the elements accordingly - - List allGraphicInfos = new ArrayList<>(); - if (bpmnModel.getLocationMap() != null) { - allGraphicInfos.addAll(bpmnModel.getLocationMap().values()); - } - if (bpmnModel.getLabelLocationMap() != null) { - allGraphicInfos.addAll(bpmnModel.getLabelLocationMap().values()); - } - if (bpmnModel.getFlowLocationMap() != null) { - for (List flowGraphicInfos : bpmnModel.getFlowLocationMap().values()) { - allGraphicInfos.addAll(flowGraphicInfos); - } - } - - if (allGraphicInfos.size() > 0) { - - boolean needsTranslationX = false; - boolean needsTranslationY = false; - - double lowestX = 0.0; - double lowestY = 0.0; - - // Collect lowest x and y - for (GraphicInfo graphicInfo : allGraphicInfos) { - - double x = graphicInfo.getX(); - double y = graphicInfo.getY(); - - if (x < lowestX) { - needsTranslationX = true; - lowestX = x; - } - if (y < lowestY) { - needsTranslationY = true; - lowestY = y; - } - - } - - // Update all graphicInfo objects - if (needsTranslationX || needsTranslationY) { - - double translationX = Math.abs(lowestX); - double translationY = Math.abs(lowestY); - - for (GraphicInfo graphicInfo : allGraphicInfos) { - if (needsTranslationX) { - graphicInfo.setX(graphicInfo.getX() + translationX); - } - if (needsTranslationY) { - graphicInfo.setY(graphicInfo.getY() + translationY); - } - } - } - - } - - } - - protected void drawActivity(CustomDefaultProcessDiagramCanvas processDiagramCanvas, BpmnModel bpmnModel, - FlowNode flowNode, List highLightedActivities, List highLightedFlows, double scaleFactor, Boolean drawSequenceFlowNameWithNoLabelDI) { - - ActivityDrawInstruction drawInstruction = activityDrawInstructions.get(flowNode.getClass()); - if (drawInstruction != null) { - - drawInstruction.draw(processDiagramCanvas, bpmnModel, flowNode); - - // Gather info on the multi instance marker - boolean multiInstanceSequential = false; - boolean multiInstanceParallel = false; - boolean collapsed = false; - if (flowNode instanceof Activity) { - Activity activity = (Activity) flowNode; - MultiInstanceLoopCharacteristics multiInstanceLoopCharacteristics = activity.getLoopCharacteristics(); - if (multiInstanceLoopCharacteristics != null) { - multiInstanceSequential = multiInstanceLoopCharacteristics.isSequential(); - multiInstanceParallel = !multiInstanceSequential; - } - } - - // Gather info on the collapsed marker - GraphicInfo graphicInfo = bpmnModel.getGraphicInfo(flowNode.getId()); - if (flowNode instanceof SubProcess) { - collapsed = graphicInfo.getExpanded() != null && !graphicInfo.getExpanded(); - } else if (flowNode instanceof CallActivity) { - collapsed = true; - } - - if (scaleFactor == 1.0) { - // Actually draw the markers - processDiagramCanvas.drawActivityMarkers((int) graphicInfo.getX(), (int) graphicInfo.getY(), (int) graphicInfo.getWidth(), (int) graphicInfo.getHeight(), - multiInstanceSequential, multiInstanceParallel, collapsed); - } - - // Draw highlighted activities - if (highLightedActivities.contains(flowNode.getId())) { - drawHighLightRed(processDiagramCanvas, bpmnModel.getGraphicInfo(flowNode.getId())); - } else if (highLightedActivities.contains(Color.RED.toString() + flowNode.getId())) { - drawHighLight(processDiagramCanvas, bpmnModel.getGraphicInfo(flowNode.getId())); - } - - } else if (flowNode instanceof Task) { - activityDrawInstructions.get(Task.class).draw(processDiagramCanvas, bpmnModel, flowNode); - - if (highLightedActivities.contains(flowNode.getId())) { - drawHighLightRed(processDiagramCanvas, bpmnModel.getGraphicInfo(flowNode.getId())); - } else if (highLightedActivities.contains(Color.RED.toString() + flowNode.getId())) { - drawHighLight(processDiagramCanvas, bpmnModel.getGraphicInfo(flowNode.getId())); - } - } - - // Outgoing transitions of activity - for (SequenceFlow sequenceFlow : flowNode.getOutgoingFlows()) { - boolean highLighted = (highLightedFlows.contains(sequenceFlow.getId())); - String defaultFlow = null; - if (flowNode instanceof Activity) { - defaultFlow = ((Activity) flowNode).getDefaultFlow(); - } else if (flowNode instanceof Gateway) { - defaultFlow = ((Gateway) flowNode).getDefaultFlow(); - } - - boolean isDefault = false; - if (defaultFlow != null && defaultFlow.equalsIgnoreCase(sequenceFlow.getId())) { - isDefault = true; - } - boolean drawConditionalIndicator = sequenceFlow.getConditionExpression() != null && sequenceFlow.getConditionExpression().trim().length() > 0 && !(flowNode instanceof Gateway); - - String sourceRef = sequenceFlow.getSourceRef(); - String targetRef = sequenceFlow.getTargetRef(); - FlowElement sourceElement = bpmnModel.getFlowElement(sourceRef); - FlowElement targetElement = bpmnModel.getFlowElement(targetRef); - List graphicInfoList = bpmnModel.getFlowLocationGraphicInfo(sequenceFlow.getId()); - if (graphicInfoList != null && graphicInfoList.size() > 0) { - graphicInfoList = connectionPerfectionizer(processDiagramCanvas, bpmnModel, sourceElement, targetElement, graphicInfoList); - int[] xPoints = new int[graphicInfoList.size()]; - int[] yPoints = new int[graphicInfoList.size()]; - - for (int i = 1; i < graphicInfoList.size(); i++) { - GraphicInfo graphicInfo = graphicInfoList.get(i); - GraphicInfo previousGraphicInfo = graphicInfoList.get(i - 1); - - if (i == 1) { - xPoints[0] = (int) previousGraphicInfo.getX(); - yPoints[0] = (int) previousGraphicInfo.getY(); - } - xPoints[i] = (int) graphicInfo.getX(); - yPoints[i] = (int) graphicInfo.getY(); - - } - - processDiagramCanvas.drawSequenceflow(xPoints, yPoints, drawConditionalIndicator, isDefault, highLighted, scaleFactor); - - // Draw sequenceflow label - GraphicInfo labelGraphicInfo = bpmnModel.getLabelGraphicInfo(sequenceFlow.getId()); - if (labelGraphicInfo != null) { - processDiagramCanvas.drawLabel(sequenceFlow.getName(), labelGraphicInfo, false); - } else { - if (drawSequenceFlowNameWithNoLabelDI) { - GraphicInfo lineCenter = getLineCenter(graphicInfoList); - processDiagramCanvas.drawLabel(sequenceFlow.getName(), lineCenter, false); - } - - } - } - } - - // Nested elements - if (flowNode instanceof FlowElementsContainer) { - for (FlowElement nestedFlowElement : ((FlowElementsContainer) flowNode).getFlowElements()) { - if (nestedFlowElement instanceof FlowNode && !isPartOfCollapsedSubProcess(nestedFlowElement, bpmnModel)) { - drawActivity(processDiagramCanvas, bpmnModel, (FlowNode) nestedFlowElement, - highLightedActivities, highLightedFlows, scaleFactor, drawSequenceFlowNameWithNoLabelDI); - } - } - } - } - - /** - * This method makes coordinates of connection flow better. - * - * @param processDiagramCanvas - * @param bpmnModel - * @param sourceElement - * @param targetElement - * @param graphicInfoList - * @return - */ - protected static List connectionPerfectionizer(CustomDefaultProcessDiagramCanvas processDiagramCanvas, BpmnModel bpmnModel, BaseElement sourceElement, BaseElement targetElement, List graphicInfoList) { - GraphicInfo sourceGraphicInfo = bpmnModel.getGraphicInfo(sourceElement.getId()); - GraphicInfo targetGraphicInfo = bpmnModel.getGraphicInfo(targetElement.getId()); - - CustomDefaultProcessDiagramCanvas.SHAPE_TYPE sourceShapeType = getShapeType(sourceElement); - CustomDefaultProcessDiagramCanvas.SHAPE_TYPE targetShapeType = getShapeType(targetElement); - - return processDiagramCanvas.connectionPerfectionizer(sourceShapeType, targetShapeType, sourceGraphicInfo, targetGraphicInfo, graphicInfoList); - } - - /** - * This method returns shape type of base element.
- * Each element can be presented as rectangle, rhombus, or ellipse. - * - * @param baseElement - * @return CustomDefaultProcessDiagramCanvas.SHAPE_TYPE - */ - protected static CustomDefaultProcessDiagramCanvas.SHAPE_TYPE getShapeType(BaseElement baseElement) { - if (baseElement instanceof Task || baseElement instanceof Activity || baseElement instanceof TextAnnotation) { - return CustomDefaultProcessDiagramCanvas.SHAPE_TYPE.Rectangle; - } else if (baseElement instanceof Gateway) { - return CustomDefaultProcessDiagramCanvas.SHAPE_TYPE.Rhombus; - } else if (baseElement instanceof Event) { - return CustomDefaultProcessDiagramCanvas.SHAPE_TYPE.Ellipse; - } else { - // unknown source element, just do not correct coordinates - } - return null; - } - - protected static GraphicInfo getLineCenter(List graphicInfoList) { - GraphicInfo gi = new GraphicInfo(); - - int[] xPoints = new int[graphicInfoList.size()]; - int[] yPoints = new int[graphicInfoList.size()]; - - double length = 0; - double[] lengths = new double[graphicInfoList.size()]; - lengths[0] = 0; - double m; - for (int i = 1; i < graphicInfoList.size(); i++) { - GraphicInfo graphicInfo = graphicInfoList.get(i); - GraphicInfo previousGraphicInfo = graphicInfoList.get(i - 1); - - if (i == 1) { - xPoints[0] = (int) previousGraphicInfo.getX(); - yPoints[0] = (int) previousGraphicInfo.getY(); - } - xPoints[i] = (int) graphicInfo.getX(); - yPoints[i] = (int) graphicInfo.getY(); - - length += Math.sqrt( - Math.pow((int) graphicInfo.getX() - (int) previousGraphicInfo.getX(), 2) + - Math.pow((int) graphicInfo.getY() - (int) previousGraphicInfo.getY(), 2)); - lengths[i] = length; - } - m = length / 2; - int p1 = 0; - int p2 = 1; - for (int i = 1; i < lengths.length; i++) { - double len = lengths[i]; - p1 = i - 1; - p2 = i; - if (len > m) { - break; - } - } - - GraphicInfo graphicInfo1 = graphicInfoList.get(p1); - GraphicInfo graphicInfo2 = graphicInfoList.get(p2); - - double AB = (int) graphicInfo2.getX() - (int) graphicInfo1.getX(); - double OA = (int) graphicInfo2.getY() - (int) graphicInfo1.getY(); - double OB = lengths[p2] - lengths[p1]; - double ob = m - lengths[p1]; - double ab = AB * ob / OB; - double oa = OA * ob / OB; - - double mx = graphicInfo1.getX() + ab; - double my = graphicInfo1.getY() + oa; - - gi.setX(mx); - gi.setY(my); - return gi; - } - - protected void drawArtifact(CustomDefaultProcessDiagramCanvas processDiagramCanvas, BpmnModel bpmnModel, Artifact artifact) { - - ArtifactDrawInstruction drawInstruction = artifactDrawInstructions.get(artifact.getClass()); - if (drawInstruction != null) { - drawInstruction.draw(processDiagramCanvas, bpmnModel, artifact); - } - } - - private static void drawHighLight(CustomDefaultProcessDiagramCanvas processDiagramCanvas, GraphicInfo graphicInfo) { - processDiagramCanvas.drawHighLight((int) graphicInfo.getX(), (int) graphicInfo.getY(), (int) graphicInfo.getWidth(), (int) graphicInfo.getHeight()); - - } - - private static void drawHighLightRed(CustomDefaultProcessDiagramCanvas processDiagramCanvas, GraphicInfo graphicInfo) { - processDiagramCanvas.drawHighLightRed((int) graphicInfo.getX(), (int) graphicInfo.getY(), (int) graphicInfo.getWidth(), (int) graphicInfo.getHeight()); - - } - - protected static CustomDefaultProcessDiagramCanvas initProcessDiagramCanvas(BpmnModel bpmnModel, String imageType, - String activityFontName, String labelFontName, String annotationFontName, ClassLoader customClassLoader) { - - // We need to calculate maximum values to know how big the image will be in its entirety - double minX = Double.MAX_VALUE; - double maxX = 0; - double minY = Double.MAX_VALUE; - double maxY = 0; - - for (Pool pool : bpmnModel.getPools()) { - GraphicInfo graphicInfo = bpmnModel.getGraphicInfo(pool.getId()); - minX = graphicInfo.getX(); - maxX = graphicInfo.getX() + graphicInfo.getWidth(); - minY = graphicInfo.getY(); - maxY = graphicInfo.getY() + graphicInfo.getHeight(); - } - - List flowNodes = gatherAllFlowNodes(bpmnModel); - for (FlowNode flowNode : flowNodes) { - - GraphicInfo flowNodeGraphicInfo = bpmnModel.getGraphicInfo(flowNode.getId()); - - // width - if (flowNodeGraphicInfo.getX() + flowNodeGraphicInfo.getWidth() > maxX) { - maxX = flowNodeGraphicInfo.getX() + flowNodeGraphicInfo.getWidth(); - } - if (flowNodeGraphicInfo.getX() < minX) { - minX = flowNodeGraphicInfo.getX(); - } - // height - if (flowNodeGraphicInfo.getY() + flowNodeGraphicInfo.getHeight() > maxY) { - maxY = flowNodeGraphicInfo.getY() + flowNodeGraphicInfo.getHeight(); - } - if (flowNodeGraphicInfo.getY() < minY) { - minY = flowNodeGraphicInfo.getY(); - } - - for (SequenceFlow sequenceFlow : flowNode.getOutgoingFlows()) { - List graphicInfoList = bpmnModel.getFlowLocationGraphicInfo(sequenceFlow.getId()); - if (graphicInfoList != null) { - for (GraphicInfo graphicInfo : graphicInfoList) { - // width - if (graphicInfo.getX() > maxX) { - maxX = graphicInfo.getX(); - } - if (graphicInfo.getX() < minX) { - minX = graphicInfo.getX(); - } - // height - if (graphicInfo.getY() > maxY) { - maxY = graphicInfo.getY(); - } - if (graphicInfo.getY() < minY) { - minY = graphicInfo.getY(); - } - } - } - } - } - - List artifacts = gatherAllArtifacts(bpmnModel); - for (Artifact artifact : artifacts) { - - GraphicInfo artifactGraphicInfo = bpmnModel.getGraphicInfo(artifact.getId()); - - if (artifactGraphicInfo != null) { - // width - if (artifactGraphicInfo.getX() + artifactGraphicInfo.getWidth() > maxX) { - maxX = artifactGraphicInfo.getX() + artifactGraphicInfo.getWidth(); - } - if (artifactGraphicInfo.getX() < minX) { - minX = artifactGraphicInfo.getX(); - } - // height - if (artifactGraphicInfo.getY() + artifactGraphicInfo.getHeight() > maxY) { - maxY = artifactGraphicInfo.getY() + artifactGraphicInfo.getHeight(); - } - if (artifactGraphicInfo.getY() < minY) { - minY = artifactGraphicInfo.getY(); - } - } - - List graphicInfoList = bpmnModel.getFlowLocationGraphicInfo(artifact.getId()); - if (graphicInfoList != null) { - for (GraphicInfo graphicInfo : graphicInfoList) { - // width - if (graphicInfo.getX() > maxX) { - maxX = graphicInfo.getX(); - } - if (graphicInfo.getX() < minX) { - minX = graphicInfo.getX(); - } - // height - if (graphicInfo.getY() > maxY) { - maxY = graphicInfo.getY(); - } - if (graphicInfo.getY() < minY) { - minY = graphicInfo.getY(); - } - } - } - } - - int nrOfLanes = 0; - for (Process process : bpmnModel.getProcesses()) { - for (Lane l : process.getLanes()) { - - nrOfLanes++; - - GraphicInfo graphicInfo = bpmnModel.getGraphicInfo(l.getId()); - // // width - if (graphicInfo.getX() + graphicInfo.getWidth() > maxX) { - maxX = graphicInfo.getX() + graphicInfo.getWidth(); - } - if (graphicInfo.getX() < minX) { - minX = graphicInfo.getX(); - } - // height - if (graphicInfo.getY() + graphicInfo.getHeight() > maxY) { - maxY = graphicInfo.getY() + graphicInfo.getHeight(); - } - if (graphicInfo.getY() < minY) { - minY = graphicInfo.getY(); - } - } - } - - // Special case, see https://activiti.atlassian.net/browse/ACT-1431 - if (flowNodes.isEmpty() && bpmnModel.getPools().isEmpty() && nrOfLanes == 0) { - // Nothing to show - minX = 0; - minY = 0; - } - - return new CustomDefaultProcessDiagramCanvas((int) maxX + 10, (int) maxY + 10, (int) minX, (int) minY, - imageType, activityFontName, labelFontName, annotationFontName, customClassLoader); - } - - protected static List gatherAllArtifacts(BpmnModel bpmnModel) { - List artifacts = new ArrayList<>(); - for (Process process : bpmnModel.getProcesses()) { - artifacts.addAll(process.getArtifacts()); - } - return artifacts; - } - - protected static List gatherAllFlowNodes(BpmnModel bpmnModel) { - List flowNodes = new ArrayList<>(); - for (Process process : bpmnModel.getProcesses()) { - flowNodes.addAll(gatherAllFlowNodes(process)); - } - return flowNodes; - } - - protected static List gatherAllFlowNodes(FlowElementsContainer flowElementsContainer) { - List flowNodes = new ArrayList<>(); - for (FlowElement flowElement : flowElementsContainer.getFlowElements()) { - if (flowElement instanceof FlowNode) { - flowNodes.add((FlowNode) flowElement); - } - if (flowElement instanceof FlowElementsContainer) { - flowNodes.addAll(gatherAllFlowNodes((FlowElementsContainer) flowElement)); - } - } - return flowNodes; - } - - protected boolean isPartOfCollapsedSubProcess(FlowElement flowElement, BpmnModel model) { - SubProcess subProcess = flowElement.getSubProcess(); - if (subProcess != null) { - GraphicInfo graphicInfo = model.getGraphicInfo(subProcess.getId()); - if (graphicInfo != null && graphicInfo.getExpanded() != null && !graphicInfo.getExpanded()) { - return true; - } - - return isPartOfCollapsedSubProcess(subProcess, model); - } - - return false; - } - - public Map, ActivityDrawInstruction> getActivityDrawInstructions() { - return activityDrawInstructions; - } - - public void setActivityDrawInstructions( - Map, ActivityDrawInstruction> activityDrawInstructions) { - this.activityDrawInstructions = activityDrawInstructions; - } - - public Map, ArtifactDrawInstruction> getArtifactDrawInstructions() { - return artifactDrawInstructions; - } - - public void setArtifactDrawInstructions( - Map, ArtifactDrawInstruction> artifactDrawInstructions) { - this.artifactDrawInstructions = artifactDrawInstructions; - } - - protected interface ActivityDrawInstruction { - void draw(CustomDefaultProcessDiagramCanvas processDiagramCanvas, BpmnModel bpmnModel, FlowNode flowNode); - } - - protected interface ArtifactDrawInstruction { - void draw(CustomDefaultProcessDiagramCanvas processDiagramCanvas, BpmnModel bpmnModel, Artifact artifact); - } -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/flowable/cmd/AddSequenceMultiInstanceCmd.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/flowable/cmd/AddSequenceMultiInstanceCmd.java deleted file mode 100644 index 3cdfcf415..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/flowable/cmd/AddSequenceMultiInstanceCmd.java +++ /dev/null @@ -1,61 +0,0 @@ -package org.dromara.workflow.flowable.cmd; - -import cn.hutool.core.collection.CollUtil; -import org.flowable.common.engine.impl.interceptor.Command; -import org.flowable.common.engine.impl.interceptor.CommandContext; -import org.flowable.engine.impl.persistence.entity.ExecutionEntity; -import org.flowable.engine.impl.persistence.entity.ExecutionEntityManager; -import org.flowable.engine.impl.util.CommandContextUtil; - -import java.util.HashMap; -import java.util.List; -import java.util.Map; - -import static org.dromara.workflow.common.constant.FlowConstant.NUMBER_OF_INSTANCES; - -/** - * 串行加签 - * - * @author may - */ -public class AddSequenceMultiInstanceCmd implements Command { - - /** - * 执行id - */ - private final String executionId; - - /** - * 会签人员集合KEY - */ - private final String assigneeList; - - /** - * 加签人员 - */ - private final List assignees; - - public AddSequenceMultiInstanceCmd(String executionId, String assigneeList, List assignees) { - this.executionId = executionId; - this.assigneeList = assigneeList; - this.assignees = assignees; - } - - @Override - public Void execute(CommandContext commandContext) { - ExecutionEntityManager executionEntityManager = CommandContextUtil.getExecutionEntityManager(); - ExecutionEntity entity = executionEntityManager.findById(executionId); - // 多实例任务总数加 assignees.size() - if (entity.getVariable(NUMBER_OF_INSTANCES) instanceof Integer nrOfInstances) { - entity.setVariable(NUMBER_OF_INSTANCES, nrOfInstances + assignees.size()); - } - // 设置流程变量 - if (entity.getVariable(assigneeList) instanceof List userIds) { - CollUtil.addAll(userIds, assignees); - Map variables = new HashMap<>(16); - variables.put(assigneeList, userIds); - entity.setVariables(variables); - } - return null; - } -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/flowable/cmd/AttachmentCmd.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/flowable/cmd/AttachmentCmd.java deleted file mode 100644 index 20a0a5f3a..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/flowable/cmd/AttachmentCmd.java +++ /dev/null @@ -1,66 +0,0 @@ -package org.dromara.workflow.flowable.cmd; - -import cn.hutool.core.collection.CollUtil; -import org.dromara.common.core.domain.dto.OssDTO; -import org.dromara.common.core.service.OssService; -import org.dromara.common.core.utils.StringUtils; -import org.dromara.common.satoken.utils.LoginHelper; -import org.flowable.common.engine.impl.interceptor.Command; -import org.flowable.common.engine.impl.interceptor.CommandContext; -import org.flowable.engine.impl.persistence.entity.AttachmentEntity; -import org.flowable.engine.impl.persistence.entity.AttachmentEntityManager; -import org.flowable.engine.impl.util.CommandContextUtil; - -import java.util.Date; -import java.util.List; - -/** - * 附件上传 - * - * @author may - */ -public class AttachmentCmd implements Command { - - private final String fileId; - - private final String taskId; - - private final String processInstanceId; - - private final OssService ossService; - - public AttachmentCmd(String fileId, String taskId, String processInstanceId, OssService ossService) { - this.fileId = fileId; - this.taskId = taskId; - this.processInstanceId = processInstanceId; - this.ossService = ossService; - } - - @Override - public Boolean execute(CommandContext commandContext) { - try { - if (StringUtils.isNotBlank(fileId)) { - List ossList = ossService.selectByIds(fileId); - if (CollUtil.isNotEmpty(ossList)) { - for (OssDTO oss : ossList) { - AttachmentEntityManager attachmentEntityManager = CommandContextUtil.getAttachmentEntityManager(); - AttachmentEntity attachmentEntity = attachmentEntityManager.create(); - attachmentEntity.setRevision(1); - attachmentEntity.setUserId(LoginHelper.getUserId().toString()); - attachmentEntity.setName(oss.getOriginalName()); - attachmentEntity.setDescription(oss.getOriginalName()); - attachmentEntity.setType(oss.getFileSuffix()); - attachmentEntity.setTaskId(taskId); - attachmentEntity.setProcessInstanceId(processInstanceId); - attachmentEntity.setContentId(oss.getOssId().toString()); - attachmentEntity.setTime(new Date()); - attachmentEntityManager.insert(attachmentEntity); - } - } - } - } catch (Exception e) { - throw new RuntimeException(e); - } - return true; - } -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/flowable/cmd/DeleteExecutionCmd.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/flowable/cmd/DeleteExecutionCmd.java deleted file mode 100644 index 215d31023..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/flowable/cmd/DeleteExecutionCmd.java +++ /dev/null @@ -1,36 +0,0 @@ -package org.dromara.workflow.flowable.cmd; - -import org.flowable.common.engine.impl.interceptor.Command; -import org.flowable.common.engine.impl.interceptor.CommandContext; -import org.flowable.engine.impl.persistence.entity.ExecutionEntity; -import org.flowable.engine.impl.persistence.entity.ExecutionEntityManager; -import org.flowable.engine.impl.util.CommandContextUtil; - -import java.io.Serializable; - -/** - * 删除执行数据 - * - * @author may - */ -public class DeleteExecutionCmd implements Command, Serializable { - - /** - * 执行id - */ - private final String executionId; - - public DeleteExecutionCmd(String executionId) { - this.executionId = executionId; - } - - @Override - public Void execute(CommandContext commandContext) { - ExecutionEntityManager executionEntityManager = CommandContextUtil.getExecutionEntityManager(); - ExecutionEntity entity = executionEntityManager.findById(executionId); - if (entity != null) { - executionEntityManager.deleteExecutionAndRelatedData(entity, "", false, false); - } - return null; - } -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/flowable/cmd/DeleteSequenceMultiInstanceCmd.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/flowable/cmd/DeleteSequenceMultiInstanceCmd.java deleted file mode 100644 index a61daebc5..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/flowable/cmd/DeleteSequenceMultiInstanceCmd.java +++ /dev/null @@ -1,83 +0,0 @@ -package org.dromara.workflow.flowable.cmd; - -import cn.hutool.core.util.ObjectUtil; -import lombok.AllArgsConstructor; -import org.dromara.common.core.utils.StreamUtils; -import org.flowable.common.engine.impl.interceptor.Command; -import org.flowable.common.engine.impl.interceptor.CommandContext; -import org.flowable.engine.impl.persistence.entity.ExecutionEntity; -import org.flowable.engine.impl.persistence.entity.ExecutionEntityManager; -import org.flowable.engine.impl.util.CommandContextUtil; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; - -import static org.dromara.workflow.common.constant.FlowConstant.LOOP_COUNTER; -import static org.dromara.workflow.common.constant.FlowConstant.NUMBER_OF_INSTANCES; - - -/** - * 串行减签 - * - * @author may - */ -@AllArgsConstructor -public class DeleteSequenceMultiInstanceCmd implements Command { - - /** - * 当前节点审批人员id - */ - private final String currentUserId; - - /** - * 执行id - */ - private final String executionId; - - /** - * 会签人员集合KEY - */ - private final String assigneeList; - - /** - * 减签人员 - */ - private final List assignees; - - - @Override - @SuppressWarnings("unchecked") - public Void execute(CommandContext commandContext) { - ExecutionEntityManager executionEntityManager = CommandContextUtil.getExecutionEntityManager(); - ExecutionEntity entity = executionEntityManager.findById(executionId); - // 设置流程变量 - List userIds = new ArrayList<>(); - List variable = (List) entity.getVariable(assigneeList); - for (Object o : variable) { - userIds.add(Long.valueOf(o.toString())); - } - List userIdList = new ArrayList<>(); - userIds.forEach(e -> { - Long userId = StreamUtils.findFirst(assignees, id -> ObjectUtil.equals(id, e)); - if (userId == null) { - userIdList.add(e); - } - }); - // 当前任务执行位置 - int loopCounterIndex = -1; - for (int i = 0; i < userIdList.size(); i++) { - Long userId = userIdList.get(i); - if (currentUserId.equals(userId.toString())) { - loopCounterIndex = i; - } - } - Map variables = new HashMap<>(16); - variables.put(NUMBER_OF_INSTANCES, userIdList.size()); - variables.put(assigneeList, userIdList); - variables.put(LOOP_COUNTER, loopCounterIndex); - entity.setVariables(variables); - return null; - } -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/flowable/cmd/ExecutionChildByExecutionIdCmd.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/flowable/cmd/ExecutionChildByExecutionIdCmd.java deleted file mode 100644 index 1f3088bfc..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/flowable/cmd/ExecutionChildByExecutionIdCmd.java +++ /dev/null @@ -1,39 +0,0 @@ -package org.dromara.workflow.flowable.cmd; - -import org.dromara.common.core.utils.StreamUtils; -import org.flowable.common.engine.impl.interceptor.Command; -import org.flowable.common.engine.impl.interceptor.CommandContext; -import org.flowable.engine.impl.persistence.entity.ExecutionEntity; -import org.flowable.engine.impl.persistence.entity.ExecutionEntityManager; -import org.flowable.engine.impl.util.CommandContextUtil; - -import java.io.Serializable; -import java.util.List; - -/** - * 获取并行网关执行后保留的执行实例数据 - * - * @author may - */ -public class ExecutionChildByExecutionIdCmd implements Command>, Serializable { - - /** - * 当前任务执行实例id - */ - private final String executionId; - - public ExecutionChildByExecutionIdCmd(String executionId) { - this.executionId = executionId; - } - - @Override - public List execute(CommandContext commandContext) { - ExecutionEntityManager executionEntityManager = CommandContextUtil.getExecutionEntityManager(); - // 获取当前执行数据 - ExecutionEntity executionEntity = executionEntityManager.findById(executionId); - // 通过当前执行数据的父执行,查询所有子执行数据 - List allChildrenExecution = - executionEntityManager.collectChildren(executionEntity.getParent()); - return StreamUtils.filter(allChildrenExecution, e -> !e.isActive()); - } -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/flowable/cmd/UpdateBusinessStatusCmd.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/flowable/cmd/UpdateBusinessStatusCmd.java deleted file mode 100644 index 3ba120aef..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/flowable/cmd/UpdateBusinessStatusCmd.java +++ /dev/null @@ -1,37 +0,0 @@ -package org.dromara.workflow.flowable.cmd; - -import org.dromara.common.core.exception.ServiceException; -import org.flowable.common.engine.impl.interceptor.Command; -import org.flowable.common.engine.impl.interceptor.CommandContext; -import org.flowable.engine.impl.persistence.entity.HistoricProcessInstanceEntity; -import org.flowable.engine.impl.persistence.entity.HistoricProcessInstanceEntityManager; -import org.flowable.engine.impl.util.CommandContextUtil; - -/** - * 修改流程状态 - * - * @author may - */ -public class UpdateBusinessStatusCmd implements Command { - - private final String processInstanceId; - private final String status; - - public UpdateBusinessStatusCmd(String processInstanceId, String status) { - this.processInstanceId = processInstanceId; - this.status = status; - } - - @Override - public Boolean execute(CommandContext commandContext) { - try { - HistoricProcessInstanceEntityManager manager = CommandContextUtil.getHistoricProcessInstanceEntityManager(); - HistoricProcessInstanceEntity processInstance = manager.findById(processInstanceId); - processInstance.setBusinessStatus(status); - manager.update(processInstance); - return true; - } catch (Exception e) { - throw new ServiceException(e.getMessage()); - } - } -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/flowable/cmd/UpdateHiTaskInstCmd.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/flowable/cmd/UpdateHiTaskInstCmd.java deleted file mode 100644 index 42f6d1c78..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/flowable/cmd/UpdateHiTaskInstCmd.java +++ /dev/null @@ -1,51 +0,0 @@ -package org.dromara.workflow.flowable.cmd; - -import org.dromara.common.core.exception.ServiceException; -import org.flowable.common.engine.impl.interceptor.Command; -import org.flowable.common.engine.impl.interceptor.CommandContext; -import org.flowable.engine.impl.util.CommandContextUtil; -import org.flowable.task.service.HistoricTaskService; -import org.flowable.task.service.impl.persistence.entity.HistoricTaskInstanceEntity; - -import java.util.Date; -import java.util.List; - - -/** - * 修改流程历史 - * - * @author may - */ -public class UpdateHiTaskInstCmd implements Command { - - private final List taskIds; - - private final String processDefinitionId; - - private final String processInstanceId; - - public UpdateHiTaskInstCmd(List taskIds, String processDefinitionId, String processInstanceId) { - this.taskIds = taskIds; - this.processDefinitionId = processDefinitionId; - this.processInstanceId = processInstanceId; - } - - @Override - public Boolean execute(CommandContext commandContext) { - try { - HistoricTaskService historicTaskService = CommandContextUtil.getHistoricTaskService(); - for (String taskId : taskIds) { - HistoricTaskInstanceEntity historicTask = historicTaskService.getHistoricTask(taskId); - if (historicTask != null) { - historicTask.setProcessDefinitionId(processDefinitionId); - historicTask.setProcessInstanceId(processInstanceId); - historicTask.setCreateTime(new Date()); - CommandContextUtil.getHistoricTaskService().updateHistoricTask(historicTask, true); - } - } - return true; - } catch (Exception e) { - throw new ServiceException(e.getMessage()); - } - } -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/flowable/config/FlowableConfig.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/flowable/config/FlowableConfig.java deleted file mode 100644 index 1494bf37f..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/flowable/config/FlowableConfig.java +++ /dev/null @@ -1,32 +0,0 @@ -package org.dromara.workflow.flowable.config; - -import com.baomidou.mybatisplus.core.incrementer.IdentifierGenerator; -import org.dromara.workflow.flowable.handler.TaskTimeoutJobHandler; -import org.flowable.spring.SpringProcessEngineConfiguration; -import org.flowable.spring.boot.EngineConfigurationConfigurer; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.context.annotation.Configuration; - -import java.util.Collections; - - -/** - * flowable配置 - * - * @author may - */ -@Configuration -public class FlowableConfig implements EngineConfigurationConfigurer { - - @Autowired - private GlobalFlowableListener globalFlowableListener; - @Autowired - private IdentifierGenerator identifierGenerator; - - @Override - public void configure(SpringProcessEngineConfiguration processEngineConfiguration) { - processEngineConfiguration.setIdGenerator(() -> identifierGenerator.nextId(null).toString()); - processEngineConfiguration.setEventListeners(Collections.singletonList(globalFlowableListener)); - processEngineConfiguration.addCustomJobHandler(new TaskTimeoutJobHandler()); - } -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/flowable/config/GlobalFlowableListener.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/flowable/config/GlobalFlowableListener.java deleted file mode 100644 index 9bb971a8c..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/flowable/config/GlobalFlowableListener.java +++ /dev/null @@ -1,139 +0,0 @@ -package org.dromara.workflow.flowable.config; - -import cn.hutool.core.collection.CollUtil; -import org.dromara.common.core.utils.StringUtils; -import org.dromara.common.tenant.helper.TenantHelper; -import org.dromara.workflow.common.enums.TaskStatusEnum; -import org.dromara.workflow.flowable.handler.TaskTimeoutJobHandler; -import org.dromara.workflow.utils.QueryUtils; -import org.flowable.bpmn.model.BoundaryEvent; -import org.flowable.bpmn.model.BpmnModel; -import org.flowable.bpmn.model.FlowElement; -import org.flowable.common.engine.api.delegate.event.*; -import org.flowable.common.engine.impl.cfg.TransactionState; -import org.flowable.engine.RepositoryService; -import org.flowable.engine.RuntimeService; -import org.flowable.engine.TaskService; -import org.flowable.engine.impl.util.CommandContextUtil; -import org.flowable.engine.runtime.Execution; -import org.flowable.engine.task.Comment; -import org.flowable.job.service.TimerJobService; -import org.flowable.job.service.impl.persistence.entity.JobEntity; -import org.flowable.job.service.impl.persistence.entity.TimerJobEntity; -import org.flowable.task.api.Task; -import org.flowable.task.service.impl.persistence.entity.TaskEntity; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.beans.factory.annotation.Value; -import org.springframework.context.annotation.Lazy; -import org.springframework.stereotype.Component; - -import java.util.Date; -import java.util.List; - - -/** - * 引擎调度监听 - * - * @author may - */ -@Component -public class GlobalFlowableListener implements FlowableEventListener { - - @Autowired - @Lazy - private TaskService taskService; - - @Autowired - @Lazy - private RuntimeService runtimeService; - - @Autowired - @Lazy - private RepositoryService repositoryService; - - @Value("${flowable.async-executor-activate}") - private boolean asyncExecutorActivate; - - @Override - public void onEvent(FlowableEvent flowableEvent) { - if (flowableEvent instanceof FlowableEngineEvent flowableEngineEvent) { - FlowableEngineEventType engineEventType = (FlowableEngineEventType) flowableEvent.getType(); - switch (engineEventType) { - case JOB_EXECUTION_SUCCESS -> jobExecutionSuccess((FlowableEngineEntityEvent) flowableEngineEvent); - case TASK_DUEDATE_CHANGED, TASK_CREATED -> { - FlowableEntityEvent flowableEntityEvent = (FlowableEntityEvent) flowableEngineEvent; - Object entityObject = flowableEntityEvent.getEntity(); - TaskEntity task = (TaskEntity) entityObject; - if (asyncExecutorActivate && task.getDueDate() != null && task.getDueDate().after(new Date())) { - //删除之前已经存在的定时任务 - TimerJobService timerJobService = CommandContextUtil.getTimerJobService(); - List timerJobEntityList = timerJobService.findTimerJobsByProcessInstanceId(task.getProcessInstanceId()); - if (!CollUtil.isEmpty(timerJobEntityList)) { - for (TimerJobEntity timerJobEntity : timerJobEntityList) { - String taskId = timerJobEntity.getJobHandlerConfiguration(); - if (task.getId().equals(taskId)) { - timerJobService.deleteTimerJob(timerJobEntity); - } - } - } - //创建job对象 - TimerJobEntity timer = timerJobService.createTimerJob(); - timer.setTenantId(TenantHelper.getTenantId()); - //设置job类型 - timer.setJobType(JobEntity.JOB_TYPE_TIMER); - timer.setJobHandlerType(TaskTimeoutJobHandler.TYPE); - timer.setDuedate(task.getDueDate()); - timer.setProcessInstanceId(task.getProcessInstanceId()); - //设置任务id - timer.setJobHandlerConfiguration(task.getId()); - //保存并触发事件 - timerJobService.scheduleTimerJob(timer); - } - } - } - } - } - - @Override - public boolean isFailOnException() { - return true; - } - - @Override - public boolean isFireOnTransactionLifecycleEvent() { - return false; - } - - @Override - public String getOnTransaction() { - return TransactionState.COMMITTED.name(); - } - - /** - * 处理边界定时事件自动审批记录 - * - * @param event 事件 - */ - protected void jobExecutionSuccess(FlowableEngineEntityEvent event) { - if (event != null && StringUtils.isNotBlank(event.getExecutionId())) { - Execution execution = runtimeService.createExecutionQuery().executionId(event.getExecutionId()).singleResult(); - if (execution != null) { - BpmnModel bpmnModel = repositoryService.getBpmnModel(event.getProcessDefinitionId()); - FlowElement flowElement = bpmnModel.getFlowElement(execution.getActivityId()); - if (flowElement instanceof BoundaryEvent) { - String attachedToRefId = ((BoundaryEvent) flowElement).getAttachedToRefId(); - List list = runtimeService.createExecutionQuery().activityId(attachedToRefId).list(); - for (Execution ex : list) { - Task task = QueryUtils.taskQuery().executionId(ex.getId()).singleResult(); - if (task != null) { - List taskComments = taskService.getTaskComments(task.getId()); - if (CollUtil.isEmpty(taskComments)) { - taskService.addComment(task.getId(), task.getProcessInstanceId(), TaskStatusEnum.PASS.getStatus(), "超时自动审批!"); - } - } - } - } - } - } - } -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/flowable/handler/FlowProcessEventHandler.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/flowable/handler/FlowProcessEventHandler.java deleted file mode 100644 index 69ae70a07..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/flowable/handler/FlowProcessEventHandler.java +++ /dev/null @@ -1,50 +0,0 @@ -package org.dromara.workflow.flowable.handler; - -import org.dromara.common.core.domain.event.ProcessEvent; -import org.dromara.common.core.domain.event.ProcessTaskEvent; -import org.dromara.common.core.utils.SpringUtils; -import org.springframework.stereotype.Component; - -/** - * 流程监听服务 - * - * @author may - * @date 2024-06-02 - */ -@Component -public class FlowProcessEventHandler { - - /** - * 总体流程监听(例如: 提交 退回 撤销 终止 作废等) - * - * @param key 流程key - * @param businessKey 业务id - * @param status 状态 - * @param submit 当为true时为申请人节点办理 - */ - public void processHandler(String key, String businessKey, String status, boolean submit) { - ProcessEvent processEvent = new ProcessEvent(); - processEvent.setKey(key); - processEvent.setBusinessKey(businessKey); - processEvent.setStatus(status); - processEvent.setSubmit(submit); - SpringUtils.context().publishEvent(processEvent); - } - - /** - * 执行办理任务监听 - * - * @param key 流程key - * @param taskDefinitionKey 审批节点key - * @param taskId 任务id - * @param businessKey 业务id - */ - public void processTaskHandler(String key, String taskDefinitionKey, String taskId, String businessKey) { - ProcessTaskEvent processTaskEvent = new ProcessTaskEvent(); - processTaskEvent.setKey(key); - processTaskEvent.setTaskDefinitionKey(taskDefinitionKey); - processTaskEvent.setTaskId(taskId); - processTaskEvent.setBusinessKey(businessKey); - SpringUtils.context().publishEvent(processTaskEvent); - } -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/flowable/handler/TaskTimeoutJobHandler.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/flowable/handler/TaskTimeoutJobHandler.java deleted file mode 100644 index 61c938864..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/flowable/handler/TaskTimeoutJobHandler.java +++ /dev/null @@ -1,37 +0,0 @@ -package org.dromara.workflow.flowable.handler; - -import org.dromara.workflow.common.enums.TaskStatusEnum; -import org.flowable.common.engine.impl.interceptor.CommandContext; -import org.flowable.engine.TaskService; -import org.flowable.engine.impl.jobexecutor.TimerEventHandler; -import org.flowable.engine.impl.util.CommandContextUtil; -import org.flowable.job.service.JobHandler; -import org.flowable.job.service.impl.persistence.entity.JobEntity; -import org.flowable.task.api.Task; -import org.flowable.variable.api.delegate.VariableScope; - -/** - * 办理超时(过期)任务 - * - * @author may - */ -public class TaskTimeoutJobHandler extends TimerEventHandler implements JobHandler { - - public static final String TYPE = "taskTimeout"; - - @Override - public String getType() { - return TYPE; - } - - @Override - public void execute(JobEntity job, String configuration, VariableScope variableScope, CommandContext commandContext) { - TaskService taskService = CommandContextUtil.getProcessEngineConfiguration(commandContext) - .getTaskService(); - Task task = taskService.createTaskQuery().taskId(configuration).singleResult(); - if (task != null) { - taskService.addComment(task.getId(), task.getProcessInstanceId(), TaskStatusEnum.TIMEOUT.getStatus(), "超时自动审批!"); - taskService.complete(configuration); - } - } -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/handler/FlowProcessEventHandler.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/handler/FlowProcessEventHandler.java new file mode 100644 index 000000000..9bac6bcd2 --- /dev/null +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/handler/FlowProcessEventHandler.java @@ -0,0 +1,77 @@ +package org.dromara.workflow.handler; + +import lombok.extern.slf4j.Slf4j; +import org.dromara.common.core.domain.event.ProcessDeleteEvent; +import org.dromara.common.core.domain.event.ProcessEvent; +import org.dromara.common.core.domain.event.ProcessTaskEvent; +import org.dromara.common.core.utils.SpringUtils; +import org.dromara.common.tenant.helper.TenantHelper; +import org.springframework.stereotype.Component; + +/** + * 流程监听服务 + * + * @author may + * @date 2024-06-02 + */ +@Slf4j +@Component +public class FlowProcessEventHandler { + + /** + * 总体流程监听(例如: 草稿,撤销,退回,作废,终止,已完成等) + * + * @param flowCode 流程定义编码 + * @param businessId 业务id + * @param status 状态 + * @param submit 当为true时为申请人节点办理 + */ + public void processHandler(String flowCode, String businessId, String status, boolean submit) { + String tenantId = TenantHelper.getTenantId(); + log.info("发布流程事件,租户ID: {}, 流程状态: {}, 流程编码: {}, 业务ID: {}, 是否申请人节点办理: {}", tenantId, status, flowCode, businessId, submit); + ProcessEvent processEvent = new ProcessEvent(); + processEvent.setTenantId(tenantId); + processEvent.setFlowCode(flowCode); + processEvent.setBusinessId(businessId); + processEvent.setStatus(status); + processEvent.setSubmit(submit); + SpringUtils.context().publishEvent(processEvent); + } + + /** + * 执行办理任务监听 + * + * @param flowCode 流程定义编码 + * @param nodeCode 审批节点编码 + * @param taskId 任务id + * @param businessId 业务id + */ + public void processTaskHandler(String flowCode, String nodeCode, Long taskId, String businessId) { + String tenantId = TenantHelper.getTenantId(); + log.info("发布流程任务事件, 租户ID: {}, 流程编码: {}, 节点编码: {}, 任务ID: {}, 业务ID: {}", tenantId, flowCode, nodeCode, taskId, businessId); + ProcessTaskEvent processTaskEvent = new ProcessTaskEvent(); + processTaskEvent.setTenantId(tenantId); + processTaskEvent.setFlowCode(flowCode); + processTaskEvent.setNodeCode(nodeCode); + processTaskEvent.setTaskId(taskId); + processTaskEvent.setBusinessId(businessId); + SpringUtils.context().publishEvent(processTaskEvent); + } + + /** + * 删除流程监听 + * + * @param flowCode 流程定义编码 + * @param businessId 业务ID + */ + public void processDeleteHandler(String flowCode, String businessId) { + String tenantId = TenantHelper.getTenantId(); + log.info("发布删除流程事件, 租户ID: {}, 流程编码: {}, 业务ID: {}", tenantId, flowCode, businessId); + ProcessDeleteEvent processDeleteEvent = new ProcessDeleteEvent(); + processDeleteEvent.setTenantId(tenantId); + processDeleteEvent.setFlowCode(flowCode); + processDeleteEvent.setBusinessId(businessId); + SpringUtils.context().publishEvent(processDeleteEvent); + } + +} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/handler/WorkflowPermissionHandler.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/handler/WorkflowPermissionHandler.java new file mode 100644 index 000000000..a58709a5f --- /dev/null +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/handler/WorkflowPermissionHandler.java @@ -0,0 +1,71 @@ +package org.dromara.workflow.handler; + +import cn.hutool.core.util.ObjectUtil; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.dromara.common.core.domain.model.LoginUser; +import org.dromara.workflow.common.enums.TaskAssigneeEnum; +import org.dromara.common.satoken.utils.LoginHelper; +import org.dromara.warm.flow.core.dto.FlowParams; +import org.dromara.warm.flow.core.handler.PermissionHandler; +import org.dromara.warm.flow.core.service.impl.TaskServiceImpl; +import org.springframework.stereotype.Component; + +import java.util.ArrayList; +import java.util.Collection; +import java.util.List; +import java.util.stream.Collectors; +import java.util.stream.Stream; + +/** + * 办理人权限处理器 + * + * @author AprilWind + */ +@RequiredArgsConstructor +@Component +@Slf4j +public class WorkflowPermissionHandler implements PermissionHandler { + + /** + * 审批前获取当前办理人,办理时会校验的该权限集合 + * 后续在{@link TaskServiceImpl#checkAuth(Task, FlowParams)} 中调用 + * 返回当前用户权限集合 + */ + @Override + public List permissions() { + LoginUser loginUser = LoginHelper.getLoginUser(); + if (ObjectUtil.isNull(loginUser)) { + return new ArrayList<>(); + } + // 使用一个流来构建权限列表 + return Stream.of( + // 角色权限前缀 + loginUser.getRoles().stream() + .map(role -> TaskAssigneeEnum.ROLE.getCode() + role.getRoleId()), + + // 岗位权限前缀 + Stream.ofNullable(loginUser.getPosts()) + .flatMap(Collection::stream) + .map(post -> TaskAssigneeEnum.POST.getCode() + post.getPostId()), + + // 用户和部门权限 + Stream.of(String.valueOf(loginUser.getUserId()), + TaskAssigneeEnum.DEPT.getCode() + loginUser.getDeptId() + ) + ) + .flatMap(stream -> stream) + .collect(Collectors.toList()); + } + + /** + * 获取当前办理人 + * + * @return 当前办理人 + */ + @Override + public String getHandler() { + return LoginHelper.getUserIdStr(); + } + +} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/listener/WorkflowGlobalListener.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/listener/WorkflowGlobalListener.java new file mode 100644 index 000000000..29b8b7279 --- /dev/null +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/listener/WorkflowGlobalListener.java @@ -0,0 +1,115 @@ +package org.dromara.workflow.listener; + +import cn.hutool.core.collection.CollUtil; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.dromara.common.core.enums.BusinessStatusEnum; +import org.dromara.common.core.utils.StringUtils; +import org.dromara.warm.flow.core.entity.Definition; +import org.dromara.warm.flow.core.entity.Instance; +import org.dromara.warm.flow.core.entity.Task; +import org.dromara.warm.flow.core.listener.GlobalListener; +import org.dromara.warm.flow.core.listener.ListenerVariable; +import org.dromara.warm.flow.orm.entity.FlowTask; +import org.dromara.workflow.handler.FlowProcessEventHandler; +import org.dromara.workflow.service.IFlwInstanceService; +import org.dromara.workflow.service.IFlwTaskService; +import org.springframework.stereotype.Component; + +import java.util.List; + +/** + * 全局任务办理监听 + * + * @author may + */ +@Component +@Slf4j +@RequiredArgsConstructor +public class WorkflowGlobalListener implements GlobalListener { + + private final IFlwTaskService taskService; + private final IFlwInstanceService instanceService; + private final FlowProcessEventHandler flowProcessEventHandler; + + /** + * 创建监听器,任务创建时执行 + * + * @param listenerVariable 监听器变量 + */ + @Override + public void create(ListenerVariable listenerVariable) { + Instance instance = listenerVariable.getInstance(); + Definition definition = listenerVariable.getDefinition(); + String businessId = instance.getBusinessId(); + String flowStatus = instance.getFlowStatus(); + Task task = listenerVariable.getTask(); + if (task != null && BusinessStatusEnum.WAITING.getStatus().equals(flowStatus)) { + // 判断流程状态(发布审批中事件) + flowProcessEventHandler.processTaskHandler(definition.getFlowCode(), task.getNodeCode(), task.getId(), businessId); + } + } + + /** + * 开始监听器,任务开始办理时执行 + * + * @param listenerVariable 监听器变量 + */ + @Override + public void start(ListenerVariable listenerVariable) { + } + + /** + * 分派监听器,动态修改代办任务信息 + * + * @param listenerVariable 监听器变量 + */ + @Override + public void assignment(ListenerVariable listenerVariable) { + } + + /** + * 完成监听器,当前任务完成后执行 + * + * @param listenerVariable 监听器变量 + */ + @Override + public void finish(ListenerVariable listenerVariable) { + Instance instance = listenerVariable.getInstance(); + Definition definition = listenerVariable.getDefinition(); + String businessId = instance.getBusinessId(); + String flowStatus = instance.getFlowStatus(); + // 判断流程状态(发布:撤销,退回,作废,终止,已完成事件) + String status = determineFlowStatus(instance, flowStatus); + if (StringUtils.isNotBlank(status)) { + flowProcessEventHandler.processHandler(definition.getFlowCode(), businessId, status, false); + } + } + + /** + * 根据流程实例和当前流程状态确定最终状态 + * + * @param instance 流程实例 + * @param flowStatus 流程实例当前状态 + * @return 流程最终状态 + */ + private String determineFlowStatus(Instance instance, String flowStatus) { + if (StringUtils.isNotBlank(flowStatus) && BusinessStatusEnum.initialState(flowStatus)) { + log.info("流程实例当前状态: {}", flowStatus); + return flowStatus; + } else { + Long instanceId = instance.getId(); + List flowTasks = taskService.selectByInstId(instanceId); + if (CollUtil.isEmpty(flowTasks)) { + String status = BusinessStatusEnum.FINISH.getStatus(); + // 更新流程状态为已完成 + instanceService.updateStatus(instanceId, status); + log.info("流程已结束,状态更新为: {}", status); + return status; + } + log.warn("流程未结束,实例ID: {}", instanceId); + return null; + } + } + +} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/mapper/ActHiProcinstMapper.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/mapper/ActHiProcinstMapper.java deleted file mode 100644 index a3a41c924..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/mapper/ActHiProcinstMapper.java +++ /dev/null @@ -1,16 +0,0 @@ -package org.dromara.workflow.mapper; - -import com.baomidou.mybatisplus.annotation.InterceptorIgnore; -import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; -import org.dromara.workflow.domain.ActHiProcinst; - -/** - * 流程实例Mapper接口 - * - * @author may - * @date 2023-07-22 - */ -@InterceptorIgnore(tenantLine = "true") -public interface ActHiProcinstMapper extends BaseMapperPlus { - -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/mapper/ActHiTaskinstMapper.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/mapper/ActHiTaskinstMapper.java deleted file mode 100644 index 63b394b6f..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/mapper/ActHiTaskinstMapper.java +++ /dev/null @@ -1,16 +0,0 @@ -package org.dromara.workflow.mapper; - -import com.baomidou.mybatisplus.annotation.InterceptorIgnore; -import org.dromara.workflow.domain.ActHiTaskinst; -import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; - -/** - * 流程历史任务Mapper接口 - * - * @author may - * @date 2024-03-02 - */ -@InterceptorIgnore(tenantLine = "true") -public interface ActHiTaskinstMapper extends BaseMapperPlus { - -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/mapper/FlwCategoryMapper.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/mapper/FlwCategoryMapper.java new file mode 100644 index 000000000..d2c0b3a4d --- /dev/null +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/mapper/FlwCategoryMapper.java @@ -0,0 +1,60 @@ +package org.dromara.workflow.mapper; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import org.dromara.common.mybatis.annotation.DataColumn; +import org.dromara.common.mybatis.annotation.DataPermission; +import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; +import org.dromara.common.mybatis.helper.DataBaseHelper; +import org.dromara.workflow.domain.FlowCategory; +import org.dromara.workflow.domain.vo.FlowCategoryVo; + +import java.util.List; +import java.util.stream.Collectors; +import java.util.stream.Stream; + +/** + * 流程分类Mapper接口 + * + * @author may + * @date 2023-06-27 + */ +public interface FlwCategoryMapper extends BaseMapperPlus { + + /** + * 统计指定流程分类ID的分类数量 + * + * @param categoryId 流程分类ID + * @return 该流程分类ID的分类数量 + */ + @DataPermission({ + @DataColumn(key = "deptName", value = "createDept") + }) + long countCategoryById(Long categoryId); + + /** + * 根据父流程分类ID查询其所有子流程分类的列表 + * + * @param parentId 父流程分类ID + * @return 包含子流程分类的列表 + */ + default List selectListByParentId(Long parentId) { + return this.selectList(new LambdaQueryWrapper() + .select(FlowCategory::getCategoryId) + .apply(DataBaseHelper.findInSet(parentId, "ancestors"))); + } + + /** + * 根据父流程分类ID查询包括父ID及其所有子流程分类ID的列表 + * + * @param parentId 父流程分类ID + * @return 包含父ID和子流程分类ID的列表 + */ + default List selectCategoryIdsByParentId(Long parentId) { + return Stream.concat( + this.selectListByParentId(parentId).stream() + .map(FlowCategory::getCategoryId), + Stream.of(parentId) + ).collect(Collectors.toList()); + } + +} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/mapper/FlwInstanceMapper.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/mapper/FlwInstanceMapper.java new file mode 100644 index 000000000..92809c80f --- /dev/null +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/mapper/FlwInstanceMapper.java @@ -0,0 +1,27 @@ +package org.dromara.workflow.mapper; + +import com.baomidou.mybatisplus.core.conditions.Wrapper; +import com.baomidou.mybatisplus.core.toolkit.Constants; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import org.apache.ibatis.annotations.Param; +import org.dromara.workflow.domain.bo.FlowInstanceBo; +import org.dromara.workflow.domain.vo.FlowInstanceVo; + +/** + * 实例信息Mapper接口 + * + * @author may + * @date 2024-03-02 + */ +public interface FlwInstanceMapper { + + /** + * 流程实例信息 + * + * @param page 分页 + * @param queryWrapper 条件 + * @return 结果 + */ + Page selectInstanceList(@Param("page") Page page, @Param(Constants.WRAPPER) Wrapper queryWrapper); + +} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/mapper/ActTaskMapper.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/mapper/FlwTaskMapper.java similarity index 49% rename from ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/mapper/ActTaskMapper.java rename to ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/mapper/FlwTaskMapper.java index 63c5ecb7b..fd86c82de 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/mapper/ActTaskMapper.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/mapper/FlwTaskMapper.java @@ -1,13 +1,15 @@ package org.dromara.workflow.mapper; -import com.baomidou.mybatisplus.annotation.InterceptorIgnore; import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Constants; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import org.apache.ibatis.annotations.Param; -import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; -import org.dromara.workflow.domain.vo.TaskVo; +import org.dromara.workflow.domain.bo.FlowTaskBo; +import org.dromara.workflow.domain.vo.FlowHisTaskVo; +import org.dromara.workflow.domain.vo.FlowTaskVo; + +import java.util.List; /** @@ -16,8 +18,8 @@ import org.dromara.workflow.domain.vo.TaskVo; * @author may * @date 2024-03-02 */ -@InterceptorIgnore(tenantLine = "true") -public interface ActTaskMapper extends BaseMapperPlus { +public interface FlwTaskMapper { + /** * 获取待办信息 * @@ -25,7 +27,15 @@ public interface ActTaskMapper extends BaseMapperPlus { * @param queryWrapper 条件 * @return 结果 */ - Page getTaskWaitByPage(@Param("page") Page page, @Param(Constants.WRAPPER) Wrapper queryWrapper); + Page getListRunTask(@Param("page") Page page, @Param(Constants.WRAPPER) Wrapper queryWrapper); + + /** + * 获取待办信息 + * + * @param queryWrapper 条件 + * @return 结果 + */ + List getListRunTask(@Param(Constants.WRAPPER) Wrapper queryWrapper); /** * 获取已办 @@ -34,7 +44,7 @@ public interface ActTaskMapper extends BaseMapperPlus { * @param queryWrapper 条件 * @return 结果 */ - Page getTaskFinishByPage(@Param("page") Page page, @Param(Constants.WRAPPER) Wrapper queryWrapper); + Page getListFinishTask(@Param("page") Page page, @Param(Constants.WRAPPER) Wrapper queryWrapper); /** * 查询当前用户的抄送 @@ -43,5 +53,5 @@ public interface ActTaskMapper extends BaseMapperPlus { * @param queryWrapper 条件 * @return 结果 */ - Page getTaskCopyByPage(@Param("page") Page page, @Param(Constants.WRAPPER) QueryWrapper queryWrapper); + Page getTaskCopyByPage(@Param("page") Page page, @Param(Constants.WRAPPER) QueryWrapper queryWrapper); } diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/mapper/WfCategoryMapper.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/mapper/WfCategoryMapper.java deleted file mode 100644 index 98aea024e..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/mapper/WfCategoryMapper.java +++ /dev/null @@ -1,15 +0,0 @@ -package org.dromara.workflow.mapper; - -import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; -import org.dromara.workflow.domain.WfCategory; -import org.dromara.workflow.domain.vo.WfCategoryVo; - -/** - * 流程分类Mapper接口 - * - * @author may - * @date 2023-06-27 - */ -public interface WfCategoryMapper extends BaseMapperPlus { - -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/mapper/WfDefinitionConfigMapper.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/mapper/WfDefinitionConfigMapper.java deleted file mode 100644 index ee2088255..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/mapper/WfDefinitionConfigMapper.java +++ /dev/null @@ -1,15 +0,0 @@ -package org.dromara.workflow.mapper; - -import org.dromara.workflow.domain.WfDefinitionConfig; -import org.dromara.workflow.domain.vo.WfDefinitionConfigVo; -import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; - -/** - * 流程定义配置Mapper接口 - * - * @author may - * @date 2024-03-18 - */ -public interface WfDefinitionConfigMapper extends BaseMapperPlus { - -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/mapper/WfFormManageMapper.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/mapper/WfFormManageMapper.java deleted file mode 100644 index acf8111ad..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/mapper/WfFormManageMapper.java +++ /dev/null @@ -1,15 +0,0 @@ -package org.dromara.workflow.mapper; - -import org.dromara.workflow.domain.WfFormManage; -import org.dromara.workflow.domain.vo.WfFormManageVo; -import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; - -/** - * 表单管理Mapper接口 - * - * @author may - * @date 2024-03-29 - */ -public interface WfFormManageMapper extends BaseMapperPlus { - -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/mapper/WfNodeConfigMapper.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/mapper/WfNodeConfigMapper.java deleted file mode 100644 index d2aecacb9..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/mapper/WfNodeConfigMapper.java +++ /dev/null @@ -1,15 +0,0 @@ -package org.dromara.workflow.mapper; - -import org.dromara.workflow.domain.WfNodeConfig; -import org.dromara.workflow.domain.vo.WfNodeConfigVo; -import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; - -/** - * 节点配置Mapper接口 - * - * @author may - * @date 2024-03-30 - */ -public interface WfNodeConfigMapper extends BaseMapperPlus { - -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/mapper/WfTaskBackNodeMapper.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/mapper/WfTaskBackNodeMapper.java deleted file mode 100644 index 9b291feb4..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/mapper/WfTaskBackNodeMapper.java +++ /dev/null @@ -1,13 +0,0 @@ -package org.dromara.workflow.mapper; - -import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; -import org.dromara.workflow.domain.WfTaskBackNode; - -/** - * 节点驳回记录Mapper接口 - * - * @author may - * @date 2024-03-13 - */ -public interface WfTaskBackNodeMapper extends BaseMapperPlus { -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IActHiProcinstService.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IActHiProcinstService.java deleted file mode 100644 index e802c6972..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IActHiProcinstService.java +++ /dev/null @@ -1,31 +0,0 @@ -package org.dromara.workflow.service; - - -import org.dromara.workflow.domain.ActHiProcinst; - -import java.util.List; - -/** - * 流程实例Service接口 - * - * @author may - * @date 2023-07-22 - */ -public interface IActHiProcinstService { - - /** - * 按照业务id查询 - * - * @param businessKeys 业务id - * @return 结果 - */ - List selectByBusinessKeyIn(List businessKeys); - - /** - * 按照业务id查询 - * - * @param businessKey 业务id - * @return 结果 - */ - ActHiProcinst selectByBusinessKey(String businessKey); -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IActHiTaskinstService.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IActHiTaskinstService.java deleted file mode 100644 index ad286e242..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IActHiTaskinstService.java +++ /dev/null @@ -1,11 +0,0 @@ -package org.dromara.workflow.service; - - -/** - * 流程历史任务Service接口 - * - * @author may - * @date 2024-03-02 - */ -public interface IActHiTaskinstService { -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IActModelService.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IActModelService.java deleted file mode 100644 index 4a6d17062..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IActModelService.java +++ /dev/null @@ -1,83 +0,0 @@ -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.workflow.domain.bo.ModelBo; -import org.dromara.workflow.domain.vo.ModelVo; -import org.flowable.engine.repository.Model; - -import java.util.List; - - -/** - * 模型管理 服务层 - * - * @author may - */ -public interface IActModelService { - /** - * 分页查询模型 - * - * @param modelBo 模型参数 - * @param pageQuery 参数 - * @return 返回分页列表 - */ - TableDataInfo page(ModelBo modelBo, PageQuery pageQuery); - - /** - * 新增模型 - * - * @param modelBo 模型请求对象 - * @return 结果 - */ - boolean saveNewModel(ModelBo modelBo); - - /** - * 查询模型 - * - * @param modelId 模型id - * @return 模型数据 - */ - ModelVo getInfo(String modelId); - - /** - * 修改模型信息 - * - * @param modelBo 模型数据 - * @return 结果 - */ - boolean update(ModelBo modelBo); - - /** - * 编辑模型XML - * - * @param modelBo 模型数据 - * @return 结果 - */ - boolean editModelXml(ModelBo modelBo); - - /** - * 模型部署 - * - * @param id 模型id - * @return 结果 - */ - boolean modelDeploy(String id); - - /** - * 导出模型zip压缩包 - * - * @param modelIds 模型id - * @param response 响应 - */ - void exportZip(List modelIds, HttpServletResponse response); - - /** - * 复制模型 - * - * @param modelBo 模型数据 - * @return 结果 - */ - boolean copyModel(ModelBo modelBo); -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IActProcessDefinitionService.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IActProcessDefinitionService.java deleted file mode 100644 index 5d00e4199..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IActProcessDefinitionService.java +++ /dev/null @@ -1,91 +0,0 @@ -package org.dromara.workflow.service; - -import org.dromara.common.mybatis.core.page.PageQuery; -import org.dromara.common.mybatis.core.page.TableDataInfo; -import org.dromara.workflow.domain.bo.ProcessDefinitionBo; -import org.dromara.workflow.domain.vo.ProcessDefinitionVo; -import org.springframework.web.multipart.MultipartFile; - -import java.util.List; - -/** - * 流程定义 服务层 - * - * @author may - */ -public interface IActProcessDefinitionService { - /** - * 分页查询 - * - * @param processDefinitionBo 参数 - * @param pageQuery 分页 - * @return 返回分页列表 - */ - TableDataInfo page(ProcessDefinitionBo processDefinitionBo, PageQuery pageQuery); - - /** - * 查询历史流程定义列表 - * - * @param key 流程定义key - * @return 结果 - */ - List getListByKey(String key); - - /** - * 查看流程定义图片 - * - * @param processDefinitionId 流程定义id - * @return 结果 - */ - String definitionImage(String processDefinitionId); - - /** - * 查看流程定义xml文件 - * - * @param processDefinitionId 流程定义id - * @return 结果 - */ - String definitionXml(String processDefinitionId); - - /** - * 删除流程定义 - * - * @param deploymentIds 部署id - * @param processDefinitionIds 流程定义id - * @return 结果 - */ - boolean deleteDeployment(List deploymentIds, List processDefinitionIds); - - /** - * 激活或者挂起流程定义 - * - * @param processDefinitionId 流程定义id - * @return 结果 - */ - boolean updateDefinitionState(String processDefinitionId); - - /** - * 迁移流程定义 - * - * @param currentProcessDefinitionId 当前流程定义id - * @param fromProcessDefinitionId 需要迁移到的流程定义id - * @return 结果 - */ - boolean migrationDefinition(String currentProcessDefinitionId, String fromProcessDefinitionId); - - /** - * 流程定义转换为模型 - * - * @param processDefinitionId 流程定义id - * @return 结果 - */ - boolean convertToModel(String processDefinitionId); - - /** - * 通过zip或xml部署流程定义 - * - * @param file 文件 - * @param categoryCode 分类 - */ - void deployByFile(MultipartFile file, String categoryCode); -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IActProcessInstanceService.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IActProcessInstanceService.java deleted file mode 100644 index ca3b6fb8e..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IActProcessInstanceService.java +++ /dev/null @@ -1,110 +0,0 @@ -package org.dromara.workflow.service; - -import org.dromara.common.mybatis.core.page.PageQuery; -import org.dromara.common.mybatis.core.page.TableDataInfo; -import org.dromara.workflow.domain.bo.ProcessInstanceBo; -import org.dromara.workflow.domain.bo.ProcessInvalidBo; -import org.dromara.workflow.domain.bo.TaskUrgingBo; -import org.dromara.workflow.domain.vo.ActHistoryInfoVo; -import org.dromara.workflow.domain.vo.ProcessInstanceVo; - -import java.util.List; -import java.util.Map; - -/** - * 流程实例 服务层 - * - * @author may - */ -public interface IActProcessInstanceService { - /** - * 通过流程实例id获取历史流程图 - * - * @param businessKey 流程实例id - * @return 结果 - */ - String getHistoryImage(String businessKey); - - /** - * 通过业务id获取历史流程图运行中,历史等节点 - * - * @param businessKey 业务id - * @return 结果 - */ - Map getHistoryList(String businessKey); - - /** - * 分页查询正在运行的流程实例 - * - * @param processInstanceBo 参数 - * @param pageQuery 分页 - * @return 结果 - */ - TableDataInfo getPageByRunning(ProcessInstanceBo processInstanceBo, PageQuery pageQuery); - - /** - * 分页查询已结束的流程实例 - * - * @param processInstanceBo 参数 - * @param pageQuery 分页 - * @return 结果 - */ - TableDataInfo getPageByFinish(ProcessInstanceBo processInstanceBo, PageQuery pageQuery); - - /** - * 获取审批记录 - * - * @param businessKey 业务id - * @return 结果 - */ - List getHistoryRecord(String businessKey); - - /** - * 作废流程实例,不会删除历史记录(删除运行中的实例) - * - * @param processInvalidBo 参数 - * @return 结果 - */ - boolean deleteRunInstance(ProcessInvalidBo processInvalidBo); - - /** - * 运行中的实例 删除程实例,删除历史记录,删除业务与流程关联信息 - * - * @param businessKeys 业务id - * @return 结果 - */ - boolean deleteRunAndHisInstance(List businessKeys); - - /** - * 已完成的实例 删除程实例,删除历史记录,删除业务与流程关联信息 - * - * @param businessKeys 业务id - * @return 结果 - */ - boolean deleteFinishAndHisInstance(List businessKeys); - - /** - * 撤销流程申请 - * - * @param businessKey 业务id - * @return 结果 - */ - boolean cancelProcessApply(String businessKey); - - /** - * 分页查询当前登录人单据 - * - * @param processInstanceBo 参数 - * @param pageQuery 分页 - * @return 结果 - */ - TableDataInfo getPageByCurrent(ProcessInstanceBo processInstanceBo, PageQuery pageQuery); - - /** - * 任务催办(给当前任务办理人发送站内信,邮件,短信等) - * - * @param taskUrgingBo 任务催办 - * @return 结果 - */ - boolean taskUrging(TaskUrgingBo taskUrgingBo); -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IFlwCategoryService.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IFlwCategoryService.java new file mode 100644 index 000000000..43bc175fd --- /dev/null +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IFlwCategoryService.java @@ -0,0 +1,102 @@ +package org.dromara.workflow.service; + +import cn.hutool.core.lang.tree.Tree; +import org.dromara.workflow.domain.bo.FlowCategoryBo; +import org.dromara.workflow.domain.vo.FlowCategoryVo; + +import java.util.List; + +/** + * 流程分类Service接口 + * + * @author may + */ +public interface IFlwCategoryService { + + /** + * 查询流程分类 + * + * @param categoryId 主键 + * @return 流程分类 + */ + FlowCategoryVo queryById(Long categoryId); + + /** + * 根据流程分类ID查询流程分类名称 + * + * @param categoryId 流程分类ID + * @return 流程分类名称 + */ + String selectCategoryNameById(String categoryId); + + /** + * 查询符合条件的流程分类列表 + * + * @param bo 查询条件 + * @return 流程分类列表 + */ + List queryList(FlowCategoryBo bo); + + /** + * 查询流程分类树结构信息 + * + * @param category 流程分类信息 + * @return 流程分类树信息集合 + */ + List> selectCategoryTreeList(FlowCategoryBo category); + + /** + * 校验流程分类是否有数据权限 + * + * @param categoryId 流程分类ID + */ + void checkCategoryDataScope(Long categoryId); + + /** + * 校验流程分类名称是否唯一 + * + * @param category 流程分类信息 + * @return 结果 + */ + boolean checkCategoryNameUnique(FlowCategoryBo category); + + /** + * 查询流程分类是否存在流程定义 + * + * @param categoryId 流程分类ID + * @return 结果 true 存在 false 不存在 + */ + boolean checkCategoryExistDefinition(Long categoryId); + + /** + * 是否存在流程分类子节点 + * + * @param categoryId 流程分类ID + * @return 结果 + */ + boolean hasChildByCategoryId(Long categoryId); + + /** + * 新增流程分类 + * + * @param bo 流程分类 + * @return 是否新增成功 + */ + int insertByBo(FlowCategoryBo bo); + + /** + * 修改流程分类 + * + * @param bo 流程分类 + * @return 是否修改成功 + */ + int updateByBo(FlowCategoryBo bo); + + /** + * 删除流程分类信息 + * + * @param categoryId 主键 + * @return 是否删除成功 + */ + int deleteWithValidById(Long categoryId); +} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IFlwDefinitionService.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IFlwDefinitionService.java new file mode 100644 index 000000000..6b5ca594a --- /dev/null +++ b/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 queryList(FlowDefinition flowDefinition, PageQuery pageQuery); + + /** + * 查询未发布的流程定义列表 + * + * @param flowDefinition 参数 + * @param pageQuery 分页 + * @return 返回分页列表 + */ + TableDataInfo 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 importXml(MultipartFile file, String category); + + /** + * 删除流程定义 + * + * @param ids 流程定义id + * @return 结果 + */ + boolean removeDef(List ids); + + /** + * 新增租户流程定义 + * + * @param tenantId 租户id + */ + void syncDef(String tenantId); +} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IFlwInstanceService.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IFlwInstanceService.java new file mode 100644 index 000000000..97d84a280 --- /dev/null +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IFlwInstanceService.java @@ -0,0 +1,159 @@ +package org.dromara.workflow.service; + +import org.dromara.common.mybatis.core.page.PageQuery; +import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.dromara.warm.flow.orm.entity.FlowInstance; +import org.dromara.workflow.domain.bo.FlowCancelBo; +import org.dromara.workflow.domain.bo.FlowInstanceBo; +import org.dromara.workflow.domain.bo.FlowInvalidBo; +import org.dromara.workflow.domain.vo.FlowInstanceVo; + +import java.util.List; +import java.util.Map; + +/** + * 流程实例 服务层 + * + * @author may + */ +public interface IFlwInstanceService { + + /** + * 分页查询正在运行的流程实例 + * + * @param flowInstanceBo 流程实例 + * @param pageQuery 分页 + * @return 结果 + */ + TableDataInfo selectRunningInstanceList(FlowInstanceBo flowInstanceBo, PageQuery pageQuery); + + /** + * 分页查询已结束的流程实例 + * + * @param flowInstanceBo 流程实例 + * @param pageQuery 分页 + * @return 结果 + */ + TableDataInfo selectFinishInstanceList(FlowInstanceBo flowInstanceBo, PageQuery pageQuery); + + /** + * 根据业务id查询流程实例详细信息 + * + * @param businessId 业务id + * @return 结果 + */ + FlowInstanceVo queryByBusinessId(Long businessId); + + /** + * 按照业务id查询流程实例 + * + * @param businessId 业务id + * @return 结果 + */ + FlowInstance selectInstByBusinessId(String businessId); + + /** + * 按照实例id查询流程实例 + * + * @param instanceId 实例id + * @return 结果 + */ + FlowInstance selectInstById(Long instanceId); + + /** + * 按照实例id查询流程实例 + * + * @param instanceIds 实例id + * @return 结果 + */ + List selectInstListByIdList(List instanceIds); + + /** + * 按照业务id删除流程实例 + * + * @param businessIds 业务id + * @return 结果 + */ + boolean deleteByBusinessIds(List businessIds); + + /** + * 按照实例id删除流程实例 + * + * @param instanceIds 实例id + * @return 结果 + */ + boolean deleteByInstanceIds(List instanceIds); + + /** + * 撤销流程 + * + * @param bo 参数 + * @return 结果 + */ + boolean cancelProcessApply(FlowCancelBo bo); + + /** + * 获取当前登陆人发起的流程实例 + * + * @param instanceBo 流程实例 + * @param pageQuery 分页 + * @return 结果 + */ + TableDataInfo selectCurrentInstanceList(FlowInstanceBo instanceBo, PageQuery pageQuery); + + /** + * 获取流程图,流程记录 + * + * @param businessId 业务id + * @return 结果 + */ + Map flowImage(String businessId); + + /** + * 按照实例id更新状态 + * + * @param instanceId 实例id + * @param status 状态 + */ + void updateStatus(Long instanceId, String status); + + /** + * 获取流程变量 + * + * @param instanceId 实例id + * @return 结果 + */ + Map instanceVariable(String instanceId); + + /** + * 设置流程变量 + * + * @param instanceId 实例id + * @param variable 流程变量 + */ + void setVariable(Long instanceId, Map variable); + + /** + * 按任务id查询实例 + * + * @param taskId 任务id + * @return 结果 + */ + FlowInstance selectByTaskId(Long taskId); + + /** + * 按任务id查询实例 + * + * @param taskIdList 任务id + * @return 结果 + */ + List selectByTaskIdList(List taskIdList); + + /** + * 作废流程 + * + * @param bo 流程实例 + * @return 结果 + */ + boolean processInvalid(FlowInvalidBo bo); +} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IFlwTaskAssigneeService.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IFlwTaskAssigneeService.java new file mode 100644 index 000000000..116cb74f3 --- /dev/null +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IFlwTaskAssigneeService.java @@ -0,0 +1,22 @@ +package org.dromara.workflow.service; + +import org.dromara.common.core.domain.dto.UserDTO; + +import java.util.List; + +/** + * 流程设计器-获取办理人 + * + * @author AprilWind + */ +public interface IFlwTaskAssigneeService { + + /** + * 根据存储标识符(storageId)解析分配类型和ID,并获取对应的用户列表 + * + * @param storageId 包含分配类型和ID的字符串(例如 "user:123" 或 "role:456") + * @return 与分配类型和ID匹配的用户列表,如果格式无效则返回空列表 + */ + List fetchUsersByStorageId(String storageId); + +} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IActTaskService.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IFlwTaskService.java similarity index 34% rename from ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IActTaskService.java rename to ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IFlwTaskService.java index 8e9f76367..80bfa948c 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IActTaskService.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IFlwTaskService.java @@ -1,10 +1,14 @@ package org.dromara.workflow.service; +import org.dromara.common.core.domain.dto.UserDTO; import org.dromara.common.mybatis.core.page.PageQuery; import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.dromara.warm.flow.core.entity.Node; +import org.dromara.warm.flow.orm.entity.FlowHisTask; +import org.dromara.warm.flow.orm.entity.FlowTask; import org.dromara.workflow.domain.bo.*; -import org.dromara.workflow.domain.vo.TaskVo; -import org.dromara.workflow.domain.vo.VariableVo; +import org.dromara.workflow.domain.vo.FlowHisTaskVo; +import org.dromara.workflow.domain.vo.FlowTaskVo; import java.util.List; import java.util.Map; @@ -14,7 +18,8 @@ import java.util.Map; * * @author may */ -public interface IActTaskService { +public interface IFlwTaskService { + /** * 启动任务 * @@ -23,7 +28,6 @@ public interface IActTaskService { */ Map startWorkFlow(StartProcessBo startProcessBo); - /** * 办理任务 * @@ -35,127 +39,152 @@ public interface IActTaskService { /** * 查询当前用户的待办任务 * - * @param taskBo 参数 - * @param pageQuery 分页 + * @param flowTaskBo 参数 + * @param pageQuery 分页 * @return 结果 */ - TableDataInfo getPageByTaskWait(TaskBo taskBo, PageQuery pageQuery); + TableDataInfo pageByTaskWait(FlowTaskBo flowTaskBo, PageQuery pageQuery); /** * 查询当前租户所有待办任务 * - * @param taskBo 参数 - * @param pageQuery 分页 + * @param flowTaskBo 参数 + * @param pageQuery 分页 * @return 结果 */ - TableDataInfo getPageByAllTaskWait(TaskBo taskBo, PageQuery pageQuery); + TableDataInfo pageByTaskFinish(FlowTaskBo flowTaskBo, PageQuery pageQuery); + /** + * 查询待办任务 + * + * @param flowTaskBo 参数 + * @param pageQuery 分页 + * @return 结果 + */ + TableDataInfo pageByAllTaskWait(FlowTaskBo flowTaskBo, PageQuery pageQuery); /** - * 查询当前用户的已办任务 + * 查询已办任务 * - * @param taskBo 参数 - * @param pageQuery 参数 + * @param flowTaskBo 参数 + * @param pageQuery 分页 * @return 结果 */ - TableDataInfo getPageByTaskFinish(TaskBo taskBo, PageQuery pageQuery); + TableDataInfo pageByAllTaskFinish(FlowTaskBo flowTaskBo, PageQuery pageQuery); /** * 查询当前用户的抄送 * - * @param taskBo 参数 - * @param pageQuery 参数 + * @param flowTaskBo 参数 + * @param pageQuery 分页 * @return 结果 */ - TableDataInfo getPageByTaskCopy(TaskBo taskBo, PageQuery pageQuery); + TableDataInfo pageByTaskCopy(FlowTaskBo flowTaskBo, PageQuery pageQuery); /** - * 查询当前租户所有已办任务 + * 修改任务办理人 + * + * @param taskIdList 任务id + * @param userId 用户id + * @return 结果 + */ + boolean updateAssignee(List taskIdList, String userId); + + /** + * 驳回审批 * - * @param taskBo 参数 - * @param pageQuery 参数 + * @param bo 参数 * @return 结果 */ - TableDataInfo getPageByAllTaskFinish(TaskBo taskBo, PageQuery pageQuery); + boolean backProcess(BackProcessBo bo); /** - * 委派任务 + * 获取可驳回的前置节点 * - * @param delegateBo 参数 + * @param definitionId 流程定义id + * @param nowNodeCode 当前节点 * @return 结果 */ - boolean delegateTask(DelegateBo delegateBo); + List getBackTaskNode(Long definitionId, String nowNodeCode); /** * 终止任务 * - * @param terminationBo 参数 + * @param bo 参数 * @return 结果 */ - boolean terminationTask(TerminationBo terminationBo); + boolean terminationTask(FlowTerminationBo bo); /** - * 转办任务 + * 按照任务id查询任务 * - * @param transmitBo 参数 + * @param taskIdList 任务id * @return 结果 */ - boolean transferTask(TransmitBo transmitBo); + List selectByIdList(List taskIdList); /** - * 会签任务加签 + * 按照任务id查询任务 * - * @param addMultiBo 参数 + * @param taskId 任务id * @return 结果 */ - boolean addMultiInstanceExecution(AddMultiBo addMultiBo); + FlowTaskVo selectById(Long taskId); /** - * 会签任务减签 + * 按照任务id查询任务 * - * @param deleteMultiBo 参数 + * @param taskIdList 任务id * @return 结果 */ - boolean deleteMultiInstanceExecution(DeleteMultiBo deleteMultiBo); + List selectHisTaskByIdList(List taskIdList); /** - * 驳回审批 + * 按照任务id查询任务 * - * @param backProcessBo 参数 - * @return 流程实例id + * @param taskId 任务id + * @return 结果 */ - String backProcess(BackProcessBo backProcessBo); + FlowHisTask selectHisTaskById(Long taskId); /** - * 修改任务办理人 + * 按照实例id查询任务 * - * @param taskIds 任务id - * @param userId 办理人id + * @param instanceIdList 流程实例id * @return 结果 */ - boolean updateAssignee(String[] taskIds, String userId); + List selectByInstIdList(List instanceIdList); /** - * 查询流程变量 + * 按照实例id查询任务 * - * @param taskId 任务id + * @param instanceId 流程实例id * @return 结果 */ - List getInstanceVariable(String taskId); + List selectByInstId(Long instanceId); /** - * 查询工作流任务用户选择加签人员 + * 任务操作 * - * @param taskId 任务id + * @param bo 参数 + * @param taskOperation 操作类型,委派 delegateTask、转办 transferTask、加签 addSignature、减签 reductionSignature + * @return 结果 + */ + boolean taskOperation(TaskOperationBo bo, String taskOperation); + + /** + * 获取任务所有办理人 + * + * @param taskIdList 任务id * @return 结果 */ - String getTaskUserIdsByAddMultiInstance(String taskId); + Map> currentTaskAllUser(List taskIdList); /** - * 查询工作流选择减签人员 + * 获取当前任务的所有办理人 * * @param taskId 任务id * @return 结果 */ - List getListByDeleteMultiInstance(String taskId); + List currentTaskAllUser(Long taskId); } diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/ITestLeaveService.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/ITestLeaveService.java index 943c919ae..67b50baf3 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/ITestLeaveService.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/ITestLeaveService.java @@ -5,7 +5,6 @@ import org.dromara.common.mybatis.core.page.TableDataInfo; import org.dromara.workflow.domain.bo.TestLeaveBo; import org.dromara.workflow.domain.vo.TestLeaveVo; -import java.util.Collection; import java.util.List; /** @@ -44,5 +43,5 @@ public interface ITestLeaveService { /** * 校验并批量删除请假信息 */ - Boolean deleteWithValidByIds(Collection ids); + Boolean deleteWithValidByIds(List ids); } diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IWfCategoryService.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IWfCategoryService.java deleted file mode 100644 index acf0aa2bc..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IWfCategoryService.java +++ /dev/null @@ -1,51 +0,0 @@ -package org.dromara.workflow.service; - -import org.dromara.workflow.domain.WfCategory; -import org.dromara.workflow.domain.bo.WfCategoryBo; -import org.dromara.workflow.domain.vo.WfCategoryVo; - -import java.util.Collection; -import java.util.List; - -/** - * 流程分类Service接口 - * - * @author may - * @date 2023-06-28 - */ -public interface IWfCategoryService { - - /** - * 查询流程分类 - */ - WfCategoryVo queryById(Long id); - - - /** - * 查询流程分类列表 - */ - List queryList(WfCategoryBo bo); - - /** - * 新增流程分类 - */ - Boolean insertByBo(WfCategoryBo bo); - - /** - * 修改流程分类 - */ - Boolean updateByBo(WfCategoryBo bo); - - /** - * 校验并批量删除流程分类信息 - */ - Boolean deleteWithValidByIds(Collection ids, Boolean isValid); - - /** - * 按照类别编码查询 - * - * @param categoryCode 分类比吗 - * @return 结果 - */ - WfCategory queryByCategoryCode(String categoryCode); -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IWfDefinitionConfigService.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IWfDefinitionConfigService.java deleted file mode 100644 index fe5cf7ad3..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IWfDefinitionConfigService.java +++ /dev/null @@ -1,83 +0,0 @@ -package org.dromara.workflow.service; - -import org.dromara.workflow.domain.vo.WfDefinitionConfigVo; -import org.dromara.workflow.domain.bo.WfDefinitionConfigBo; - -import java.util.Collection; -import java.util.List; - -/** - * 流程定义配置Service接口 - * - * @author may - * @date 2024-03-18 - */ -public interface IWfDefinitionConfigService { - - /** - * 查询流程定义配置 - * - * @param definitionId 流程定义id - * @return 结果 - */ - WfDefinitionConfigVo getByDefId(String definitionId); - - /** - * 查询流程定义配置 - * - * @param tableName 表名 - * @return 结果 - */ - WfDefinitionConfigVo getByTableNameLastVersion(String tableName); - - /** - * 查询流程定义配置 - * - * @param definitionId 流程定义id - * @param tableName 表名 - * @return 结果 - */ - WfDefinitionConfigVo getByDefIdAndTableName(String definitionId, String tableName); - - /** - * 查询流程定义配置排除当前查询的流程定义 - * - * @param definitionId 流程定义id - * @param tableName 表名 - * @return 结果 - */ - List getByTableNameNotDefId(String tableName, String definitionId); - - /** - * 查询流程定义配置列表 - * - * @param definitionIds 流程定义id - * @return 结果 - */ - List queryList(List definitionIds); - - - /** - * 新增流程定义配置 - * - * @param bo 参数 - * @return 结果 - */ - Boolean saveOrUpdate(WfDefinitionConfigBo bo); - - /** - * 删除 - * - * @param ids id - * @return 结果 - */ - Boolean deleteByIds(Collection ids); - - /** - * 按照流程定义id删除 - * - * @param ids 流程定义id - * @return 结果 - */ - Boolean deleteByDefIds(Collection ids); -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IWfFormManageService.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IWfFormManageService.java deleted file mode 100644 index 2ca2264b0..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IWfFormManageService.java +++ /dev/null @@ -1,81 +0,0 @@ -package org.dromara.workflow.service; - -import org.dromara.workflow.domain.vo.WfFormManageVo; -import org.dromara.workflow.domain.bo.WfFormManageBo; -import org.dromara.common.mybatis.core.page.TableDataInfo; -import org.dromara.common.mybatis.core.page.PageQuery; - -import java.util.Collection; -import java.util.List; - -/** - * 表单管理Service接口 - * - * @author may - * @date 2024-03-29 - */ -public interface IWfFormManageService { - - /** - * 查询表单管理 - * - * @param id 主键 - * @return 结果 - */ - WfFormManageVo queryById(Long id); - - /** - * 查询表单管理 - * - * @param ids 主键 - * @return 结果 - */ - List queryByIds(List ids); - - /** - * 查询表单管理列表 - * - * @param bo 参数 - * @param pageQuery 分页 - * @return 结果 - */ - TableDataInfo queryPageList(WfFormManageBo bo, PageQuery pageQuery); - - /** - * 查询表单管理列表 - * - * @return 结果 - */ - List selectList(); - /** - * 查询表单管理列表 - * - * @param bo 参数 - * @return 结果 - */ - List queryList(WfFormManageBo bo); - - /** - * 新增表单管理 - * - * @param bo 参数 - * @return 结果 - */ - Boolean insertByBo(WfFormManageBo bo); - - /** - * 修改表单管理 - * - * @param bo 参数 - * @return 结果 - */ - Boolean updateByBo(WfFormManageBo bo); - - /** - * 批量删除表单管理信息 - * - * @param ids 主键 - * @return 结果 - */ - Boolean deleteByIds(Collection ids); -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IWfNodeConfigService.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IWfNodeConfigService.java deleted file mode 100644 index 5e64d64a5..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IWfNodeConfigService.java +++ /dev/null @@ -1,56 +0,0 @@ -package org.dromara.workflow.service; - -import org.dromara.workflow.domain.WfNodeConfig; -import org.dromara.workflow.domain.vo.WfNodeConfigVo; - -import java.util.Collection; -import java.util.List; - -/** - * 节点配置Service接口 - * - * @author may - * @date 2024-03-30 - */ -public interface IWfNodeConfigService { - - /** - * 查询节点配置 - * - * @param id 主键 - * @return 结果 - */ - WfNodeConfigVo queryById(Long id); - - /** - * 保存节点配置 - * - * @param list 参数 - * @return 结果 - */ - Boolean saveOrUpdate(List list); - - /** - * 批量删除节点配置信息 - * - * @param ids 主键 - * @return 结果 - */ - Boolean deleteByIds(Collection ids); - - /** - * 按照流程定义id删除 - * - * @param ids 流程定义id - * @return 结果 - */ - Boolean deleteByDefIds(Collection ids); - - /** - * 按照流程定义id查询 - * - * @param ids 流程定义id - * @return 结果 - */ - List selectByDefIds(Collection ids); -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IWfTaskBackNodeService.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IWfTaskBackNodeService.java deleted file mode 100644 index 97f940671..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IWfTaskBackNodeService.java +++ /dev/null @@ -1,65 +0,0 @@ -package org.dromara.workflow.service; - - -import org.dromara.workflow.domain.WfTaskBackNode; -import org.flowable.task.api.Task; - -import java.util.List; - -/** - * 节点驳回记录Service接口 - * - * @author may - * @date 2024-03-13 - */ -public interface IWfTaskBackNodeService { - - /** - * 记录审批节点 - * - * @param task 任务 - */ - void recordExecuteNode(Task task); - - /** - * 按流程实例id查询 - * - * @param processInstanceId 流程实例id - * @return 结果 - */ - List getListByInstanceId(String processInstanceId); - - /** - * 按照流程实例id,节点id查询 - * - * @param processInstanceId 流程实例id - * @param nodeId 节点id - * @return 结果 - */ - WfTaskBackNode getListByInstanceIdAndNodeId(String processInstanceId, String nodeId); - - /** - * 删除驳回后的节点 - * - * @param processInstanceId 流程实例id - * @param targetActivityId 节点id - * @return 结果 - */ - boolean deleteBackTaskNode(String processInstanceId, String targetActivityId); - - /** - * 按流程实例id删除 - * - * @param processInstanceId 流程实例id - * @return 结果 - */ - boolean deleteByInstanceId(String processInstanceId); - - /** - * 按流程实例id删除 - * - * @param processInstanceIds 流程实例id - * @return 结果 - */ - boolean deleteByInstanceIds(List processInstanceIds); -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActHiProcinstServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActHiProcinstServiceImpl.java deleted file mode 100644 index 06d607b4f..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActHiProcinstServiceImpl.java +++ /dev/null @@ -1,51 +0,0 @@ -package org.dromara.workflow.service.impl; - - -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import lombok.RequiredArgsConstructor; -import org.dromara.common.tenant.helper.TenantHelper; -import org.dromara.workflow.domain.ActHiProcinst; -import org.dromara.workflow.mapper.ActHiProcinstMapper; -import org.dromara.workflow.service.IActHiProcinstService; -import org.springframework.stereotype.Service; - -import java.util.List; - - -/** - * 流程实例Service业务层处理 - * - * @author may - * @date 2023-07-22 - */ -@RequiredArgsConstructor -@Service -public class ActHiProcinstServiceImpl implements IActHiProcinstService { - - private final ActHiProcinstMapper baseMapper; - - /** - * 按照业务id查询 - * - * @param businessKeys 业务id - */ - @Override - public List selectByBusinessKeyIn(List businessKeys) { - return baseMapper.selectList(new LambdaQueryWrapper() - .in(ActHiProcinst::getBusinessKey, businessKeys) - .eq(TenantHelper.isEnable(), ActHiProcinst::getTenantId, TenantHelper.getTenantId())); - } - - /** - * 按照业务id查询 - * - * @param businessKey 业务id - */ - @Override - public ActHiProcinst selectByBusinessKey(String businessKey) { - return baseMapper.selectOne(new LambdaQueryWrapper() - .eq(ActHiProcinst::getBusinessKey, businessKey) - .eq(TenantHelper.isEnable(), ActHiProcinst::getTenantId, TenantHelper.getTenantId())); - - } -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActHiTaskinstServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActHiTaskinstServiceImpl.java deleted file mode 100644 index 5548f22f5..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActHiTaskinstServiceImpl.java +++ /dev/null @@ -1,18 +0,0 @@ -package org.dromara.workflow.service.impl; - -import lombok.RequiredArgsConstructor; -import org.springframework.stereotype.Service; -import org.dromara.workflow.service.IActHiTaskinstService; - - -/** - * 流程历史任务Service业务层处理 - * - * @author may - * @date 2024-03-02 - */ -@RequiredArgsConstructor -@Service -public class ActHiTaskinstServiceImpl implements IActHiTaskinstService { - -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActModelServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActModelServiceImpl.java deleted file mode 100644 index 217538e44..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActModelServiceImpl.java +++ /dev/null @@ -1,431 +0,0 @@ -package org.dromara.workflow.service.impl; - -import cn.hutool.core.collection.CollUtil; -import cn.hutool.core.lang.Validator; -import cn.hutool.core.util.ArrayUtil; -import cn.hutool.core.util.ObjectUtil; -import cn.hutool.core.util.StrUtil; -import cn.hutool.core.util.ZipUtil; -import cn.hutool.json.JSONUtil; -import com.alibaba.excel.util.StringUtils; -import jakarta.servlet.http.HttpServletResponse; -import lombok.RequiredArgsConstructor; -import lombok.extern.slf4j.Slf4j; -import org.apache.batik.transcoder.TranscoderInput; -import org.apache.batik.transcoder.TranscoderOutput; -import org.apache.batik.transcoder.image.PNGTranscoder; -import org.dromara.common.core.exception.ServiceException; -import org.dromara.common.mybatis.core.page.PageQuery; -import org.dromara.common.mybatis.core.page.TableDataInfo; -import org.dromara.common.tenant.helper.TenantHelper; -import org.dromara.workflow.common.constant.FlowConstant; -import org.dromara.workflow.domain.WfNodeConfig; -import org.dromara.workflow.domain.bo.ModelBo; -import org.dromara.workflow.domain.bo.WfDefinitionConfigBo; -import org.dromara.workflow.domain.vo.ModelVo; -import org.dromara.workflow.domain.vo.WfDefinitionConfigVo; -import org.dromara.workflow.service.IActModelService; -import org.dromara.workflow.service.IWfDefinitionConfigService; -import org.dromara.workflow.service.IWfNodeConfigService; -import org.dromara.workflow.utils.ModelUtils; -import org.dromara.workflow.utils.QueryUtils; -import org.flowable.bpmn.converter.BpmnXMLConverter; -import org.flowable.bpmn.model.BpmnModel; -import org.flowable.bpmn.model.Process; -import org.flowable.bpmn.model.UserTask; -import org.flowable.engine.RepositoryService; -import org.flowable.engine.repository.Deployment; -import org.flowable.engine.repository.Model; -import org.flowable.engine.repository.ModelQuery; -import org.flowable.engine.repository.ProcessDefinition; -import org.flowable.validation.ValidationError; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; - -import java.io.ByteArrayInputStream; -import java.io.ByteArrayOutputStream; -import java.io.IOException; -import java.io.InputStream; -import java.net.URLEncoder; -import java.nio.charset.StandardCharsets; -import java.util.ArrayList; -import java.util.Collections; -import java.util.List; -import java.util.stream.Collectors; -import java.util.zip.ZipEntry; -import java.util.zip.ZipOutputStream; - -/** - * 模型管理 服务层实现 - * - * @author may - */ -@Slf4j -@RequiredArgsConstructor -@Service -public class ActModelServiceImpl implements IActModelService { - - @Autowired(required = false) - private RepositoryService repositoryService; - private final IWfNodeConfigService wfNodeConfigService; - private final IWfDefinitionConfigService wfDefinitionConfigService; - - /** - * 分页查询模型 - * - * @param modelBo 模型参数 - * @return 返回分页列表 - */ - @Override - public TableDataInfo page(ModelBo modelBo, PageQuery pageQuery) { - ModelQuery query = QueryUtils.modelQuery(); - if (StringUtils.isNotBlank(modelBo.getName())) { - query.modelNameLike("%" + modelBo.getName() + "%"); - } - if (StringUtils.isNotBlank(modelBo.getKey())) { - query.modelKey(modelBo.getKey()); - } - if (StringUtils.isNotBlank(modelBo.getCategoryCode())) { - query.modelCategory(modelBo.getCategoryCode()); - } - query.orderByLastUpdateTime().desc(); - // 创建时间降序排列 - query.orderByCreateTime().desc(); - // 分页查询 - List modelList = query.listPage(pageQuery.getFirstNum(), pageQuery.getPageSize()); - // 总记录数 - long total = query.count(); - TableDataInfo build = TableDataInfo.build(); - build.setRows(modelList); - build.setTotal(total); - return build; - } - - /** - * 新增模型 - * - * @param modelBo 模型请求对象 - * @return 结果 - */ - @Override - @Transactional(rollbackFor = Exception.class) - public boolean saveNewModel(ModelBo modelBo) { - try { - int version = 0; - String key = modelBo.getKey(); - String name = modelBo.getName(); - String description = modelBo.getDescription(); - String categoryCode = modelBo.getCategoryCode(); - String xml = modelBo.getXml(); - Model checkModel = QueryUtils.modelQuery().modelKey(key).singleResult(); - if (ObjectUtil.isNotNull(checkModel)) { - throw new ServiceException("模型key已存在!"); - } - //初始空的模型 - Model model = repositoryService.newModel(); - model.setKey(key); - model.setName(name); - model.setVersion(version); - model.setCategory(categoryCode); - model.setMetaInfo(description); - model.setTenantId(TenantHelper.getTenantId()); - //保存初始化的模型基本信息数据 - repositoryService.saveModel(model); - repositoryService.addModelEditorSource(model.getId(), StrUtil.utf8Bytes(xml)); - return true; - } catch (Exception e) { - log.error(e.getMessage(), e); - throw new ServiceException(e.getMessage()); - } - } - - /** - * 查询模型 - * - * @param id 模型id - * @return 模型数据 - */ - @Override - public ModelVo getInfo(String id) { - ModelVo modelVo = new ModelVo(); - Model model = repositoryService.getModel(id); - if (model != null) { - try { - byte[] modelEditorSource = repositoryService.getModelEditorSource(model.getId()); - modelVo.setXml(StrUtil.utf8Str(modelEditorSource)); - modelVo.setId(model.getId()); - modelVo.setKey(model.getKey()); - modelVo.setName(model.getName()); - modelVo.setCategoryCode(model.getCategory()); - modelVo.setDescription(model.getMetaInfo()); - return modelVo; - } catch (Exception e) { - log.error(e.getMessage(), e); - throw new ServiceException(e.getMessage()); - } - } - return modelVo; - } - - /** - * 修改模型信息 - * - * @param modelBo 模型数据 - * @return 结果 - */ - @Override - public boolean update(ModelBo modelBo) { - try { - Model model = repositoryService.getModel(modelBo.getId()); - List list = QueryUtils.modelQuery().modelKey(modelBo.getKey()).list(); - list.stream().filter(e -> !e.getId().equals(model.getId())).findFirst().ifPresent(e -> { - throw new ServiceException("模型KEY已存在!"); - }); - model.setCategory(modelBo.getCategoryCode()); - model.setMetaInfo(modelBo.getDescription()); - repositoryService.saveModel(model); - } catch (Exception e) { - log.error(e.getMessage(), e); - throw new ServiceException(e.getMessage()); - } - return true; - } - - /** - * 编辑模型XML - * - * @param modelBo 模型数据 - * @return 结果 - */ - @Override - @Transactional(rollbackFor = Exception.class) - public boolean editModelXml(ModelBo modelBo) { - try { - String xml = modelBo.getXml(); - String svg = modelBo.getSvg(); - String modelId = modelBo.getId(); - String key = modelBo.getKey(); - String name = modelBo.getName(); - BpmnModel bpmnModel = ModelUtils.xmlToBpmnModel(xml); - ModelUtils.checkBpmnModel(bpmnModel); - Model model = repositoryService.getModel(modelId); - List list = QueryUtils.modelQuery().modelKey(key).list(); - list.stream().filter(e -> !e.getId().equals(model.getId())).findFirst().ifPresent(e -> { - throw new ServiceException("模型KEY已存在!"); - }); - // 校验key命名规范 - if (!Validator.isMatchRegex(FlowConstant.MODEL_KEY_PATTERN, key)) { - throw new ServiceException("模型标识KEY只能字符或者下划线开头!"); - } - model.setKey(key); - model.setName(name); - model.setVersion(model.getVersion() + 1); - repositoryService.saveModel(model); - repositoryService.addModelEditorSource(model.getId(), StrUtil.utf8Bytes(xml)); - // 转换图片 - InputStream svgStream = new ByteArrayInputStream(StrUtil.utf8Bytes(svg)); - TranscoderInput input = new TranscoderInput(svgStream); - - PNGTranscoder transcoder = new PNGTranscoder(); - ByteArrayOutputStream outStream = new ByteArrayOutputStream(); - TranscoderOutput output = new TranscoderOutput(outStream); - - transcoder.transcode(input, output); - final byte[] result = outStream.toByteArray(); - repositoryService.addModelEditorSourceExtra(model.getId(), result); - return true; - } catch (Exception e) { - log.error(e.getMessage(), e); - throw new ServiceException(e.getMessage()); - } - } - - /** - * 模型部署 - * - * @param id 模型id - * @return 结果 - */ - @Override - @Transactional(rollbackFor = Exception.class) - public boolean modelDeploy(String id) { - try { - // 查询流程定义模型xml - byte[] xmlBytes = repositoryService.getModelEditorSource(id); - if (ArrayUtil.isEmpty(xmlBytes)) { - throw new ServiceException("模型数据为空,请先设计流程定义模型,再进行部署!"); - } - if (JSONUtil.isTypeJSON(new String(xmlBytes, StandardCharsets.UTF_8))) { - byte[] bytes = ModelUtils.bpmnJsonToXmlBytes(xmlBytes); - if (ArrayUtil.isEmpty(bytes)) { - throw new ServiceException("模型不能为空,请至少设计一条主线流程!"); - } - } - BpmnModel bpmnModel = ModelUtils.xmlToBpmnModel(xmlBytes); - // 校验模型 - ModelUtils.checkBpmnModel(bpmnModel); - List validationErrors = repositoryService.validateProcess(bpmnModel); - if (CollUtil.isNotEmpty(validationErrors)) { - String errorMsg = validationErrors.stream().map(ValidationError::getProblem).distinct().collect(Collectors.joining(",")); - throw new ServiceException(errorMsg); - } - // 查询模型的基本信息 - Model model = repositoryService.getModel(id); - ProcessDefinition processDefinition = QueryUtils.definitionQuery().processDefinitionKey(model.getKey()).latestVersion().singleResult(); - // xml资源的名称 ,对应act_ge_bytearray表中的name_字段 - String processName = model.getName() + ".bpmn20.xml"; - // 调用部署相关的api方法进行部署流程定义 - Deployment deployment = repositoryService.createDeployment() - // 部署名称 - .name(model.getName()) - // 部署标识key - .key(model.getKey()) - // 部署流程分类 - .category(model.getCategory()) - // bpmn20.xml资源 - .addBytes(processName, xmlBytes) - // 租户id - .tenantId(TenantHelper.getTenantId()) - .deploy(); - - // 更新 部署id 到流程定义模型数据表中 - model.setDeploymentId(deployment.getId()); - repositoryService.saveModel(model); - // 更新分类 - ProcessDefinition definition = QueryUtils.definitionQuery().deploymentId(deployment.getId()).singleResult(); - repositoryService.setProcessDefinitionCategory(definition.getId(), model.getCategory()); - //更新流程定义配置 - if (processDefinition != null) { - WfDefinitionConfigVo definitionVo = wfDefinitionConfigService.getByDefId(processDefinition.getId()); - if (definitionVo != null) { - wfDefinitionConfigService.deleteByDefIds(Collections.singletonList(processDefinition.getId())); - WfDefinitionConfigBo wfFormDefinition = new WfDefinitionConfigBo(); - wfFormDefinition.setDefinitionId(definition.getId()); - wfFormDefinition.setProcessKey(definition.getKey()); - wfFormDefinition.setTableName(definitionVo.getTableName()); - wfFormDefinition.setVersion(definition.getVersion()); - wfFormDefinition.setRemark(definitionVo.getRemark()); - wfDefinitionConfigService.saveOrUpdate(wfFormDefinition); - } - } - //更新流程节点配置表单 - List userTasks = ModelUtils.getUserTaskFlowElements(definition.getId()); - UserTask applyUserTask = ModelUtils.getApplyUserTask(definition.getId()); - List wfNodeConfigList = new ArrayList<>(); - for (UserTask userTask : userTasks) { - if (StringUtils.isNotBlank(userTask.getFormKey()) && userTask.getFormKey().contains(StrUtil.COLON)) { - WfNodeConfig wfNodeConfig = new WfNodeConfig(); - wfNodeConfig.setNodeId(userTask.getId()); - wfNodeConfig.setNodeName(userTask.getName()); - wfNodeConfig.setDefinitionId(definition.getId()); - String[] split = userTask.getFormKey().split(StrUtil.COLON); - wfNodeConfig.setFormType(split[0]); - wfNodeConfig.setFormId(Long.valueOf(split[1])); - wfNodeConfig.setApplyUserTask(applyUserTask.getId().equals(userTask.getId()) ? FlowConstant.TRUE : FlowConstant.FALSE); - wfNodeConfigList.add(wfNodeConfig); - } - } - if (CollUtil.isNotEmpty(wfNodeConfigList)) { - wfNodeConfigService.saveOrUpdate(wfNodeConfigList); - } - return true; - } catch (Exception e) { - log.error(e.getMessage(), e); - throw new ServiceException(e.getMessage()); - } - } - - /** - * 导出模型zip压缩包 - * - * @param modelIds 模型id - * @param response 相应 - */ - @Override - public void exportZip(List modelIds, HttpServletResponse response) { - try (ZipOutputStream zos = ZipUtil.getZipOutputStream(response.getOutputStream(), StandardCharsets.UTF_8)) { - // 压缩包文件名 - String zipName = "模型不存在"; - // 查询模型基本信息 - for (String modelId : modelIds) { - Model model = repositoryService.getModel(modelId); - byte[] xmlBytes = repositoryService.getModelEditorSource(modelId); - if (ObjectUtil.isNotNull(model)) { - if (JSONUtil.isTypeJSON(new String(xmlBytes, StandardCharsets.UTF_8)) && ArrayUtil.isEmpty(ModelUtils.bpmnJsonToXmlBytes(xmlBytes))) { - zipName = "模型不能为空,请至少设计一条主线流程!"; - zos.putNextEntry(new ZipEntry(zipName + ".txt")); - zos.write(zipName.getBytes(StandardCharsets.UTF_8)); - } else if (ArrayUtil.isEmpty(xmlBytes)) { - zipName = "模型数据为空,请先设计流程定义模型,再进行部署!"; - zos.putNextEntry(new ZipEntry(zipName + ".txt")); - zos.write(zipName.getBytes(StandardCharsets.UTF_8)); - } else { - String fileName = model.getName() + "-" + model.getKey(); - // 压缩包文件名 - zipName = fileName + ".zip"; - // 将xml添加到压缩包中(指定xml文件名:请假流程.bpmn20.xml - zos.putNextEntry(new ZipEntry(fileName + ".bpmn20.xml")); - zos.write(xmlBytes); - } - } - } - response.setHeader("Content-Disposition", - "attachment; filename=" + URLEncoder.encode(zipName, StandardCharsets.UTF_8) + ".zip"); - response.addHeader("Access-Control-Expose-Headers", "Content-Disposition"); - // 刷出响应流 - response.flushBuffer(); - } catch (IOException e) { - log.error(e.getMessage(), e); - } - } - - /** - * 复制模型 - * - * @param modelBo 模型数据 - * @return 结果 - */ - @Override - @Transactional(rollbackFor = Exception.class) - public boolean copyModel(ModelBo modelBo) { - try { - String key = modelBo.getKey(); - if (StringUtils.isNotBlank(key)) { - // 查询模型 - Model model = repositoryService.createModelQuery().modelId(modelBo.getId()).singleResult(); - if (ObjectUtil.isNotNull(model)) { - byte[] modelEditorSource = repositoryService.getModelEditorSource(model.getId()); - List list = QueryUtils.modelQuery().modelKey(key).list(); - if (CollUtil.isNotEmpty(list)) { - throw new ServiceException("模型KEY已存在!"); - } - // 校验key命名规范 - if (!Validator.isMatchRegex(FlowConstant.MODEL_KEY_PATTERN, key)) { - throw new ServiceException("模型标识KEY只能字符或者下划线开头!"); - } - // 复制模型数据 - Model newModel = repositoryService.newModel(); - newModel.setKey(modelBo.getKey()); - newModel.setName(modelBo.getName()); - newModel.setCategory(modelBo.getCategoryCode()); - newModel.setVersion(1); - newModel.setMetaInfo(modelBo.getDescription()); - newModel.setTenantId(TenantHelper.getTenantId()); - String xml = StrUtil.utf8Str(modelEditorSource); - BpmnModel bpmnModel = ModelUtils.xmlToBpmnModel(xml); - Process mainProcess = bpmnModel.getMainProcess(); - mainProcess.setId(modelBo.getKey()); - mainProcess.setName(modelBo.getName()); - byte[] xmlBytes = new BpmnXMLConverter().convertToXML(bpmnModel); - repositoryService.saveModel(newModel); - repositoryService.addModelEditorSource(newModel.getId(), xmlBytes); - } - } - } catch (Exception e) { - log.error(e.getMessage(), e); - throw new ServiceException(e.getMessage()); - } - return true; - } -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActProcessDefinitionServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActProcessDefinitionServiceImpl.java deleted file mode 100644 index 77fb257b5..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActProcessDefinitionServiceImpl.java +++ /dev/null @@ -1,444 +0,0 @@ -package org.dromara.workflow.service.impl; - -import cn.hutool.core.bean.BeanUtil; -import cn.hutool.core.codec.Base64; -import cn.hutool.core.collection.CollUtil; -import cn.hutool.core.io.FileUtil; -import cn.hutool.core.io.IoUtil; -import cn.hutool.core.util.ObjectUtil; -import cn.hutool.core.util.StrUtil; -import lombok.RequiredArgsConstructor; -import lombok.SneakyThrows; -import lombok.extern.slf4j.Slf4j; -import org.dromara.common.core.exception.ServiceException; -import org.dromara.common.core.utils.StreamUtils; -import org.dromara.common.core.utils.StringUtils; -import org.dromara.common.mybatis.core.page.PageQuery; -import org.dromara.common.mybatis.core.page.TableDataInfo; -import org.dromara.common.tenant.helper.TenantHelper; -import org.dromara.workflow.common.constant.FlowConstant; -import org.dromara.workflow.domain.WfCategory; -import org.dromara.workflow.domain.WfDefinitionConfig; -import org.dromara.workflow.domain.WfNodeConfig; -import org.dromara.workflow.domain.bo.ProcessDefinitionBo; -import org.dromara.workflow.domain.bo.WfDefinitionConfigBo; -import org.dromara.workflow.domain.vo.ProcessDefinitionVo; -import org.dromara.workflow.domain.vo.WfDefinitionConfigVo; -import org.dromara.workflow.mapper.WfDefinitionConfigMapper; -import org.dromara.workflow.service.IActProcessDefinitionService; -import org.dromara.workflow.service.IWfCategoryService; -import org.dromara.workflow.service.IWfDefinitionConfigService; -import org.dromara.workflow.service.IWfNodeConfigService; -import org.dromara.workflow.utils.ModelUtils; -import org.dromara.workflow.utils.QueryUtils; -import org.flowable.bpmn.model.UserTask; -import org.flowable.engine.ProcessMigrationService; -import org.flowable.engine.RepositoryService; -import org.flowable.engine.history.HistoricProcessInstance; -import org.flowable.engine.impl.bpmn.deployer.ResourceNameUtil; -import org.flowable.engine.repository.*; -import org.springframework.beans.factory.annotation.Autowired; -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.util.ArrayList; -import java.util.Collections; -import java.util.List; -import java.util.Set; -import java.util.zip.ZipEntry; -import java.util.zip.ZipInputStream; - -/** - * 流程定义 服务层实现 - * - * @author may - */ -@Slf4j -@RequiredArgsConstructor -@Service -public class ActProcessDefinitionServiceImpl implements IActProcessDefinitionService { - - @Autowired(required = false) - private RepositoryService repositoryService; - @Autowired(required = false) - private ProcessMigrationService processMigrationService; - private final IWfCategoryService wfCategoryService; - private final IWfDefinitionConfigService wfDefinitionConfigService; - private final WfDefinitionConfigMapper wfDefinitionConfigMapper; - private final IWfNodeConfigService wfNodeConfigService; - - /** - * 分页查询 - * - * @param bo 参数 - * @return 返回分页列表 - */ - @Override - public TableDataInfo page(ProcessDefinitionBo bo, PageQuery pageQuery) { - ProcessDefinitionQuery query = QueryUtils.definitionQuery(); - if (StringUtils.isNotEmpty(bo.getKey())) { - query.processDefinitionKey(bo.getKey()); - } - if (StringUtils.isNotEmpty(bo.getCategoryCode())) { - query.processDefinitionCategory(bo.getCategoryCode()); - } - if (StringUtils.isNotEmpty(bo.getName())) { - query.processDefinitionNameLike("%" + bo.getName() + "%"); - } - query.orderByDeploymentId().desc(); - // 分页查询 - List processDefinitionVoList = new ArrayList<>(); - List definitionList = query.latestVersion().listPage(pageQuery.getFirstNum(), pageQuery.getPageSize()); - List deploymentList = null; - if (CollUtil.isNotEmpty(definitionList)) { - List deploymentIds = StreamUtils.toList(definitionList, ProcessDefinition::getDeploymentId); - deploymentList = QueryUtils.deploymentQuery(deploymentIds).list(); - } - if (CollUtil.isNotEmpty(definitionList)) { - List ids = StreamUtils.toList(definitionList, ProcessDefinition::getId); - List wfDefinitionConfigVos = wfDefinitionConfigService.queryList(ids); - for (ProcessDefinition processDefinition : definitionList) { - ProcessDefinitionVo processDefinitionVo = BeanUtil.toBean(processDefinition, ProcessDefinitionVo.class); - if (CollUtil.isNotEmpty(deploymentList)) { - // 部署时间 - deploymentList.stream().filter(e -> e.getId().equals(processDefinition.getDeploymentId())).findFirst().ifPresent(e -> { - processDefinitionVo.setDeploymentTime(e.getDeploymentTime()); - }); - } - if (CollUtil.isNotEmpty(wfDefinitionConfigVos)) { - wfDefinitionConfigVos.stream().filter(e -> e.getDefinitionId().equals(processDefinition.getId())).findFirst().ifPresent(processDefinitionVo::setWfDefinitionConfigVo); - } - processDefinitionVoList.add(processDefinitionVo); - } - } - // 总记录数 - long total = query.count(); - TableDataInfo build = TableDataInfo.build(); - build.setRows(processDefinitionVoList); - build.setTotal(total); - return build; - } - - /** - * 查询历史流程定义列表 - * - * @param key 流程定义key - */ - @Override - public List getListByKey(String key) { - List processDefinitionVoList = new ArrayList<>(); - ProcessDefinitionQuery query = QueryUtils.definitionQuery(); - List definitionList = query.processDefinitionKey(key).list(); - List deploymentList = null; - if (CollUtil.isNotEmpty(definitionList)) { - List deploymentIds = StreamUtils.toList(definitionList, ProcessDefinition::getDeploymentId); - deploymentList = QueryUtils.deploymentQuery(deploymentIds).list(); - } - if (CollUtil.isNotEmpty(definitionList)) { - List ids = StreamUtils.toList(definitionList, ProcessDefinition::getId); - List wfDefinitionConfigVos = wfDefinitionConfigService.queryList(ids); - for (ProcessDefinition processDefinition : definitionList) { - ProcessDefinitionVo processDefinitionVo = BeanUtil.toBean(processDefinition, ProcessDefinitionVo.class); - if (CollUtil.isNotEmpty(deploymentList)) { - // 部署时间 - deploymentList.stream().filter(e -> e.getId().equals(processDefinition.getDeploymentId())).findFirst().ifPresent(e -> { - processDefinitionVo.setDeploymentTime(e.getDeploymentTime()); - }); - if (CollUtil.isNotEmpty(wfDefinitionConfigVos)) { - wfDefinitionConfigVos.stream().filter(e -> e.getDefinitionId().equals(processDefinition.getId())).findFirst().ifPresent(processDefinitionVo::setWfDefinitionConfigVo); - } - } - processDefinitionVoList.add(processDefinitionVo); - } - } - return CollUtil.reverse(processDefinitionVoList); - } - - /** - * 查看流程定义图片 - * - * @param processDefinitionId 流程定义id - */ - @SneakyThrows - @Override - public String definitionImage(String processDefinitionId) { - InputStream inputStream = repositoryService.getProcessDiagram(processDefinitionId); - return Base64.encode(IoUtil.readBytes(inputStream)); - } - - /** - * 查看流程定义xml文件 - * - * @param processDefinitionId 流程定义id - */ - @Override - public String definitionXml(String processDefinitionId) { - StringBuilder xml = new StringBuilder(); - ProcessDefinition processDefinition = repositoryService.getProcessDefinition(processDefinitionId); - InputStream inputStream = repositoryService.getResourceAsStream(processDefinition.getDeploymentId(), processDefinition.getResourceName()); - xml.append(IoUtil.read(inputStream, StandardCharsets.UTF_8)); - return xml.toString(); - } - - /** - * 删除流程定义 - * - * @param deploymentIds 部署id - * @param processDefinitionIds 流程定义id - */ - @Override - @Transactional(rollbackFor = Exception.class) - public boolean deleteDeployment(List deploymentIds, List processDefinitionIds) { - try { - List historicProcessInstances = QueryUtils.hisInstanceQuery().deploymentIdIn(deploymentIds).list(); - if (CollUtil.isNotEmpty(historicProcessInstances)) { - Set defIds = StreamUtils.toSet(historicProcessInstances, HistoricProcessInstance::getProcessDefinitionId); - List processDefinitions = QueryUtils.definitionQuery().processDefinitionIds(defIds).list(); - if (CollUtil.isNotEmpty(processDefinitions)) { - Set keys = StreamUtils.toSet(processDefinitions, ProcessDefinition::getKey); - throw new ServiceException("当前【" + String.join(",", keys) + "】流程定义已被使用不可删除!"); - } - } - //删除流程定义 - for (String deploymentId : deploymentIds) { - repositoryService.deleteDeployment(deploymentId); - } - //删除流程定义配置 - wfDefinitionConfigService.deleteByDefIds(processDefinitionIds); - //删除节点配置 - wfNodeConfigService.deleteByDefIds(processDefinitionIds); - return true; - } catch (Exception e) { - log.error(e.getMessage(), e); - throw new ServiceException(e.getMessage()); - } - } - - /** - * 激活或者挂起流程定义 - * - * @param processDefinitionId 流程定义id - */ - @Override - public boolean updateDefinitionState(String processDefinitionId) { - try { - ProcessDefinition processDefinition = QueryUtils.definitionQuery() - .processDefinitionId(processDefinitionId).singleResult(); - //将当前为挂起状态更新为激活状态 - //参数说明:参数1:流程定义id,参数2:是否激活(true是否级联对应流程实例,激活了则对应流程实例都可以审批), - //参数3:什么时候激活,如果为null则立即激活,如果为具体时间则到达此时间后激活 - if (processDefinition.isSuspended()) { - repositoryService.activateProcessDefinitionById(processDefinitionId, true, null); - } else { - repositoryService.suspendProcessDefinitionById(processDefinitionId, true, null); - } - return true; - } catch (Exception e) { - log.error(e.getMessage(), e); - throw new ServiceException("操作失败:" + e.getMessage()); - } - } - - /** - * 迁移流程定义 - * - * @param currentProcessDefinitionId 当前流程定义id - * @param fromProcessDefinitionId 需要迁移到的流程定义id - */ - - @Override - public boolean migrationDefinition(String currentProcessDefinitionId, String fromProcessDefinitionId) { - try { - // 迁移验证 - boolean migrationValid = processMigrationService.createProcessInstanceMigrationBuilder() - .migrateToProcessDefinition(currentProcessDefinitionId) - .validateMigrationOfProcessInstances(fromProcessDefinitionId) - .isMigrationValid(); - if (!migrationValid) { - throw new ServiceException("流程定义差异过大无法迁移,请修改流程图"); - } - // 已结束的流程实例不会迁移 - processMigrationService.createProcessInstanceMigrationBuilder() - .migrateToProcessDefinition(currentProcessDefinitionId) - .migrateProcessInstances(fromProcessDefinitionId); - return true; - } catch (Exception e) { - log.error(e.getMessage(), e); - throw new ServiceException(e.getMessage()); - } - } - - /** - * 流程定义转换为模型 - * - * @param processDefinitionId 流程定义id - */ - @Override - public boolean convertToModel(String processDefinitionId) { - ProcessDefinition pd = QueryUtils.definitionQuery() - .processDefinitionId(processDefinitionId).singleResult(); - InputStream inputStream = repositoryService.getResourceAsStream(pd.getDeploymentId(), pd.getResourceName()); - ModelQuery query = QueryUtils.modelQuery(); - Model model = query.modelKey(pd.getKey()).singleResult(); - try { - if (ObjectUtil.isNotNull(model)) { - repositoryService.addModelEditorSource(model.getId(), IoUtil.readBytes(inputStream)); - } else { - Model modelData = repositoryService.newModel(); - modelData.setKey(pd.getKey()); - modelData.setName(pd.getName()); - modelData.setCategory(pd.getCategory()); - modelData.setTenantId(pd.getTenantId()); - repositoryService.saveModel(modelData); - repositoryService.addModelEditorSource(modelData.getId(), IoUtil.readBytes(inputStream)); - } - return true; - } catch (Exception e) { - log.error(e.getMessage(), e); - throw new ServiceException(e.getMessage()); - } - } - - /** - * 通过zip或xml部署流程定义 - * - * @param file 文件 - * @param categoryCode 分类 - */ - @SneakyThrows - @Override - @Transactional(rollbackFor = Exception.class) - public void deployByFile(MultipartFile file, String categoryCode) { - - WfCategory wfCategory = wfCategoryService.queryByCategoryCode(categoryCode); - if (wfCategory == null) { - throw new ServiceException("流程分类不存在"); - } - // 文件后缀名 - String suffix = FileUtil.extName(file.getOriginalFilename()); - InputStream inputStream = file.getInputStream(); - if (FlowConstant.ZIP.equalsIgnoreCase(suffix)) { - ZipInputStream zipInputStream = null; - try { - zipInputStream = new ZipInputStream(inputStream); - ZipEntry zipEntry; - while ((zipEntry = zipInputStream.getNextEntry()) != null) { - String filename = zipEntry.getName(); - String[] splitFilename = filename.substring(0, filename.lastIndexOf(".")).split("-"); - //流程名称 - String processName = splitFilename[0]; - //流程key - String processKey = splitFilename[1]; - ProcessDefinition oldProcessDefinition = QueryUtils.definitionQuery().processDefinitionKey(processKey).latestVersion().singleResult(); - DeploymentBuilder builder = repositoryService.createDeployment(); - Deployment deployment = builder.addInputStream(filename, zipInputStream) - .tenantId(TenantHelper.getTenantId()) - .name(processName).key(processKey).category(categoryCode).deploy(); - ProcessDefinition definition = QueryUtils.definitionQuery().deploymentId(deployment.getId()).singleResult(); - repositoryService.setProcessDefinitionCategory(definition.getId(), categoryCode); - setWfConfig(oldProcessDefinition, definition); - zipInputStream.closeEntry(); - } - } catch (IOException e) { - throw new RuntimeException(e); - } finally { - if (zipInputStream != null) { - zipInputStream.close(); - } - } - //初始化配置数据(demo使用,不用可删除) - initWfDefConfig(); - } else { - String originalFilename = file.getOriginalFilename(); - if (StringUtils.containsAny(originalFilename, ResourceNameUtil.BPMN_RESOURCE_SUFFIXES)) { - // 文件名 = 流程名称-流程key - String[] splitFilename = originalFilename.substring(0, originalFilename.lastIndexOf(".")).split("-"); - if (splitFilename.length < 2) { - throw new ServiceException("文件名 = 流程名称-流程KEY"); - } - //流程名称 - String processName = splitFilename[0]; - //流程key - String processKey = splitFilename[1]; - ProcessDefinition oldProcessDefinition = QueryUtils.definitionQuery().processDefinitionKey(processKey).latestVersion().singleResult(); - DeploymentBuilder builder = repositoryService.createDeployment(); - Deployment deployment = builder.addInputStream(originalFilename, inputStream) - .tenantId(TenantHelper.getTenantId()) - .name(processName).key(processKey).category(categoryCode).deploy(); - // 更新分类 - ProcessDefinition definition = QueryUtils.definitionQuery().deploymentId(deployment.getId()).singleResult(); - repositoryService.setProcessDefinitionCategory(definition.getId(), categoryCode); - setWfConfig(oldProcessDefinition, definition); - } else { - throw new ServiceException("文件类型上传错误!"); - } - } - - } - - /** - * 初始化配置数据(demo使用,不用可删除) - */ - private void initWfDefConfig() { - List wfDefinitionConfigs = wfDefinitionConfigMapper.selectList(); - if (CollUtil.isEmpty(wfDefinitionConfigs)) { - ProcessDefinition processDefinition = QueryUtils.definitionQuery().processDefinitionKey("leave1").latestVersion().singleResult(); - if (processDefinition != null) { - WfDefinitionConfigBo wfDefinitionConfigBo = new WfDefinitionConfigBo(); - wfDefinitionConfigBo.setDefinitionId(processDefinition.getId()); - wfDefinitionConfigBo.setProcessKey(processDefinition.getKey()); - wfDefinitionConfigBo.setTableName("test_leave"); - wfDefinitionConfigBo.setVersion(processDefinition.getVersion()); - wfDefinitionConfigService.saveOrUpdate(wfDefinitionConfigBo); - } - } - - } - - /** - * 设置表单内容 - * - * @param oldProcessDefinition 部署前最新流程定义 - * @param definition 部署后最新流程定义 - */ - private void setWfConfig(ProcessDefinition oldProcessDefinition, ProcessDefinition definition) { - //更新流程定义表单 - if (oldProcessDefinition != null) { - WfDefinitionConfigVo definitionVo = wfDefinitionConfigService.getByDefId(oldProcessDefinition.getId()); - if (definitionVo != null) { - wfDefinitionConfigService.deleteByDefIds(Collections.singletonList(oldProcessDefinition.getId())); - WfDefinitionConfigBo wfDefinitionConfigBo = new WfDefinitionConfigBo(); - wfDefinitionConfigBo.setDefinitionId(definition.getId()); - wfDefinitionConfigBo.setProcessKey(definition.getKey()); - wfDefinitionConfigBo.setTableName(definitionVo.getTableName()); - wfDefinitionConfigBo.setVersion(definition.getVersion()); - wfDefinitionConfigBo.setRemark(definitionVo.getRemark()); - wfDefinitionConfigService.saveOrUpdate(wfDefinitionConfigBo); - } - } - //更新流程节点配置表单 - List userTasks = ModelUtils.getUserTaskFlowElements(definition.getId()); - UserTask applyUserTask = ModelUtils.getApplyUserTask(definition.getId()); - List wfNodeConfigList = new ArrayList<>(); - for (UserTask userTask : userTasks) { - if (StringUtils.isNotBlank(userTask.getFormKey()) && userTask.getFormKey().contains(StrUtil.COLON)) { - WfNodeConfig wfNodeConfig = new WfNodeConfig(); - wfNodeConfig.setNodeId(userTask.getId()); - wfNodeConfig.setNodeName(userTask.getName()); - wfNodeConfig.setDefinitionId(definition.getId()); - String[] split = userTask.getFormKey().split(StrUtil.COLON); - wfNodeConfig.setFormType(split[0]); - wfNodeConfig.setFormId(Long.valueOf(split[1])); - wfNodeConfig.setApplyUserTask(applyUserTask.getId().equals(userTask.getId()) ? FlowConstant.TRUE : FlowConstant.FALSE); - wfNodeConfigList.add(wfNodeConfig); - } - } - if (CollUtil.isNotEmpty(wfNodeConfigList)) { - wfNodeConfigService.saveOrUpdate(wfNodeConfigList); - } - } -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActProcessInstanceServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActProcessInstanceServiceImpl.java deleted file mode 100644 index 8b9b113fd..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActProcessInstanceServiceImpl.java +++ /dev/null @@ -1,691 +0,0 @@ -package org.dromara.workflow.service.impl; - -import cn.hutool.core.bean.BeanUtil; -import cn.hutool.core.codec.Base64; -import cn.hutool.core.collection.CollUtil; -import cn.hutool.core.convert.Convert; -import cn.hutool.core.io.IoUtil; -import cn.hutool.core.util.ObjectUtil; -import lombok.RequiredArgsConstructor; -import lombok.SneakyThrows; -import lombok.extern.slf4j.Slf4j; -import org.dromara.common.core.enums.BusinessStatusEnum; -import org.dromara.common.core.exception.ServiceException; -import org.dromara.common.core.service.UserService; -import org.dromara.common.core.utils.StreamUtils; -import org.dromara.common.core.utils.StringUtils; -import org.dromara.common.mybatis.core.page.PageQuery; -import org.dromara.common.mybatis.core.page.TableDataInfo; -import org.dromara.common.satoken.utils.LoginHelper; -import org.dromara.workflow.common.constant.FlowConstant; -import org.dromara.workflow.common.enums.TaskStatusEnum; -import org.dromara.workflow.domain.ActHiProcinst; -import org.dromara.workflow.domain.bo.ProcessInstanceBo; -import org.dromara.workflow.domain.bo.ProcessInvalidBo; -import org.dromara.workflow.domain.bo.TaskUrgingBo; -import org.dromara.workflow.domain.vo.*; -import org.dromara.workflow.flowable.CustomDefaultProcessDiagramGenerator; -import org.dromara.workflow.flowable.cmd.DeleteExecutionCmd; -import org.dromara.workflow.flowable.cmd.ExecutionChildByExecutionIdCmd; -import org.dromara.workflow.flowable.handler.FlowProcessEventHandler; -import org.dromara.workflow.service.IActHiProcinstService; -import org.dromara.workflow.service.IActProcessInstanceService; -import org.dromara.workflow.service.IWfNodeConfigService; -import org.dromara.workflow.service.IWfTaskBackNodeService; -import org.dromara.workflow.utils.QueryUtils; -import org.dromara.workflow.utils.WorkflowUtils; -import org.flowable.bpmn.model.BpmnModel; -import org.flowable.engine.*; -import org.flowable.engine.history.HistoricActivityInstance; -import org.flowable.engine.history.HistoricProcessInstance; -import org.flowable.engine.history.HistoricProcessInstanceQuery; -import org.flowable.engine.impl.persistence.entity.ExecutionEntity; -import org.flowable.engine.repository.ProcessDefinition; -import org.flowable.engine.runtime.ProcessInstance; -import org.flowable.engine.runtime.ProcessInstanceQuery; -import org.flowable.engine.task.Attachment; -import org.flowable.engine.task.Comment; -import org.flowable.task.api.Task; -import org.flowable.task.api.history.HistoricTaskInstance; -import org.springframework.beans.BeanUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.beans.factory.annotation.Value; -import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; - -import java.awt.*; -import java.io.InputStream; -import java.nio.charset.StandardCharsets; -import java.util.List; -import java.util.*; - -/** - * 流程实例 服务层实现 - * - * @author may - */ -@Slf4j -@RequiredArgsConstructor -@Service -public class ActProcessInstanceServiceImpl implements IActProcessInstanceService { - - @Autowired(required = false) - private RepositoryService repositoryService; - @Autowired(required = false) - private RuntimeService runtimeService; - @Autowired(required = false) - private HistoryService historyService; - @Autowired(required = false) - private TaskService taskService; - @Autowired(required = false) - private ManagementService managementService; - private final IActHiProcinstService actHiProcinstService; - private final IWfTaskBackNodeService wfTaskBackNodeService; - private final IWfNodeConfigService wfNodeConfigService; - private final FlowProcessEventHandler flowProcessEventHandler; - private final UserService userService; - - @Value("${flowable.activity-font-name}") - private String activityFontName; - - @Value("${flowable.label-font-name}") - private String labelFontName; - - @Value("${flowable.annotation-font-name}") - private String annotationFontName; - - /** - * 分页查询正在运行的流程实例 - * - * @param bo 参数 - */ - @Override - public TableDataInfo getPageByRunning(ProcessInstanceBo bo, PageQuery pageQuery) { - List list = new ArrayList<>(); - ProcessInstanceQuery query = QueryUtils.instanceQuery(); - if (StringUtils.isNotBlank(bo.getName())) { - query.processInstanceNameLikeIgnoreCase("%" + bo.getName() + "%"); - } - if (StringUtils.isNotBlank(bo.getKey())) { - query.processDefinitionKey(bo.getKey()); - } - if (StringUtils.isNotBlank(bo.getStartUserId())) { - query.startedBy(bo.getStartUserId()); - } - if (StringUtils.isNotBlank(bo.getBusinessKey())) { - query.processInstanceBusinessKey(bo.getBusinessKey()); - } - if (StringUtils.isNotBlank(bo.getCategoryCode())) { - query.processDefinitionCategory(bo.getCategoryCode()); - } - query.orderByStartTime().desc(); - List processInstances = query.listPage(pageQuery.getFirstNum(), pageQuery.getPageSize()); - for (ProcessInstance processInstance : processInstances) { - ProcessInstanceVo processInstanceVo = BeanUtil.toBean(processInstance, ProcessInstanceVo.class); - processInstanceVo.setIsSuspended(processInstance.isSuspended()); - processInstanceVo.setBusinessStatusName(BusinessStatusEnum.findByStatus(processInstance.getBusinessStatus())); - list.add(processInstanceVo); - } - if (CollUtil.isNotEmpty(list)) { - List processDefinitionIds = StreamUtils.toList(list, ProcessInstanceVo::getProcessDefinitionId); - List wfNodeConfigVoList = wfNodeConfigService.selectByDefIds(processDefinitionIds); - for (ProcessInstanceVo processInstanceVo : list) { - if (CollUtil.isNotEmpty(wfNodeConfigVoList)) { - wfNodeConfigVoList.stream().filter(e -> e.getDefinitionId().equals(processInstanceVo.getProcessDefinitionId()) && FlowConstant.TRUE.equals(e.getApplyUserTask())).findFirst().ifPresent(processInstanceVo::setWfNodeConfigVo); - } - } - } - long count = query.count(); - TableDataInfo build = TableDataInfo.build(); - build.setRows(list); - build.setTotal(count); - return build; - } - - /** - * 分页查询已结束的流程实例 - * - * @param bo 参数 - */ - @Override - public TableDataInfo getPageByFinish(ProcessInstanceBo bo, PageQuery pageQuery) { - List list = new ArrayList<>(); - HistoricProcessInstanceQuery query = QueryUtils.hisInstanceQuery() - .finished().orderByProcessInstanceEndTime().desc(); - if (StringUtils.isNotEmpty(bo.getName())) { - query.processInstanceNameLikeIgnoreCase("%" + bo.getName() + "%"); - } - if (StringUtils.isNotBlank(bo.getKey())) { - query.processDefinitionKey(bo.getKey()); - } - if (StringUtils.isNotEmpty(bo.getStartUserId())) { - query.startedBy(bo.getStartUserId()); - } - if (StringUtils.isNotBlank(bo.getBusinessKey())) { - query.processInstanceBusinessKey(bo.getBusinessKey()); - } - if (StringUtils.isNotBlank(bo.getCategoryCode())) { - query.processDefinitionCategory(bo.getCategoryCode()); - } - List historicProcessInstances = query.listPage(pageQuery.getFirstNum(), pageQuery.getPageSize()); - for (HistoricProcessInstance historicProcessInstance : historicProcessInstances) { - ProcessInstanceVo processInstanceVo = BeanUtil.toBean(historicProcessInstance, ProcessInstanceVo.class); - processInstanceVo.setBusinessStatusName(BusinessStatusEnum.findByStatus(historicProcessInstance.getBusinessStatus())); - list.add(processInstanceVo); - } - if (CollUtil.isNotEmpty(list)) { - List processDefinitionIds = StreamUtils.toList(list, ProcessInstanceVo::getProcessDefinitionId); - List wfNodeConfigVoList = wfNodeConfigService.selectByDefIds(processDefinitionIds); - for (ProcessInstanceVo processInstanceVo : list) { - if (CollUtil.isNotEmpty(wfNodeConfigVoList)) { - wfNodeConfigVoList.stream().filter(e -> e.getDefinitionId().equals(processInstanceVo.getProcessDefinitionId()) && FlowConstant.TRUE.equals(e.getApplyUserTask())).findFirst().ifPresent(processInstanceVo::setWfNodeConfigVo); - } - } - } - long count = query.count(); - TableDataInfo build = TableDataInfo.build(); - build.setRows(list); - build.setTotal(count); - return build; - } - - /** - * 通过业务id获取历史流程图 - * - * @param businessKey 业务id - */ - @SneakyThrows - @Override - public String getHistoryImage(String businessKey) { - String processDefinitionId; - // 获取当前的流程实例 - ProcessInstance processInstance = QueryUtils.businessKeyQuery(businessKey).singleResult(); - // 如果流程已经结束,则得到结束节点 - if (Objects.isNull(processInstance)) { - HistoricProcessInstance pi = QueryUtils.hisInstanceQuery().processInstanceBusinessKey(businessKey).singleResult(); - processDefinitionId = pi.getProcessDefinitionId(); - } else { - // 根据流程实例ID获得当前处于活动状态的ActivityId合集 - ProcessInstance pi = QueryUtils.instanceQuery(processInstance.getProcessInstanceId()).singleResult(); - processDefinitionId = pi.getProcessDefinitionId(); - } - - // 获得活动的节点 - List highLightedFlowList = QueryUtils.hisActivityInstanceQuery(processInstance.getProcessInstanceId()).orderByHistoricActivityInstanceStartTime().asc().list(); - - List highLightedFlows = new ArrayList<>(); - List highLightedNodes = new ArrayList<>(); - //高亮 - for (HistoricActivityInstance tempActivity : highLightedFlowList) { - if (FlowConstant.SEQUENCE_FLOW.equals(tempActivity.getActivityType())) { - //高亮线 - highLightedFlows.add(tempActivity.getActivityId()); - } else { - //高亮节点 - if (tempActivity.getEndTime() == null) { - highLightedNodes.add(Color.RED.toString() + tempActivity.getActivityId()); - } else { - highLightedNodes.add(tempActivity.getActivityId()); - } - } - } - List highLightedNodeList = new ArrayList<>(); - //运行中的节点 - List redNodeCollect = StreamUtils.filter(highLightedNodes, e -> e.contains(Color.RED.toString())); - //排除与运行中相同的节点 - for (String nodeId : highLightedNodes) { - if (!nodeId.contains(Color.RED.toString()) && !redNodeCollect.contains(Color.RED + nodeId)) { - highLightedNodeList.add(nodeId); - } - } - highLightedNodeList.addAll(redNodeCollect); - BpmnModel bpmnModel = repositoryService.getBpmnModel(processDefinitionId); - CustomDefaultProcessDiagramGenerator diagramGenerator = new CustomDefaultProcessDiagramGenerator(); - InputStream inputStream = diagramGenerator.generateDiagram(bpmnModel, "png", highLightedNodeList, highLightedFlows, activityFontName, labelFontName, annotationFontName, null, 1.0, true); - return Base64.encode(IoUtil.readBytes(inputStream)); - } - - /** - * 通过业务id获取历史流程图运行中,历史等节点 - * - * @param businessKey 业务id - */ - @Override - public Map getHistoryList(String businessKey) { - Map map = new HashMap<>(); - List> taskList = new ArrayList<>(); - HistoricProcessInstance historicProcessInstance = QueryUtils.hisBusinessKeyQuery(businessKey).singleResult(); - String processInstanceId = historicProcessInstance.getId(); - StringBuilder xml = new StringBuilder(); - ProcessDefinition processDefinition = repositoryService.getProcessDefinition(historicProcessInstance.getProcessDefinitionId()); - // 获取节点 - List highLightedFlowList = QueryUtils.hisActivityInstanceQuery(processInstanceId).orderByHistoricActivityInstanceStartTime().asc().list(); - for (HistoricActivityInstance tempActivity : highLightedFlowList) { - Map task = new HashMap<>(); - switch (tempActivity.getActivityType()) { - case FlowConstant.SEQUENCE_FLOW, FlowConstant.PARALLEL_GATEWAY, - FlowConstant.EXCLUSIVE_GATEWAY, FlowConstant.INCLUSIVE_GATEWAY -> {} - default -> { - task.put("key", tempActivity.getActivityId()); - task.put("completed", tempActivity.getEndTime() != null); - task.put("activityType", tempActivity.getActivityType()); - taskList.add(task); - } - } - } - ProcessInstance processInstance = QueryUtils.instanceQuery(processInstanceId).singleResult(); - if (processInstance != null) { - taskList = StreamUtils.filter(taskList, e -> !e.get("activityType").equals(FlowConstant.END_EVENT)); - } - //查询出运行中节点 - List> runtimeNodeList = StreamUtils.filter(taskList, e -> !(Boolean) e.get("completed")); - if (CollUtil.isNotEmpty(runtimeNodeList)) { - Iterator> iterator = taskList.iterator(); - while (iterator.hasNext()) { - Map next = iterator.next(); - runtimeNodeList.stream().filter(t -> t.get("key").equals(next.get("key")) && (Boolean) next.get("completed")).findFirst().ifPresent(t -> iterator.remove()); - } - } - map.put("taskList", taskList); - List historyTaskList = getHistoryTaskList(processInstanceId, processDefinition.getVersion()); - map.put("historyList", historyTaskList); - InputStream inputStream = repositoryService.getResourceAsStream(processDefinition.getDeploymentId(), processDefinition.getResourceName()); - xml.append(IoUtil.read(inputStream, StandardCharsets.UTF_8)); - map.put("xml", xml.toString()); - return map; - } - - /** - * 获取历史任务节点信息 - * - * @param processInstanceId 流程实例id - * @param version 版本 - */ - private List getHistoryTaskList(String processInstanceId, Integer version) { - //查询任务办理记录 - List list = QueryUtils.hisTaskInstanceQuery(processInstanceId).orderByHistoricTaskInstanceEndTime().desc().list(); - list = StreamUtils.sorted(list, Comparator.comparing(HistoricTaskInstance::getEndTime, Comparator.nullsFirst(Date::compareTo)).reversed()); - List actHistoryInfoVoList = new ArrayList<>(); - for (HistoricTaskInstance historicTaskInstance : list) { - ActHistoryInfoVo actHistoryInfoVo = new ActHistoryInfoVo(); - BeanUtils.copyProperties(historicTaskInstance, actHistoryInfoVo); - actHistoryInfoVo.setStatus(actHistoryInfoVo.getEndTime() == null ? "待处理" : "已处理"); - if (ObjectUtil.isNotEmpty(historicTaskInstance.getDurationInMillis())) { - actHistoryInfoVo.setRunDuration(getDuration(historicTaskInstance.getDurationInMillis())); - } - actHistoryInfoVo.setVersion(version); - actHistoryInfoVoList.add(actHistoryInfoVo); - } - List historyInfoVoList = new ArrayList<>(); - Map> groupByKey = StreamUtils.groupByKey(actHistoryInfoVoList, ActHistoryInfoVo::getTaskDefinitionKey); - for (Map.Entry> entry : groupByKey.entrySet()) { - ActHistoryInfoVo historyInfoVo = new ActHistoryInfoVo(); - if (entry.getValue().size() > 1) { - List historyInfoVos = StreamUtils.filter(entry.getValue(), e -> StringUtils.isNotBlank(e.getAssignee())); - if (CollUtil.isNotEmpty(historyInfoVos)) { - ActHistoryInfoVo infoVo = historyInfoVos.get(0); - BeanUtils.copyProperties(infoVo, historyInfoVo); - historyInfoVo.setStatus(infoVo.getEndTime() == null ? "待处理" : "已处理"); - historyInfoVo.setStartTime(infoVo.getStartTime()); - historyInfoVo.setEndTime(infoVo.getEndTime() == null ? null : infoVo.getEndTime()); - historyInfoVo.setRunDuration(infoVo.getEndTime() == null ? null : infoVo.getRunDuration()); - if (ObjectUtil.isEmpty(infoVo.getAssignee())) { - ParticipantVo participantVo = WorkflowUtils.getCurrentTaskParticipant(infoVo.getId(), userService); - if (ObjectUtil.isNotEmpty(participantVo) && CollUtil.isNotEmpty(participantVo.getCandidate())) { - historyInfoVo.setAssignee(StreamUtils.join(participantVo.getCandidate(), Convert::toStr)); - } - } - } - } else { - actHistoryInfoVoList.stream().filter(e -> e.getTaskDefinitionKey().equals(entry.getKey())).findFirst() - .ifPresent(e -> { - BeanUtils.copyProperties(e, historyInfoVo); - historyInfoVo.setStatus(e.getEndTime() == null ? "待处理" : "已处理"); - historyInfoVo.setStartTime(e.getStartTime()); - historyInfoVo.setEndTime(e.getEndTime() == null ? null : e.getEndTime()); - historyInfoVo.setRunDuration(e.getEndTime() == null ? null : e.getRunDuration()); - if (ObjectUtil.isEmpty(e.getAssignee())) { - ParticipantVo participantVo = WorkflowUtils.getCurrentTaskParticipant(e.getId(), userService); - if (ObjectUtil.isNotEmpty(participantVo) && CollUtil.isNotEmpty(participantVo.getCandidate())) { - historyInfoVo.setAssignee(StreamUtils.join(participantVo.getCandidate(), Convert::toStr)); - } - } - }); - - } - historyInfoVoList.add(historyInfoVo); - - } - return historyInfoVoList; - } - - /** - * 获取审批记录 - * - * @param businessKey 业务id - */ - @Override - public List getHistoryRecord(String businessKey) { - // 查询任务办理记录 - List list = QueryUtils.hisTaskBusinessKeyQuery(businessKey).orderByHistoricTaskInstanceEndTime().desc().list(); - list = StreamUtils.sorted(list, Comparator.comparing(HistoricTaskInstance::getEndTime, Comparator.nullsFirst(Date::compareTo)).reversed()); - HistoricProcessInstance historicProcessInstance = QueryUtils.hisBusinessKeyQuery(businessKey).singleResult(); - String processInstanceId = historicProcessInstance.getId(); - List actHistoryInfoVoList = new ArrayList<>(); - List processInstanceComments = taskService.getProcessInstanceComments(processInstanceId); - //附件 - List attachmentList = taskService.getProcessInstanceAttachments(processInstanceId); - for (HistoricTaskInstance historicTaskInstance : list) { - ActHistoryInfoVo actHistoryInfoVo = new ActHistoryInfoVo(); - BeanUtils.copyProperties(historicTaskInstance, actHistoryInfoVo); - if (actHistoryInfoVo.getEndTime() == null) { - actHistoryInfoVo.setStatus(TaskStatusEnum.WAITING.getStatus()); - actHistoryInfoVo.setStatusName(TaskStatusEnum.WAITING.getDesc()); - } - if (CollUtil.isNotEmpty(processInstanceComments)) { - processInstanceComments.stream().filter(e -> e.getTaskId().equals(historicTaskInstance.getId())).findFirst().ifPresent(e -> { - actHistoryInfoVo.setComment(e.getFullMessage()); - actHistoryInfoVo.setStatus(e.getType()); - actHistoryInfoVo.setStatusName(TaskStatusEnum.findByStatus(e.getType())); - }); - } - if (ObjectUtil.isNotEmpty(historicTaskInstance.getDurationInMillis())) { - actHistoryInfoVo.setRunDuration(getDuration(historicTaskInstance.getDurationInMillis())); - } - //附件 - if (CollUtil.isNotEmpty(attachmentList)) { - List attachments = StreamUtils.filter(attachmentList, e -> e.getTaskId().equals(historicTaskInstance.getId())); - if (CollUtil.isNotEmpty(attachments)) { - actHistoryInfoVo.setAttachmentList(attachments); - } - } - //设置人员id - if (ObjectUtil.isEmpty(historicTaskInstance.getAssignee())) { - ParticipantVo participantVo = WorkflowUtils.getCurrentTaskParticipant(historicTaskInstance.getId(), userService); - if (ObjectUtil.isNotEmpty(participantVo) && CollUtil.isNotEmpty(participantVo.getCandidate())) { - actHistoryInfoVo.setAssignee(StreamUtils.join(participantVo.getCandidate(), Convert::toStr)); - } - } - actHistoryInfoVoList.add(actHistoryInfoVo); - } - // 审批记录 - Map> groupByKey = StreamUtils.groupByKey(actHistoryInfoVoList, ActHistoryInfoVo::getTaskDefinitionKey); - for (Map.Entry> entry : groupByKey.entrySet()) { - ActHistoryInfoVo actHistoryInfoVo = BeanUtil.toBean(entry.getValue().get(0), ActHistoryInfoVo.class); - actHistoryInfoVoList.stream().filter(e -> e.getTaskDefinitionKey().equals(entry.getKey()) && e.getEndTime() != null).findFirst() - .ifPresent(e -> { - actHistoryInfoVo.setStatus("已处理"); - actHistoryInfoVo.setStartTime(e.getStartTime()); - }); - actHistoryInfoVoList.stream().filter(e -> e.getTaskDefinitionKey().equals(entry.getKey()) && e.getEndTime() == null).findFirst() - .ifPresent(e -> { - actHistoryInfoVo.setStatus("待处理"); - actHistoryInfoVo.setStartTime(e.getStartTime()); - actHistoryInfoVo.setEndTime(null); - actHistoryInfoVo.setRunDuration(null); - }); - } - List recordList = new ArrayList<>(); - // 待办理 - recordList.addAll(StreamUtils.filter(actHistoryInfoVoList, e -> e.getEndTime() == null)); - // 已办理 - recordList.addAll(StreamUtils.filter(actHistoryInfoVoList, e -> e.getEndTime() != null)); - - return recordList; - } - - /** - * 任务完成时间处理 - * - * @param time 时间 - */ - private String getDuration(long time) { - - long day = time / (24 * 60 * 60 * 1000); - long hour = (time / (60 * 60 * 1000) - day * 24); - long minute = ((time / (60 * 1000)) - day * 24 * 60 - hour * 60); - long second = (time / 1000 - day * 24 * 60 * 60 - hour * 60 * 60 - minute * 60); - - if (day > 0) { - return day + "天" + hour + "小时" + minute + "分钟"; - } - if (hour > 0) { - return hour + "小时" + minute + "分钟"; - } - if (minute > 0) { - return minute + "分钟"; - } - if (second > 0) { - return second + "秒"; - } else { - return 0 + "秒"; - } - } - - /** - * 作废流程实例,不会删除历史记录(删除运行中的实例) - * - * @param processInvalidBo 参数 - */ - @Override - @Transactional(rollbackFor = Exception.class) - public boolean deleteRunInstance(ProcessInvalidBo processInvalidBo) { - try { - List list = QueryUtils.taskQuery().processInstanceBusinessKey(processInvalidBo.getBusinessKey()).list(); - String processInstanceId = list.get(0).getProcessInstanceId(); - List subTasks = StreamUtils.filter(list, e -> StringUtils.isNotBlank(e.getParentTaskId())); - if (CollUtil.isNotEmpty(subTasks)) { - subTasks.forEach(e -> taskService.deleteTask(e.getId())); - } - String deleteReason = LoginHelper.getLoginUser().getNickname() + "作废了当前申请!"; - if (StringUtils.isNotBlank(processInvalidBo.getDeleteReason())) { - deleteReason = LoginHelper.getLoginUser().getNickname() + "作废理由:" + processInvalidBo.getDeleteReason(); - } - for (Task task : StreamUtils.filter(list, e -> StringUtils.isBlank(e.getParentTaskId()))) { - taskService.addComment(task.getId(), task.getProcessInstanceId(), TaskStatusEnum.INVALID.getStatus(), deleteReason); - } - HistoricProcessInstance historicProcessInstance = QueryUtils.hisInstanceQuery(processInstanceId).singleResult(); - BusinessStatusEnum.checkInvalidStatus(historicProcessInstance.getBusinessStatus()); - runtimeService.updateBusinessStatus(processInstanceId, BusinessStatusEnum.INVALID.getStatus()); - runtimeService.deleteProcessInstance(processInstanceId, deleteReason); - //流程作废监听 - flowProcessEventHandler.processHandler(historicProcessInstance.getProcessDefinitionKey(), - historicProcessInstance.getBusinessKey(), BusinessStatusEnum.INVALID.getStatus(), false); - return true; - } catch (Exception e) { - log.error(e.getMessage(), e); - throw new ServiceException(e.getMessage()); - } - } - - /** - * 运行中的实例 删除程实例,删除历史记录,删除业务与流程关联信息 - * - * @param businessKeys 业务id - */ - @Override - @Transactional(rollbackFor = Exception.class) - public boolean deleteRunAndHisInstance(List businessKeys) { - try { - // 1.删除运行中流程实例 - List actHiProcinsts = actHiProcinstService.selectByBusinessKeyIn(businessKeys); - if (CollUtil.isEmpty(actHiProcinsts)) { - log.warn("当前业务ID:{}查询到流程实例为空!", businessKeys); - return false; - } - List processInstanceIds = StreamUtils.toList(actHiProcinsts, ActHiProcinst::getId); - List list = QueryUtils.taskQuery(processInstanceIds).list(); - List subTasks = StreamUtils.filter(list, e -> StringUtils.isNotBlank(e.getParentTaskId())); - if (CollUtil.isNotEmpty(subTasks)) { - subTasks.forEach(e -> taskService.deleteTask(e.getId())); - } - runtimeService.bulkDeleteProcessInstances(processInstanceIds, LoginHelper.getUserId() + "删除了当前流程申请"); - // 2.删除历史记录 - List historicProcessInstanceList = QueryUtils.hisInstanceQuery(new HashSet<>(processInstanceIds)).list(); - if (ObjectUtil.isNotEmpty(historicProcessInstanceList)) { - historyService.bulkDeleteHistoricProcessInstances(processInstanceIds); - } - wfTaskBackNodeService.deleteByInstanceIds(processInstanceIds); - return true; - } catch (Exception e) { - log.error(e.getMessage(), e); - throw new ServiceException(e.getMessage()); - } - } - - /** - * 已完成的实例 删除程实例,删除历史记录,删除业务与流程关联信息 - * - * @param businessKeys 业务id - */ - @Override - @Transactional(rollbackFor = Exception.class) - public boolean deleteFinishAndHisInstance(List businessKeys) { - try { - List actHiProcinsts = actHiProcinstService.selectByBusinessKeyIn(businessKeys); - if (CollUtil.isEmpty(actHiProcinsts)) { - log.warn("当前业务ID:{}查询到流程实例为空!", businessKeys); - return false; - } - List processInstanceIds = StreamUtils.toList(actHiProcinsts, ActHiProcinst::getId); - historyService.bulkDeleteHistoricProcessInstances(processInstanceIds); - wfTaskBackNodeService.deleteByInstanceIds(processInstanceIds); - return true; - } catch (Exception e) { - log.error(e.getMessage(), e); - throw new ServiceException(e.getMessage()); - } - } - - /** - * 撤销流程申请 - * - * @param businessKey 业务id - */ - @Override - @Transactional(rollbackFor = Exception.class) - public boolean cancelProcessApply(String businessKey) { - try { - ProcessInstance processInstance = QueryUtils.businessKeyQuery(businessKey) - .startedBy(String.valueOf(LoginHelper.getUserId())).singleResult(); - if (ObjectUtil.isNull(processInstance)) { - throw new ServiceException("您不是流程发起人,撤销失败!"); - } - if (processInstance.isSuspended()) { - throw new ServiceException(FlowConstant.MESSAGE_SUSPENDED); - } - String processInstanceId = processInstance.getId(); - BusinessStatusEnum.checkCancelStatus(processInstance.getBusinessStatus()); - List taskList = QueryUtils.taskQuery(processInstanceId).list(); - for (Task task : taskList) { - taskService.setAssignee(task.getId(), null); - taskService.addComment(task.getId(), processInstanceId, TaskStatusEnum.CANCEL.getStatus(), LoginHelper.getLoginUser().getNickname() + ":撤销申请"); - } - HistoricTaskInstance historicTaskInstance = QueryUtils.hisTaskInstanceQuery(processInstanceId).finished().orderByHistoricTaskInstanceEndTime().asc().list().get(0); - List nodeIds = StreamUtils.toList(taskList, Task::getTaskDefinitionKey); - runtimeService.createChangeActivityStateBuilder() - .processInstanceId(processInstanceId) - .moveActivityIdsToSingleActivityId(nodeIds, historicTaskInstance.getTaskDefinitionKey()).changeState(); - Task task = QueryUtils.taskQuery(processInstanceId).list().get(0); - taskService.setAssignee(task.getId(), historicTaskInstance.getAssignee()); - //获取并行网关执行后保留的执行实例数据 - ExecutionChildByExecutionIdCmd childByExecutionIdCmd = new ExecutionChildByExecutionIdCmd(task.getExecutionId()); - List executionEntities = managementService.executeCommand(childByExecutionIdCmd); - //删除流程实例垃圾数据 - for (ExecutionEntity executionEntity : executionEntities) { - DeleteExecutionCmd deleteExecutionCmd = new DeleteExecutionCmd(executionEntity.getId()); - managementService.executeCommand(deleteExecutionCmd); - } - runtimeService.updateBusinessStatus(processInstanceId, BusinessStatusEnum.CANCEL.getStatus()); - //流程作废监听 - flowProcessEventHandler.processHandler(processInstance.getProcessDefinitionKey(), - processInstance.getBusinessKey(), BusinessStatusEnum.CANCEL.getStatus(), false); - return true; - } catch (Exception e) { - log.error("撤销失败:" + e.getMessage(), e); - throw new ServiceException("撤销失败:" + e.getMessage()); - } - } - - /** - * 分页查询当前登录人单据 - * - * @param bo 参数 - */ - @Override - public TableDataInfo getPageByCurrent(ProcessInstanceBo bo, PageQuery pageQuery) { - List list = new ArrayList<>(); - HistoricProcessInstanceQuery query = QueryUtils.hisInstanceQuery(); - query.startedBy(String.valueOf(LoginHelper.getUserId())); - if (StringUtils.isNotBlank(bo.getName())) { - query.processInstanceNameLikeIgnoreCase("%" + bo.getName() + "%"); - } - if (StringUtils.isNotBlank(bo.getKey())) { - query.processDefinitionKey(bo.getKey()); - } - if (StringUtils.isNotBlank(bo.getBusinessKey())) { - query.processInstanceBusinessKey(bo.getBusinessKey()); - } - if (StringUtils.isNotBlank(bo.getCategoryCode())) { - query.processDefinitionCategory(bo.getCategoryCode()); - } - query.orderByProcessInstanceStartTime().desc(); - List historicProcessInstanceList = query.listPage(pageQuery.getFirstNum(), pageQuery.getPageSize()); - List taskVoList = new ArrayList<>(); - if (CollUtil.isNotEmpty(historicProcessInstanceList)) { - List processInstanceIds = StreamUtils.toList(historicProcessInstanceList, HistoricProcessInstance::getId); - List taskList = QueryUtils.taskQuery(processInstanceIds).list(); - for (Task task : taskList) { - taskVoList.add(BeanUtil.toBean(task, TaskVo.class)); - } - } - for (HistoricProcessInstance processInstance : historicProcessInstanceList) { - ProcessInstanceVo processInstanceVo = BeanUtil.toBean(processInstance, ProcessInstanceVo.class); - processInstanceVo.setBusinessStatusName(BusinessStatusEnum.findByStatus(processInstance.getBusinessStatus())); - if (CollUtil.isNotEmpty(taskVoList)) { - List collect = StreamUtils.filter(taskVoList, e -> e.getProcessInstanceId().equals(processInstance.getId())); - processInstanceVo.setTaskVoList(CollUtil.isNotEmpty(collect) ? collect : Collections.emptyList()); - } - list.add(processInstanceVo); - } - if (CollUtil.isNotEmpty(list)) { - List processDefinitionIds = StreamUtils.toList(list, ProcessInstanceVo::getProcessDefinitionId); - List wfNodeConfigVoList = wfNodeConfigService.selectByDefIds(processDefinitionIds); - for (ProcessInstanceVo processInstanceVo : list) { - if (CollUtil.isNotEmpty(wfNodeConfigVoList)) { - wfNodeConfigVoList.stream().filter(e -> e.getDefinitionId().equals(processInstanceVo.getProcessDefinitionId()) && FlowConstant.TRUE.equals(e.getApplyUserTask())).findFirst().ifPresent(processInstanceVo::setWfNodeConfigVo); - } - } - } - long count = query.count(); - TableDataInfo build = TableDataInfo.build(); - build.setRows(list); - build.setTotal(count); - return build; - } - - /** - * 任务催办(给当前任务办理人发送站内信,邮件,短信等) - * - * @param taskUrgingBo 任务催办 - */ - @Override - @Transactional(rollbackFor = Exception.class) - public boolean taskUrging(TaskUrgingBo taskUrgingBo) { - try { - ProcessInstance processInstance = QueryUtils.instanceQuery(taskUrgingBo.getProcessInstanceId()).singleResult(); - if (processInstance == null) { - throw new ServiceException("任务已结束!"); - } - String message = taskUrgingBo.getMessage(); - if (StringUtils.isBlank(message)) { - message = "您的【" + processInstance.getName() + "】单据还未审批,请您及时处理。"; - } - List list = QueryUtils.taskQuery(taskUrgingBo.getProcessInstanceId()).list(); - WorkflowUtils.sendMessage(list, processInstance.getName(), taskUrgingBo.getMessageType(), message, userService); - } catch (ServiceException e) { - throw new ServiceException(e.getMessage()); - } - return true; - } -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActTaskServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActTaskServiceImpl.java deleted file mode 100644 index d9a674a78..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActTaskServiceImpl.java +++ /dev/null @@ -1,861 +0,0 @@ -package org.dromara.workflow.service.impl; - -import cn.hutool.core.bean.BeanUtil; -import cn.hutool.core.collection.CollUtil; -import cn.hutool.core.util.ObjectUtil; -import cn.hutool.core.util.StrUtil; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import lombok.RequiredArgsConstructor; -import lombok.extern.slf4j.Slf4j; -import org.dromara.common.core.domain.dto.RoleDTO; -import org.dromara.common.core.domain.dto.UserDTO; -import org.dromara.common.core.exception.ServiceException; -import org.dromara.common.core.service.OssService; -import org.dromara.common.core.service.UserService; -import org.dromara.common.core.utils.StreamUtils; -import org.dromara.common.core.utils.StringUtils; -import org.dromara.common.mybatis.core.page.PageQuery; -import org.dromara.common.mybatis.core.page.TableDataInfo; -import org.dromara.common.satoken.utils.LoginHelper; -import org.dromara.common.tenant.helper.TenantHelper; -import org.dromara.workflow.common.constant.FlowConstant; -import org.dromara.common.core.enums.BusinessStatusEnum; -import org.dromara.workflow.common.enums.TaskStatusEnum; -import org.dromara.workflow.domain.ActHiTaskinst; -import org.dromara.workflow.domain.WfTaskBackNode; -import org.dromara.workflow.domain.bo.*; -import org.dromara.workflow.domain.vo.*; -import org.dromara.workflow.flowable.cmd.*; -import org.dromara.workflow.flowable.handler.FlowProcessEventHandler; -import org.dromara.workflow.mapper.ActHiTaskinstMapper; -import org.dromara.workflow.mapper.ActTaskMapper; -import org.dromara.workflow.service.IActTaskService; -import org.dromara.workflow.service.IWfDefinitionConfigService; -import org.dromara.workflow.service.IWfNodeConfigService; -import org.dromara.workflow.service.IWfTaskBackNodeService; -import org.dromara.workflow.utils.ModelUtils; -import org.dromara.workflow.utils.QueryUtils; -import org.dromara.workflow.utils.WorkflowUtils; -import org.flowable.common.engine.api.FlowableObjectNotFoundException; -import org.flowable.common.engine.impl.identity.Authentication; -import org.flowable.engine.*; -import org.flowable.engine.history.HistoricProcessInstance; -import org.flowable.engine.history.HistoricProcessInstanceQuery; -import org.flowable.engine.impl.bpmn.behavior.ParallelMultiInstanceBehavior; -import org.flowable.engine.impl.bpmn.behavior.SequentialMultiInstanceBehavior; -import org.flowable.engine.impl.persistence.entity.ExecutionEntity; -import org.flowable.engine.runtime.ProcessInstance; -import org.flowable.identitylink.api.history.HistoricIdentityLink; -import org.flowable.task.api.Task; -import org.flowable.task.api.TaskQuery; -import org.flowable.task.api.history.HistoricTaskInstance; -import org.flowable.task.service.impl.persistence.entity.TaskEntity; -import org.flowable.variable.api.persistence.entity.VariableInstance; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.scheduling.annotation.Async; -import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; - -import java.util.*; -import java.util.stream.Collectors; - -import static org.dromara.workflow.common.constant.FlowConstant.*; - -/** - * 任务 服务层实现 - * - * @author may - */ -@Slf4j -@RequiredArgsConstructor -@Service -public class ActTaskServiceImpl implements IActTaskService { - - @Autowired(required = false) - private RuntimeService runtimeService; - @Autowired(required = false) - private TaskService taskService; - @Autowired(required = false) - private HistoryService historyService; - @Autowired(required = false) - private IdentityService identityService; - @Autowired(required = false) - private ManagementService managementService; - private final ActTaskMapper actTaskMapper; - private final IWfTaskBackNodeService wfTaskBackNodeService; - private final ActHiTaskinstMapper actHiTaskinstMapper; - private final IWfNodeConfigService wfNodeConfigService; - private final IWfDefinitionConfigService wfDefinitionConfigService; - private final FlowProcessEventHandler flowProcessEventHandler; - private final UserService userService; - private final OssService ossService; - - /** - * 启动任务 - * - * @param startProcessBo 启动流程参数 - */ - @Override - @Transactional(rollbackFor = Exception.class) - public Map startWorkFlow(StartProcessBo startProcessBo) { - Map map = new HashMap<>(); - if (StringUtils.isBlank(startProcessBo.getBusinessKey())) { - throw new ServiceException("启动工作流时必须包含业务ID"); - } - // 判断当前业务是否启动过流程 - HistoricProcessInstanceQuery query = QueryUtils.hisInstanceQuery(); - HistoricProcessInstance historicProcessInstance = query.processInstanceBusinessKey(startProcessBo.getBusinessKey()).singleResult(); - if (ObjectUtil.isNotEmpty(historicProcessInstance)) { - BusinessStatusEnum.checkStartStatus(historicProcessInstance.getBusinessStatus()); - } - List taskResult = QueryUtils.taskQuery().processInstanceBusinessKey(startProcessBo.getBusinessKey()).list(); - if (CollUtil.isNotEmpty(taskResult)) { - if (CollUtil.isNotEmpty(startProcessBo.getVariables())) { - taskService.setVariables(taskResult.get(0).getId(), startProcessBo.getVariables()); - } - map.put(PROCESS_INSTANCE_ID, taskResult.get(0).getProcessInstanceId()); - map.put("taskId", taskResult.get(0).getId()); - return map; - } - WfDefinitionConfigVo wfDefinitionConfigVo = wfDefinitionConfigService.getByTableNameLastVersion(startProcessBo.getTableName()); - if (wfDefinitionConfigVo == null) { - throw new ServiceException("请到流程定义绑定业务表名与流程KEY!"); - } - // 设置启动人 - identityService.setAuthenticatedUserId(String.valueOf(LoginHelper.getUserId())); - Authentication.setAuthenticatedUserId(String.valueOf(LoginHelper.getUserId())); - // 启动流程实例(提交申请) - Map variables = startProcessBo.getVariables(); - // 启动跳过表达式 - variables.put(FLOWABLE_SKIP_EXPRESSION_ENABLED, true); - // 流程发起人 - variables.put(INITIATOR, (String.valueOf(LoginHelper.getUserId()))); - ProcessInstance pi; - try { - if (TenantHelper.isEnable()) { - pi = runtimeService.startProcessInstanceByKeyAndTenantId(wfDefinitionConfigVo.getProcessKey(), startProcessBo.getBusinessKey(), variables, TenantHelper.getTenantId()); - } else { - pi = runtimeService.startProcessInstanceByKey(wfDefinitionConfigVo.getProcessKey(), startProcessBo.getBusinessKey(), variables); - } - } catch (FlowableObjectNotFoundException e) { - throw new ServiceException("找不到当前【" + wfDefinitionConfigVo.getProcessKey() + "】流程定义!"); - } - // 将流程定义名称 作为 流程实例名称 - runtimeService.setProcessInstanceName(pi.getProcessInstanceId(), pi.getProcessDefinitionName()); - // 申请人执行流程 - List taskList = QueryUtils.taskQuery(pi.getId()).list(); - if (taskList.size() > 1) { - throw new ServiceException("请检查流程第一个环节是否为申请人!"); - } - - runtimeService.updateBusinessStatus(pi.getProcessInstanceId(), BusinessStatusEnum.DRAFT.getStatus()); - taskService.setAssignee(taskList.get(0).getId(), LoginHelper.getUserId().toString()); - taskService.setVariable(taskList.get(0).getId(), PROCESS_INSTANCE_ID, pi.getProcessInstanceId()); - taskService.setVariable(taskList.get(0).getId(), BUSINESS_KEY, pi.getBusinessKey()); - map.put("processInstanceId", pi.getProcessInstanceId()); - map.put("taskId", taskList.get(0).getId()); - return map; - } - - /** - * 办理任务 - * - * @param completeTaskBo 办理任务参数 - */ - @Override - @Transactional(rollbackFor = Exception.class) - public boolean completeTask(CompleteTaskBo completeTaskBo) { - try { - String userId = String.valueOf(LoginHelper.getUserId()); - Task task = WorkflowUtils.getTaskByCurrentUser(completeTaskBo.getTaskId()); - if (task == null) { - throw new ServiceException(FlowConstant.MESSAGE_CURRENT_TASK_IS_NULL); - } - if (task.isSuspended()) { - throw new ServiceException(FlowConstant.MESSAGE_SUSPENDED); - } - ProcessInstance processInstance = QueryUtils.instanceQuery(task.getProcessInstanceId()).singleResult(); - //办理委托任务 - if (ObjectUtil.isNotEmpty(task.getDelegationState()) && FlowConstant.PENDING.equals(task.getDelegationState().name())) { - taskService.resolveTask(completeTaskBo.getTaskId()); - TaskEntity newTask = WorkflowUtils.createNewTask(task); - taskService.addComment(newTask.getId(), task.getProcessInstanceId(), TaskStatusEnum.PASS.getStatus(), StringUtils.isNotBlank(completeTaskBo.getMessage()) ? completeTaskBo.getMessage() : StrUtil.EMPTY); - taskService.complete(newTask.getId()); - return true; - } - //附件上传 - AttachmentCmd attachmentCmd = new AttachmentCmd(completeTaskBo.getFileId(), task.getId(), task.getProcessInstanceId(), ossService); - managementService.executeCommand(attachmentCmd); - String businessStatus = WorkflowUtils.getBusinessStatus(processInstance.getBusinessKey()); - //流程提交监听 - if (BusinessStatusEnum.DRAFT.getStatus().equals(businessStatus) || BusinessStatusEnum.BACK.getStatus().equals(businessStatus) || BusinessStatusEnum.CANCEL.getStatus().equals(businessStatus)) { - flowProcessEventHandler.processHandler(processInstance.getProcessDefinitionKey(), processInstance.getBusinessKey(), businessStatus, true); - } - runtimeService.updateBusinessStatus(task.getProcessInstanceId(), BusinessStatusEnum.WAITING.getStatus()); - //办理监听 - flowProcessEventHandler.processTaskHandler(processInstance.getProcessDefinitionKey(), task.getTaskDefinitionKey(), - task.getId(), processInstance.getBusinessKey()); - //办理意见 - taskService.addComment(completeTaskBo.getTaskId(), task.getProcessInstanceId(), TaskStatusEnum.PASS.getStatus(), StringUtils.isBlank(completeTaskBo.getMessage()) ? "同意" : completeTaskBo.getMessage()); - //办理任务 - taskService.setAssignee(task.getId(), userId); - if (CollUtil.isNotEmpty(completeTaskBo.getVariables())) { - taskService.complete(completeTaskBo.getTaskId(), completeTaskBo.getVariables()); - } else { - taskService.complete(completeTaskBo.getTaskId()); - } - //记录执行过的流程任务节点 - wfTaskBackNodeService.recordExecuteNode(task); - ProcessInstance pi = QueryUtils.instanceQuery(task.getProcessInstanceId()).singleResult(); - if (pi == null) { - UpdateBusinessStatusCmd updateBusinessStatusCmd = new UpdateBusinessStatusCmd(task.getProcessInstanceId(), BusinessStatusEnum.FINISH.getStatus()); - managementService.executeCommand(updateBusinessStatusCmd); - flowProcessEventHandler.processHandler(processInstance.getProcessDefinitionKey(), processInstance.getBusinessKey(), - BusinessStatusEnum.FINISH.getStatus(), false); - } else { - List list = QueryUtils.taskQuery(task.getProcessInstanceId()).list(); - for (Task t : list) { - if (ModelUtils.isUserTask(t.getProcessDefinitionId(), t.getTaskDefinitionKey())) { - List links = historyService.getHistoricIdentityLinksForTask(t.getId()); - if (CollUtil.isEmpty(links) && StringUtils.isBlank(t.getAssignee())) { - throw new ServiceException("下一节点【" + t.getName() + "】没有办理人!"); - } - } - } - - if (CollUtil.isNotEmpty(list) && CollUtil.isNotEmpty(completeTaskBo.getWfCopyList())) { - TaskEntity newTask = WorkflowUtils.createNewTask(task); - taskService.addComment(newTask.getId(), task.getProcessInstanceId(), TaskStatusEnum.COPY.getStatus(), LoginHelper.getLoginUser().getNickname() + "【抄送】给" + String.join(",", StreamUtils.toList(completeTaskBo.getWfCopyList(), WfCopy::getUserName))); - taskService.complete(newTask.getId()); - List taskList = QueryUtils.taskQuery(task.getProcessInstanceId()).list(); - WorkflowUtils.createCopyTask(taskList, StreamUtils.toList(completeTaskBo.getWfCopyList(), WfCopy::getUserId)); - } - sendMessage(list, processInstance.getName(), completeTaskBo.getMessageType(), null); - } - return true; - } catch (Exception e) { - log.error(e.getMessage(), e); - throw new ServiceException(e.getMessage()); - } - } - - /** - * 发送消息 - * - * @param list 任务 - * @param name 流程名称 - * @param messageType 消息类型 - * @param message 消息内容,为空则发送默认配置的消息内容 - */ - @Async - public void sendMessage(List list, String name, List messageType, String message) { - WorkflowUtils.sendMessage(list, name, messageType, message, userService); - } - - /** - * 查询当前用户的待办任务 - * - * @param taskBo 参数 - */ - @Override - public TableDataInfo getPageByTaskWait(TaskBo taskBo, PageQuery pageQuery) { - QueryWrapper queryWrapper = new QueryWrapper<>(); - List roles = LoginHelper.getLoginUser().getRoles(); - List roleIds = StreamUtils.toList(roles, e -> String.valueOf(e.getRoleId())); - String userId = String.valueOf(LoginHelper.getUserId()); - queryWrapper.eq("t.business_status_", BusinessStatusEnum.WAITING.getStatus()); - queryWrapper.eq(TenantHelper.isEnable(), "t.tenant_id_", TenantHelper.getTenantId()); - String ids = StreamUtils.join(roleIds, x -> "'" + x + "'"); - queryWrapper.and(w1 -> w1.eq("t.assignee_", userId).or(w2 -> w2.isNull("t.assignee_").apply("exists ( select LINK.ID_ from ACT_RU_IDENTITYLINK LINK where LINK.TASK_ID_ = t.ID_ and LINK.TYPE_ = 'candidate' and (LINK.USER_ID_ = {0} or ( LINK.GROUP_ID_ IN (" + ids + ") ) ))", userId))); - if (StringUtils.isNotBlank(taskBo.getName())) { - queryWrapper.like("t.name_", taskBo.getName()); - } - if (StringUtils.isNotBlank(taskBo.getProcessDefinitionName())) { - queryWrapper.like("t.processDefinitionName", taskBo.getProcessDefinitionName()); - } - if (StringUtils.isNotBlank(taskBo.getProcessDefinitionKey())) { - queryWrapper.eq("t.processDefinitionKey", taskBo.getProcessDefinitionKey()); - } - queryWrapper.orderByDesc("t.CREATE_TIME_"); - Page page = actTaskMapper.getTaskWaitByPage(pageQuery.build(), queryWrapper); - - List taskList = page.getRecords(); - if (CollUtil.isNotEmpty(taskList)) { - List processDefinitionIds = StreamUtils.toList(taskList, TaskVo::getProcessDefinitionId); - List wfNodeConfigVoList = wfNodeConfigService.selectByDefIds(processDefinitionIds); - for (TaskVo task : taskList) { - task.setBusinessStatusName(BusinessStatusEnum.findByStatus(task.getBusinessStatus())); - task.setParticipantVo(WorkflowUtils.getCurrentTaskParticipant(task.getId(), userService)); - task.setMultiInstance(WorkflowUtils.isMultiInstance(task.getProcessDefinitionId(), task.getTaskDefinitionKey()) != null); - if (CollUtil.isNotEmpty(wfNodeConfigVoList)) { - wfNodeConfigVoList.stream().filter(e -> e.getDefinitionId().equals(task.getProcessDefinitionId()) && FlowConstant.TRUE.equals(e.getApplyUserTask())).findFirst().ifPresent(task::setWfNodeConfigVo); - wfNodeConfigVoList.stream().filter(e -> e.getDefinitionId().equals(task.getProcessDefinitionId()) && e.getNodeId().equals(task.getTaskDefinitionKey()) && FlowConstant.FALSE.equals(e.getApplyUserTask())).findFirst().ifPresent(task::setWfNodeConfigVo); - } - } - } - return TableDataInfo.build(page); - } - - /** - * 查询当前租户所有待办任务 - * - * @param taskBo 参数 - */ - @Override - public TableDataInfo getPageByAllTaskWait(TaskBo taskBo, PageQuery pageQuery) { - TaskQuery query = QueryUtils.taskQuery(); - if (StringUtils.isNotBlank(taskBo.getName())) { - query.taskNameLike("%" + taskBo.getName() + "%"); - } - if (StringUtils.isNotBlank(taskBo.getProcessDefinitionName())) { - query.processDefinitionNameLike("%" + taskBo.getProcessDefinitionName() + "%"); - } - if (StringUtils.isNotBlank(taskBo.getProcessDefinitionKey())) { - query.processDefinitionKey(taskBo.getProcessDefinitionKey()); - } - query.orderByTaskCreateTime().desc(); - List taskList = query.listPage(pageQuery.getFirstNum(), pageQuery.getPageSize()); - List processInstanceList = null; - if (CollUtil.isNotEmpty(taskList)) { - Set processInstanceIds = StreamUtils.toSet(taskList, Task::getProcessInstanceId); - processInstanceList = QueryUtils.instanceQuery(processInstanceIds).list(); - } - List list = new ArrayList<>(); - if (CollUtil.isNotEmpty(taskList)) { - List processDefinitionIds = StreamUtils.toList(taskList, Task::getProcessDefinitionId); - List wfNodeConfigVoList = wfNodeConfigService.selectByDefIds(processDefinitionIds); - for (Task task : taskList) { - TaskVo taskVo = BeanUtil.toBean(task, TaskVo.class); - if (CollUtil.isNotEmpty(processInstanceList)) { - processInstanceList.stream().filter(e -> e.getId().equals(task.getProcessInstanceId())).findFirst().ifPresent(e -> { - taskVo.setBusinessStatus(e.getBusinessStatus()); - taskVo.setBusinessStatusName(BusinessStatusEnum.findByStatus(taskVo.getBusinessStatus())); - taskVo.setProcessDefinitionKey(e.getProcessDefinitionKey()); - taskVo.setProcessDefinitionName(e.getProcessDefinitionName()); - taskVo.setProcessDefinitionVersion(e.getProcessDefinitionVersion()); - taskVo.setBusinessKey(e.getBusinessKey()); - }); - } - taskVo.setAssignee(StringUtils.isNotBlank(task.getAssignee()) ? Long.valueOf(task.getAssignee()) : null); - taskVo.setParticipantVo(WorkflowUtils.getCurrentTaskParticipant(task.getId(), userService)); - taskVo.setMultiInstance(WorkflowUtils.isMultiInstance(task.getProcessDefinitionId(), task.getTaskDefinitionKey()) != null); - if (CollUtil.isNotEmpty(wfNodeConfigVoList)) { - wfNodeConfigVoList.stream().filter(e -> e.getDefinitionId().equals(task.getProcessDefinitionId()) && FlowConstant.TRUE.equals(e.getApplyUserTask())).findFirst().ifPresent(taskVo::setWfNodeConfigVo); - wfNodeConfigVoList.stream().filter(e -> e.getDefinitionId().equals(task.getProcessDefinitionId()) && e.getNodeId().equals(task.getTaskDefinitionKey()) && FlowConstant.FALSE.equals(e.getApplyUserTask())).findFirst().ifPresent(taskVo::setWfNodeConfigVo); - } - list.add(taskVo); - } - } - long count = query.count(); - TableDataInfo build = TableDataInfo.build(); - build.setRows(list); - build.setTotal(count); - return build; - } - - /** - * 查询当前用户的已办任务 - * - * @param taskBo 参数 - */ - @Override - public TableDataInfo getPageByTaskFinish(TaskBo taskBo, PageQuery pageQuery) { - String userId = String.valueOf(LoginHelper.getUserId()); - QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.like(StringUtils.isNotBlank(taskBo.getName()), "t.name_", taskBo.getName()); - queryWrapper.like(StringUtils.isNotBlank(taskBo.getProcessDefinitionName()), "t.processDefinitionName", taskBo.getProcessDefinitionName()); - queryWrapper.eq(StringUtils.isNotBlank(taskBo.getProcessDefinitionKey()), "t.processDefinitionKey", taskBo.getProcessDefinitionKey()); - queryWrapper.eq("t.assignee_", userId); - queryWrapper.orderByDesc("t.START_TIME_"); - Page page = actTaskMapper.getTaskFinishByPage(pageQuery.build(), queryWrapper); - - List taskList = page.getRecords(); - if (CollUtil.isNotEmpty(taskList)) { - List processDefinitionIds = StreamUtils.toList(taskList, TaskVo::getProcessDefinitionId); - List wfNodeConfigVoList = wfNodeConfigService.selectByDefIds(processDefinitionIds); - for (TaskVo task : taskList) { - task.setBusinessStatusName(BusinessStatusEnum.findByStatus(task.getBusinessStatus())); - if (CollUtil.isNotEmpty(wfNodeConfigVoList)) { - wfNodeConfigVoList.stream().filter(e -> e.getDefinitionId().equals(task.getProcessDefinitionId()) && FlowConstant.TRUE.equals(e.getApplyUserTask())).findFirst().ifPresent(task::setWfNodeConfigVo); - wfNodeConfigVoList.stream().filter(e -> e.getDefinitionId().equals(task.getProcessDefinitionId()) && e.getNodeId().equals(task.getTaskDefinitionKey()) && FlowConstant.FALSE.equals(e.getApplyUserTask())).findFirst().ifPresent(task::setWfNodeConfigVo); - } - } - } - return TableDataInfo.build(page); - } - - /** - * 查询当前用户的抄送 - * - * @param taskBo 参数 - */ - @Override - public TableDataInfo getPageByTaskCopy(TaskBo taskBo, PageQuery pageQuery) { - QueryWrapper queryWrapper = new QueryWrapper<>(); - String userId = String.valueOf(LoginHelper.getUserId()); - if (StringUtils.isNotBlank(taskBo.getName())) { - queryWrapper.like("t.name_", taskBo.getName()); - } - if (StringUtils.isNotBlank(taskBo.getProcessDefinitionName())) { - queryWrapper.like("t.processDefinitionName", taskBo.getProcessDefinitionName()); - } - if (StringUtils.isNotBlank(taskBo.getProcessDefinitionKey())) { - queryWrapper.eq("t.processDefinitionKey", taskBo.getProcessDefinitionKey()); - } - queryWrapper.eq("t.assignee_", userId); - queryWrapper.orderByDesc("t.START_TIME_"); - Page page = actTaskMapper.getTaskCopyByPage(pageQuery.build(), queryWrapper); - - List taskList = page.getRecords(); - if (CollUtil.isNotEmpty(taskList)) { - List processDefinitionIds = StreamUtils.toList(taskList, TaskVo::getProcessDefinitionId); - List wfNodeConfigVoList = wfNodeConfigService.selectByDefIds(processDefinitionIds); - for (TaskVo task : taskList) { - task.setBusinessStatusName(BusinessStatusEnum.findByStatus(task.getBusinessStatus())); - if (CollUtil.isNotEmpty(wfNodeConfigVoList)) { - wfNodeConfigVoList.stream().filter(e -> e.getDefinitionId().equals(task.getProcessDefinitionId()) && FlowConstant.TRUE.equals(e.getApplyUserTask())).findFirst().ifPresent(task::setWfNodeConfigVo); - wfNodeConfigVoList.stream().filter(e -> e.getDefinitionId().equals(task.getProcessDefinitionId()) && e.getNodeId().equals(task.getTaskDefinitionKey()) && FlowConstant.FALSE.equals(e.getApplyUserTask())).findFirst().ifPresent(task::setWfNodeConfigVo); - } - } - } - return TableDataInfo.build(page); - } - - /** - * 查询当前租户所有已办任务 - * - * @param taskBo 参数 - */ - @Override - public TableDataInfo getPageByAllTaskFinish(TaskBo taskBo, PageQuery pageQuery) { - QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.like(StringUtils.isNotBlank(taskBo.getName()), "t.name_", taskBo.getName()); - queryWrapper.like(StringUtils.isNotBlank(taskBo.getProcessDefinitionName()), "t.processDefinitionName", taskBo.getProcessDefinitionName()); - queryWrapper.eq(StringUtils.isNotBlank(taskBo.getProcessDefinitionKey()), "t.processDefinitionKey", taskBo.getProcessDefinitionKey()); - Page page = actTaskMapper.getTaskFinishByPage(pageQuery.build(), queryWrapper); - - List taskList = page.getRecords(); - if (CollUtil.isNotEmpty(taskList)) { - List processDefinitionIds = StreamUtils.toList(taskList, TaskVo::getProcessDefinitionId); - List wfNodeConfigVoList = wfNodeConfigService.selectByDefIds(processDefinitionIds); - for (TaskVo task : taskList) { - task.setBusinessStatusName(BusinessStatusEnum.findByStatus(task.getBusinessStatus())); - if (CollUtil.isNotEmpty(wfNodeConfigVoList)) { - wfNodeConfigVoList.stream().filter(e -> e.getDefinitionId().equals(task.getProcessDefinitionId()) && FlowConstant.TRUE.equals(e.getApplyUserTask())).findFirst().ifPresent(task::setWfNodeConfigVo); - wfNodeConfigVoList.stream().filter(e -> e.getDefinitionId().equals(task.getProcessDefinitionId()) && e.getNodeId().equals(task.getTaskDefinitionKey()) && FlowConstant.FALSE.equals(e.getApplyUserTask())).findFirst().ifPresent(task::setWfNodeConfigVo); - } - } - } - return TableDataInfo.build(page); - } - - /** - * 委派任务 - * - * @param delegateBo 参数 - */ - @Override - @Transactional(rollbackFor = Exception.class) - public boolean delegateTask(DelegateBo delegateBo) { - Task task = WorkflowUtils.getTaskByCurrentUser(delegateBo.getTaskId()); - - if (ObjectUtil.isEmpty(task)) { - throw new ServiceException(FlowConstant.MESSAGE_CURRENT_TASK_IS_NULL); - } - if (task.isSuspended()) { - throw new ServiceException(FlowConstant.MESSAGE_SUSPENDED); - } - try { - TaskEntity newTask = WorkflowUtils.createNewTask(task); - taskService.addComment(newTask.getId(), task.getProcessInstanceId(), TaskStatusEnum.PENDING.getStatus(), "【" + LoginHelper.getLoginUser().getNickname() + "】委派给【" + delegateBo.getNickName() + "】"); - //委托任务 - taskService.delegateTask(delegateBo.getTaskId(), delegateBo.getUserId()); - //办理生成的任务记录 - taskService.complete(newTask.getId()); - return true; - } catch (Exception e) { - log.error(e.getMessage(), e); - throw new ServiceException(e.getMessage()); - } - } - - /** - * 终止任务 - * - * @param terminationBo 参数 - */ - @Override - @Transactional(rollbackFor = Exception.class) - public boolean terminationTask(TerminationBo terminationBo) { - TaskQuery query = QueryUtils.taskQuery(); - Task task = query.taskId(terminationBo.getTaskId()).singleResult(); - - if (ObjectUtil.isEmpty(task)) { - throw new ServiceException(FlowConstant.MESSAGE_CURRENT_TASK_IS_NULL); - } - if (task.isSuspended()) { - throw new ServiceException(FlowConstant.MESSAGE_SUSPENDED); - } - HistoricProcessInstance historicProcessInstance = QueryUtils.hisInstanceQuery().processInstanceId(task.getProcessInstanceId()).singleResult(); - BusinessStatusEnum.checkInvalidStatus(historicProcessInstance.getBusinessStatus()); - try { - if (StringUtils.isBlank(terminationBo.getComment())) { - terminationBo.setComment(LoginHelper.getLoginUser().getNickname() + "终止了申请"); - } else { - terminationBo.setComment(LoginHelper.getLoginUser().getNickname() + "终止了申请:" + terminationBo.getComment()); - } - taskService.addComment(task.getId(), task.getProcessInstanceId(), TaskStatusEnum.TERMINATION.getStatus(), terminationBo.getComment()); - List list = QueryUtils.taskQuery(task.getProcessInstanceId()).list(); - if (CollUtil.isNotEmpty(list)) { - List subTasks = StreamUtils.filter(list, e -> StringUtils.isNotBlank(e.getParentTaskId())); - if (CollUtil.isNotEmpty(subTasks)) { - subTasks.forEach(e -> taskService.deleteTask(e.getId())); - } - runtimeService.updateBusinessStatus(task.getProcessInstanceId(), BusinessStatusEnum.TERMINATION.getStatus()); - runtimeService.deleteProcessInstance(task.getProcessInstanceId(), StrUtil.EMPTY); - } - //流程终止监听 - flowProcessEventHandler.processHandler(historicProcessInstance.getProcessDefinitionKey(), - historicProcessInstance.getBusinessKey(), BusinessStatusEnum.TERMINATION.getStatus(), false); - return true; - } catch (Exception e) { - throw new ServiceException(e.getMessage()); - } - } - - /** - * 转办任务 - * - * @param transmitBo 参数 - */ - @Override - public boolean transferTask(TransmitBo transmitBo) { - Task task = WorkflowUtils.getTaskByCurrentUser(transmitBo.getTaskId()); - if (ObjectUtil.isEmpty(task)) { - throw new ServiceException(FlowConstant.MESSAGE_CURRENT_TASK_IS_NULL); - } - if (task.isSuspended()) { - throw new ServiceException(FlowConstant.MESSAGE_SUSPENDED); - } - try { - TaskEntity newTask = WorkflowUtils.createNewTask(task); - taskService.addComment(newTask.getId(), task.getProcessInstanceId(), TaskStatusEnum.TRANSFER.getStatus(), StringUtils.isNotBlank(transmitBo.getComment()) ? transmitBo.getComment() : LoginHelper.getUsername() + "转办了任务"); - taskService.complete(newTask.getId()); - taskService.setAssignee(task.getId(), transmitBo.getUserId()); - return true; - } catch (Exception e) { - log.error(e.getMessage(), e); - throw new ServiceException(e.getMessage()); - } - } - - /** - * 会签任务加签 - * - * @param addMultiBo 参数 - */ - @Override - public boolean addMultiInstanceExecution(AddMultiBo addMultiBo) { - TaskQuery taskQuery = QueryUtils.taskQuery(); - taskQuery.taskId(addMultiBo.getTaskId()); - if (!LoginHelper.isSuperAdmin() && !LoginHelper.isTenantAdmin()) { - taskQuery.taskCandidateOrAssigned(String.valueOf(LoginHelper.getUserId())); - } - Task task = taskQuery.singleResult(); - if (ObjectUtil.isEmpty(task)) { - throw new ServiceException(FlowConstant.MESSAGE_CURRENT_TASK_IS_NULL); - } - if (task.isSuspended()) { - throw new ServiceException(FlowConstant.MESSAGE_SUSPENDED); - } - String taskDefinitionKey = task.getTaskDefinitionKey(); - String processInstanceId = task.getProcessInstanceId(); - String processDefinitionId = task.getProcessDefinitionId(); - - try { - MultiInstanceVo multiInstanceVo = WorkflowUtils.isMultiInstance(processDefinitionId, taskDefinitionKey); - if (multiInstanceVo == null) { - throw new ServiceException("当前环节不是会签节点"); - } - if (multiInstanceVo.getType() instanceof ParallelMultiInstanceBehavior) { - for (Long assignee : addMultiBo.getAssignees()) { - runtimeService.addMultiInstanceExecution(taskDefinitionKey, processInstanceId, Collections.singletonMap(multiInstanceVo.getAssignee(), assignee)); - } - } else if (multiInstanceVo.getType() instanceof SequentialMultiInstanceBehavior) { - AddSequenceMultiInstanceCmd addSequenceMultiInstanceCmd = new AddSequenceMultiInstanceCmd(task.getExecutionId(), multiInstanceVo.getAssigneeList(), addMultiBo.getAssignees()); - managementService.executeCommand(addSequenceMultiInstanceCmd); - } - List assigneeNames = addMultiBo.getAssigneeNames(); - String username = LoginHelper.getUsername(); - TaskEntity newTask = WorkflowUtils.createNewTask(task); - taskService.addComment(newTask.getId(), processInstanceId, TaskStatusEnum.SIGN.getStatus(), username + "加签【" + String.join(StringUtils.SEPARATOR, assigneeNames) + "】"); - taskService.complete(newTask.getId()); - return true; - } catch (Exception e) { - log.error(e.getMessage(), e); - throw new ServiceException(e.getMessage()); - } - } - - /** - * 会签任务减签 - * - * @param deleteMultiBo 参数 - */ - @Override - public boolean deleteMultiInstanceExecution(DeleteMultiBo deleteMultiBo) { - TaskQuery taskQuery = QueryUtils.taskQuery(); - taskQuery.taskId(deleteMultiBo.getTaskId()); - if (!LoginHelper.isSuperAdmin() && !LoginHelper.isTenantAdmin()) { - taskQuery.taskCandidateOrAssigned(String.valueOf(LoginHelper.getUserId())); - } - Task task = taskQuery.singleResult(); - if (ObjectUtil.isEmpty(task)) { - throw new ServiceException(FlowConstant.MESSAGE_CURRENT_TASK_IS_NULL); - } - if (task.isSuspended()) { - throw new ServiceException(FlowConstant.MESSAGE_SUSPENDED); - } - String taskDefinitionKey = task.getTaskDefinitionKey(); - String processInstanceId = task.getProcessInstanceId(); - String processDefinitionId = task.getProcessDefinitionId(); - try { - MultiInstanceVo multiInstanceVo = WorkflowUtils.isMultiInstance(processDefinitionId, taskDefinitionKey); - if (multiInstanceVo == null) { - throw new ServiceException("当前环节不是会签节点"); - } - if (multiInstanceVo.getType() instanceof ParallelMultiInstanceBehavior) { - for (String executionId : deleteMultiBo.getExecutionIds()) { - runtimeService.deleteMultiInstanceExecution(executionId, false); - } - for (String taskId : deleteMultiBo.getTaskIds()) { - historyService.deleteHistoricTaskInstance(taskId); - } - } else if (multiInstanceVo.getType() instanceof SequentialMultiInstanceBehavior) { - DeleteSequenceMultiInstanceCmd deleteSequenceMultiInstanceCmd = new DeleteSequenceMultiInstanceCmd(task.getAssignee(), task.getExecutionId(), multiInstanceVo.getAssigneeList(), deleteMultiBo.getAssigneeIds()); - managementService.executeCommand(deleteSequenceMultiInstanceCmd); - } - List assigneeNames = deleteMultiBo.getAssigneeNames(); - String username = LoginHelper.getUsername(); - TaskEntity newTask = WorkflowUtils.createNewTask(task); - taskService.addComment(newTask.getId(), processInstanceId, TaskStatusEnum.SIGN_OFF.getStatus(), username + "减签【" + String.join(StringUtils.SEPARATOR, assigneeNames) + "】"); - taskService.complete(newTask.getId()); - return true; - } catch (Exception e) { - log.error(e.getMessage(), e); - throw new ServiceException(e.getMessage()); - } - } - - /** - * 驳回审批 - * - * @param backProcessBo 参数 - */ - @Override - @Transactional(rollbackFor = Exception.class) - public String backProcess(BackProcessBo backProcessBo) { - String userId = String.valueOf(LoginHelper.getUserId()); - Task task = WorkflowUtils.getTaskByCurrentUser(backProcessBo.getTaskId()); - - if (ObjectUtil.isEmpty(task)) { - throw new ServiceException(FlowConstant.MESSAGE_CURRENT_TASK_IS_NULL); - } - if (task.isSuspended()) { - throw new ServiceException(FlowConstant.MESSAGE_SUSPENDED); - } - try { - String processInstanceId = task.getProcessInstanceId(); - ProcessInstance processInstance = QueryUtils.instanceQuery(task.getProcessInstanceId()).singleResult(); - //获取并行网关执行后保留的执行实例数据 - ExecutionChildByExecutionIdCmd childByExecutionIdCmd = new ExecutionChildByExecutionIdCmd(task.getExecutionId()); - List executionEntities = managementService.executeCommand(childByExecutionIdCmd); - //校验单据 - BusinessStatusEnum.checkBackStatus(processInstance.getBusinessStatus()); - //判断是否有多个任务 - List taskList = QueryUtils.taskQuery(processInstanceId).list(); - String backTaskDefinitionKey = backProcessBo.getTargetActivityId(); - taskService.addComment(task.getId(), processInstanceId, TaskStatusEnum.BACK.getStatus(), StringUtils.isNotBlank(backProcessBo.getMessage()) ? backProcessBo.getMessage() : "退回"); - if (taskList.size() > 1) { - //当前多个任务驳回到单个节点 - runtimeService.createChangeActivityStateBuilder().processInstanceId(processInstanceId).moveActivityIdsToSingleActivityId(taskList.stream().map(Task::getTaskDefinitionKey).distinct().collect(Collectors.toList()), backTaskDefinitionKey).changeState(); - ActHiTaskinst actHiTaskinst = new ActHiTaskinst(); - actHiTaskinst.setAssignee(userId); - actHiTaskinst.setId(task.getId()); - actHiTaskinstMapper.updateById(actHiTaskinst); - } else { - //当前单个节点驳回单个节点 - runtimeService.createChangeActivityStateBuilder().processInstanceId(processInstanceId).moveActivityIdTo(task.getTaskDefinitionKey(), backTaskDefinitionKey).changeState(); - } - //删除并行环节未办理记录 - MultiInstanceVo multiInstance = WorkflowUtils.isMultiInstance(task.getProcessDefinitionId(), task.getTaskDefinitionKey()); - if (multiInstance == null && taskList.size() > 1) { - List tasks = StreamUtils.filter(taskList, e -> !e.getTaskDefinitionKey().equals(task.getTaskDefinitionKey())); - if (CollUtil.isNotEmpty(tasks)) { - actHiTaskinstMapper.deleteByIds(StreamUtils.toList(tasks, Task::getId)); - } - } - - - List instanceList = QueryUtils.hisTaskInstanceQuery(processInstanceId).finished().orderByHistoricTaskInstanceEndTime().desc().list(); - List list = QueryUtils.taskQuery(processInstanceId).list(); - for (Task t : list) { - instanceList.stream().filter(e -> e.getTaskDefinitionKey().equals(t.getTaskDefinitionKey())).findFirst().ifPresent(e -> { - taskService.setAssignee(t.getId(), e.getAssignee()); - }); - } - //发送消息 - String message = "您的【" + processInstance.getName() + "】单据已经被驳回,请您注意查收。"; - sendMessage(list, processInstance.getName(), backProcessBo.getMessageType(), message); - //删除流程实例垃圾数据 - for (ExecutionEntity executionEntity : executionEntities) { - DeleteExecutionCmd deleteExecutionCmd = new DeleteExecutionCmd(executionEntity.getId()); - managementService.executeCommand(deleteExecutionCmd); - } - - WfTaskBackNode wfTaskBackNode = wfTaskBackNodeService.getListByInstanceIdAndNodeId(task.getProcessInstanceId(), backProcessBo.getTargetActivityId()); - if (ObjectUtil.isNotNull(wfTaskBackNode) && wfTaskBackNode.getOrderNo() == 0) { - runtimeService.updateBusinessStatus(processInstanceId, BusinessStatusEnum.BACK.getStatus()); - flowProcessEventHandler.processHandler(processInstance.getProcessDefinitionKey(), - processInstance.getBusinessKey(), BusinessStatusEnum.BACK.getStatus(), false); - } - //删除驳回后的流程节点 - wfTaskBackNodeService.deleteBackTaskNode(processInstanceId, backProcessBo.getTargetActivityId()); - } catch (Exception e) { - log.error(e.getMessage(), e); - throw new ServiceException(e.getMessage()); - } - return task.getProcessInstanceId(); - } - - /** - * 修改任务办理人 - * - * @param taskIds 任务id - * @param userId 办理人id - */ - @Override - @Transactional(rollbackFor = Exception.class) - public boolean updateAssignee(String[] taskIds, String userId) { - try { - List list = QueryUtils.taskQuery().taskIds(Arrays.asList(taskIds)).list(); - for (Task task : list) { - taskService.setAssignee(task.getId(), userId); - } - } catch (Exception e) { - log.error("修改失败:" + e.getMessage(), e); - throw new ServiceException("修改失败:" + e.getMessage()); - } - return true; - } - - /** - * 查询流程变量 - * - * @param taskId 任务id - */ - @Override - public List getInstanceVariable(String taskId) { - List variableVoList = new ArrayList<>(); - Map variableInstances = taskService.getVariableInstances(taskId); - if (CollUtil.isNotEmpty(variableInstances)) { - for (Map.Entry entry : variableInstances.entrySet()) { - VariableVo variableVo = new VariableVo(); - variableVo.setKey(entry.getKey()); - variableVo.setValue(entry.getValue().getValue().toString()); - variableVoList.add(variableVo); - } - } - return variableVoList; - } - - /** - * 查询工作流任务用户选择加签人员 - * - * @param taskId 任务id - * @return - */ - @Override - @SuppressWarnings("unchecked") - public String getTaskUserIdsByAddMultiInstance(String taskId) { - Task task = QueryUtils.taskQuery().taskId(taskId).singleResult(); - if (task == null) { - throw new ServiceException("任务不存在"); - } - MultiInstanceVo multiInstance = WorkflowUtils.isMultiInstance(task.getProcessDefinitionId(), task.getTaskDefinitionKey()); - if (multiInstance == null) { - return ""; - } - List userIds; - if (multiInstance.getType() instanceof SequentialMultiInstanceBehavior) { - userIds = (List) runtimeService.getVariable(task.getExecutionId(), multiInstance.getAssigneeList()); - } else { - List list = QueryUtils.taskQuery(task.getProcessInstanceId()).list(); - userIds = StreamUtils.toList(list, e -> Long.valueOf(e.getAssignee())); - } - return StringUtils.join(userIds, StringUtils.SEPARATOR); - } - - /** - * 查询工作流选择减签人员 - * - * @param taskId 任务id 任务id - */ - @Override - @SuppressWarnings("unchecked") - public List getListByDeleteMultiInstance(String taskId) { - Task task = QueryUtils.taskQuery().taskId(taskId).singleResult(); - List taskList = QueryUtils.taskQuery(task.getProcessInstanceId()).list(); - MultiInstanceVo multiInstance = WorkflowUtils.isMultiInstance(task.getProcessDefinitionId(), task.getTaskDefinitionKey()); - List taskListVo = new ArrayList<>(); - if (multiInstance == null) { - return List.of(); - } - List assigneeList = new ArrayList<>(); - if (multiInstance.getType() instanceof SequentialMultiInstanceBehavior) { - List variable = (List) runtimeService.getVariable(task.getExecutionId(), multiInstance.getAssigneeList()); - for (Object o : variable) { - assigneeList.add(Long.valueOf(o.toString())); - } - } - - if (multiInstance.getType() instanceof SequentialMultiInstanceBehavior) { - List userIds = StreamUtils.filter(assigneeList, e -> !String.valueOf(e).equals(task.getAssignee())); - List userList = userService.selectListByIds(userIds); - for (Long userId : userIds) { - TaskVo taskVo = new TaskVo(); - taskVo.setId("串行会签"); - taskVo.setExecutionId("串行会签"); - taskVo.setProcessInstanceId(task.getProcessInstanceId()); - taskVo.setName(task.getName()); - taskVo.setAssignee(userId); - if (CollUtil.isNotEmpty(userList)) { - userList.stream().filter(u -> u.getUserId().toString().equals(userId.toString())).findFirst().ifPresent(u -> taskVo.setAssigneeName(u.getNickName())); - } - taskListVo.add(taskVo); - } - return taskListVo; - } else if (multiInstance.getType() instanceof ParallelMultiInstanceBehavior) { - List tasks = StreamUtils.filter(taskList, e -> StringUtils.isBlank(e.getParentTaskId()) && !e.getExecutionId().equals(task.getExecutionId()) && e.getTaskDefinitionKey().equals(task.getTaskDefinitionKey())); - if (CollUtil.isNotEmpty(tasks)) { - List userIds = StreamUtils.toList(tasks, e -> Long.valueOf(e.getAssignee())); - List userList = userService.selectListByIds(userIds); - for (Task t : tasks) { - TaskVo taskVo = new TaskVo(); - taskVo.setId(t.getId()); - taskVo.setExecutionId(t.getExecutionId()); - taskVo.setProcessInstanceId(t.getProcessInstanceId()); - taskVo.setName(t.getName()); - taskVo.setAssignee(Long.valueOf(t.getAssignee())); - if (CollUtil.isNotEmpty(userList)) { - userList.stream().filter(u -> u.getUserId().toString().equals(t.getAssignee())).findFirst().ifPresent(e -> taskVo.setAssigneeName(e.getNickName())); - } - taskListVo.add(taskVo); - } - return taskListVo; - } - } - return List.of(); - } -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/CategoryNameTranslationImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/CategoryNameTranslationImpl.java new file mode 100644 index 000000000..4adbadaf7 --- /dev/null +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/CategoryNameTranslationImpl.java @@ -0,0 +1,31 @@ +package org.dromara.workflow.service.impl; + +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.dromara.common.translation.annotation.TranslationType; +import org.dromara.common.translation.core.TranslationInterface; +import org.dromara.workflow.common.constant.FlowConstant; +import org.dromara.workflow.service.IFlwCategoryService; +import org.springframework.stereotype.Service; + +/** + * 流程分类名称翻译实现 + * + * @author AprilWind + */ +@Slf4j +@RequiredArgsConstructor +@Service +@TranslationType(type = FlowConstant.CATEGORY_ID_TO_NAME) +public class CategoryNameTranslationImpl implements TranslationInterface { + + private final IFlwCategoryService flwCategoryService; + + @Override + public String translation(Object key, String other) { + if (key instanceof String categoryId) { + return flwCategoryService.selectCategoryNameById(categoryId); + } + return null; + } +} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwCategoryServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwCategoryServiceImpl.java new file mode 100644 index 000000000..0a5c0bb54 --- /dev/null +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwCategoryServiceImpl.java @@ -0,0 +1,267 @@ +package org.dromara.workflow.service.impl; + +import cn.hutool.core.collection.CollUtil; +import cn.hutool.core.lang.tree.Tree; +import cn.hutool.core.util.ObjectUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import lombok.RequiredArgsConstructor; +import org.dromara.common.core.constant.SystemConstants; +import org.dromara.common.core.exception.ServiceException; +import org.dromara.common.core.utils.*; +import org.dromara.common.mybatis.helper.DataBaseHelper; +import org.dromara.common.satoken.utils.LoginHelper; +import org.dromara.warm.flow.core.service.DefService; +import org.dromara.warm.flow.orm.entity.FlowDefinition; +import org.dromara.workflow.common.constant.FlowConstant; +import org.dromara.workflow.domain.FlowCategory; +import org.dromara.workflow.domain.bo.FlowCategoryBo; +import org.dromara.workflow.domain.vo.FlowCategoryVo; +import org.dromara.workflow.mapper.FlwCategoryMapper; +import org.dromara.workflow.service.IFlwCategoryService; +import org.springframework.cache.annotation.CacheEvict; +import org.springframework.cache.annotation.Cacheable; +import org.springframework.stereotype.Service; + +import java.util.ArrayList; +import java.util.List; + +/** + * 流程分类Service业务层处理 + * + * @author may + */ +@RequiredArgsConstructor +@Service +public class FlwCategoryServiceImpl implements IFlwCategoryService { + + private final FlwCategoryMapper baseMapper; + private final DefService defService; + + /** + * 查询流程分类 + * + * @param categoryId 主键 + * @return 流程分类 + */ + @Override + public FlowCategoryVo queryById(Long categoryId) { + FlowCategoryVo category = baseMapper.selectVoById(categoryId); + if (ObjectUtil.isNull(category)) { + return null; + } + FlowCategoryVo parentCategory = baseMapper.selectVoOne(new LambdaQueryWrapper() + .select(FlowCategory::getCategoryName).eq(FlowCategory::getCategoryId, category.getParentId())); + category.setParentName(ObjectUtils.notNullGetter(parentCategory, FlowCategoryVo::getCategoryName)); + return category; + } + + /** + * 根据流程分类ID查询流程分类名称 + * + * @param categoryId 流程分类ID + * @return 流程分类名称 + */ + @Cacheable(cacheNames = FlowConstant.FLOW_CATEGORY_NAME, key = "#categoryId") + @Override + public String selectCategoryNameById(String categoryId) { + if (StringUtils.isBlank(categoryId)) { + return null; + } + FlowCategory category = baseMapper.selectOne(new LambdaQueryWrapper() + .select(FlowCategory::getCategoryName).eq(FlowCategory::getCategoryId, categoryId)); + return ObjectUtils.notNullGetter(category, FlowCategory::getCategoryName); + } + + /** + * 查询符合条件的流程分类列表 + * + * @param bo 查询条件 + * @return 流程分类列表 + */ + @Override + public List queryList(FlowCategoryBo bo) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + return baseMapper.selectVoList(lqw); + } + + /** + * 查询流程分类树结构信息 + * + * @param category 流程分类信息 + * @return 流程分类树信息集合 + */ + @Override + public List> selectCategoryTreeList(FlowCategoryBo category) { + LambdaQueryWrapper lqw = buildQueryWrapper(category); + List categorys = baseMapper.selectVoList(lqw); + if (CollUtil.isEmpty(categorys)) { + return CollUtil.newArrayList(); + } + // 获取当前列表中每一个节点的parentId,然后在列表中查找是否有id与其parentId对应,若无对应,则表明此时节点列表中,该节点在当前列表中属于顶级节点 + List> treeList = CollUtil.newArrayList(); + for (FlowCategoryVo d : categorys) { + Long parentId = d.getParentId(); + FlowCategoryVo categoryVo = StreamUtils.findFirst(categorys, it -> it.getCategoryId().longValue() == parentId); + if (ObjectUtil.isNull(categoryVo)) { + List> trees = TreeBuildUtils.build(categorys, parentId, (dept, tree) -> + tree.setId(dept.getCategoryId()) + .setParentId(dept.getParentId()) + .setName(dept.getCategoryName()) + .setWeight(dept.getOrderNum())); + Tree tree = StreamUtils.findFirst(trees, it -> it.getId().longValue() == d.getCategoryId()); + treeList.add(tree); + } + } + return treeList; + } + + /** + * 校验流程分类是否有数据权限 + * + * @param categoryId 流程分类ID + */ + @Override + public void checkCategoryDataScope(Long categoryId) { + if (ObjectUtil.isNull(categoryId)) { + return; + } + if (LoginHelper.isSuperAdmin()) { + return; + } + if (baseMapper.countCategoryById(categoryId) == 0) { + throw new ServiceException("没有权限访问流程分类数据!"); + } + } + + /** + * 校验流程分类名称是否唯一 + * + * @param category 流程分类信息 + * @return 结果 + */ + @Override + public boolean checkCategoryNameUnique(FlowCategoryBo category) { + boolean exist = baseMapper.exists(new LambdaQueryWrapper() + .eq(FlowCategory::getCategoryName, category.getCategoryName()) + .eq(FlowCategory::getParentId, category.getParentId()) + .ne(ObjectUtil.isNotNull(category.getCategoryId()), FlowCategory::getCategoryId, category.getCategoryId())); + return !exist; + } + + /** + * 查询流程分类是否存在流程定义 + * + * @param categoryId 流程分类ID + * @return 结果 true 存在 false 不存在 + */ + @Override + public boolean checkCategoryExistDefinition(Long categoryId) { + FlowDefinition definition = new FlowDefinition(); + definition.setCategory(categoryId.toString()); + return defService.exists(definition); + } + + /** + * 是否存在流程分类子节点 + * + * @param categoryId 流程分类ID + * @return 结果 + */ + @Override + public boolean hasChildByCategoryId(Long categoryId) { + return baseMapper.exists(new LambdaQueryWrapper() + .eq(FlowCategory::getParentId, categoryId)); + } + + private LambdaQueryWrapper buildQueryWrapper(FlowCategoryBo bo) { + LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); + lqw.eq(FlowCategory::getDelFlag, SystemConstants.NORMAL); + lqw.eq(ObjectUtil.isNotNull(bo.getCategoryId()), FlowCategory::getCategoryId, bo.getCategoryId()); + lqw.eq(ObjectUtil.isNotNull(bo.getParentId()), FlowCategory::getParentId, bo.getParentId()); + lqw.like(StringUtils.isNotBlank(bo.getCategoryName()), FlowCategory::getCategoryName, bo.getCategoryName()); + lqw.orderByAsc(FlowCategory::getAncestors); + lqw.orderByAsc(FlowCategory::getParentId); + lqw.orderByAsc(FlowCategory::getOrderNum); + lqw.orderByAsc(FlowCategory::getCategoryId); + return lqw; + } + + /** + * 新增流程分类 + * + * @param bo 流程分类 + * @return 是否新增成功 + */ + @Override + public int insertByBo(FlowCategoryBo bo) { + FlowCategory info = baseMapper.selectById(bo.getParentId()); + FlowCategory category = MapstructUtils.convert(bo, FlowCategory.class); + category.setAncestors(info.getAncestors() + StringUtils.SEPARATOR + category.getParentId()); + return baseMapper.insert(category); + } + + /** + * 修改流程分类 + * + * @param bo 流程分类 + * @return 是否修改成功 + */ + @CacheEvict(cacheNames = FlowConstant.FLOW_CATEGORY_NAME, key = "#bo.categoryId") + @Override + public int updateByBo(FlowCategoryBo bo) { + FlowCategory category = MapstructUtils.convert(bo, FlowCategory.class); + FlowCategory oldCategory = baseMapper.selectById(category.getCategoryId()); + if (ObjectUtil.isNull(oldCategory)) { + throw new ServiceException("流程分类不存在,无法修改"); + } + if (!oldCategory.getParentId().equals(category.getParentId())) { + // 如果是新父流程分类 则校验是否具有新父流程分类权限 避免越权 + this.checkCategoryDataScope(category.getParentId()); + FlowCategory newParentCategory = baseMapper.selectById(category.getParentId()); + if (ObjectUtil.isNotNull(newParentCategory)) { + String newAncestors = newParentCategory.getAncestors() + StringUtils.SEPARATOR + newParentCategory.getCategoryId(); + String oldAncestors = oldCategory.getAncestors(); + category.setAncestors(newAncestors); + updateCategoryChildren(category.getCategoryId(), newAncestors, oldAncestors); + } + } else { + category.setAncestors(oldCategory.getAncestors()); + } + return baseMapper.updateById(category); + } + + /** + * 修改子元素关系 + * + * @param categoryId 被修改的流程分类ID + * @param newAncestors 新的父ID集合 + * @param oldAncestors 旧的父ID集合 + */ + private void updateCategoryChildren(Long categoryId, String newAncestors, String oldAncestors) { + List children = baseMapper.selectList(new LambdaQueryWrapper() + .apply(DataBaseHelper.findInSet(categoryId, "ancestors"))); + List list = new ArrayList<>(); + for (FlowCategory child : children) { + FlowCategory category = new FlowCategory(); + category.setCategoryId(child.getCategoryId()); + category.setAncestors(child.getAncestors().replaceFirst(oldAncestors, newAncestors)); + list.add(category); + } + if (CollUtil.isNotEmpty(list)) { + baseMapper.updateBatchById(list); + } + } + + /** + * 删除流程分类信息 + * + * @param categoryId 主键 + * @return 是否删除成功 + */ + @CacheEvict(cacheNames = FlowConstant.FLOW_CATEGORY_NAME, key = "#categoryId") + @Override + public int deleteWithValidById(Long categoryId) { + return baseMapper.deleteById(categoryId); + } +} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwDefinitionServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwDefinitionServiceImpl.java new file mode 100644 index 000000000..baec223fe --- /dev/null +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwDefinitionServiceImpl.java @@ -0,0 +1,275 @@ +package org.dromara.workflow.service.impl; + +import cn.hutool.core.bean.BeanUtil; +import cn.hutool.core.collection.CollUtil; +import cn.hutool.core.convert.Convert; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import jakarta.servlet.http.HttpServletResponse; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.dom4j.Document; +import org.dom4j.io.OutputFormat; +import org.dom4j.io.XMLWriter; +import org.dromara.common.core.exception.ServiceException; +import org.dromara.common.core.utils.StreamUtils; +import org.dromara.common.core.utils.StringUtils; +import org.dromara.common.mybatis.core.page.PageQuery; +import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.dromara.warm.flow.core.dto.FlowCombine; +import org.dromara.warm.flow.core.entity.Definition; +import org.dromara.warm.flow.core.enums.NodeType; +import org.dromara.warm.flow.core.enums.PublishStatus; +import org.dromara.warm.flow.core.service.DefService; +import org.dromara.warm.flow.orm.entity.FlowDefinition; +import org.dromara.warm.flow.orm.entity.FlowHisTask; +import org.dromara.warm.flow.orm.entity.FlowNode; +import org.dromara.warm.flow.orm.entity.FlowSkip; +import org.dromara.warm.flow.orm.mapper.FlowDefinitionMapper; +import org.dromara.warm.flow.orm.mapper.FlowHisTaskMapper; +import org.dromara.warm.flow.orm.mapper.FlowNodeMapper; +import org.dromara.warm.flow.orm.mapper.FlowSkipMapper; +import org.dromara.workflow.common.constant.FlowConstant; +import org.dromara.workflow.domain.FlowCategory; +import org.dromara.workflow.domain.vo.FlowDefinitionVo; +import org.dromara.workflow.mapper.FlwCategoryMapper; +import org.dromara.workflow.service.IFlwDefinitionService; +import org.dromara.workflow.utils.WorkflowUtils; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; +import org.springframework.web.multipart.MultipartFile; + +import java.io.IOException; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; + +import static org.dromara.common.core.constant.TenantConstants.DEFAULT_TENANT_ID; + +/** + * 流程定义 服务层实现 + * + * @author may + */ +@Slf4j +@RequiredArgsConstructor +@Service +public class FlwDefinitionServiceImpl implements IFlwDefinitionService { + + private final DefService defService; + private final FlowDefinitionMapper flowDefinitionMapper; + private final FlowHisTaskMapper flowHisTaskMapper; + private final FlwCategoryMapper flwCategoryMapper; + private final FlowNodeMapper flowNodeMapper; + private final FlowSkipMapper flowSkipMapper; + + /** + * 查询流程定义列表 + * + * @param flowDefinition 流程定义信息 + * @param pageQuery 分页 + * @return 返回分页列表 + */ + @Override + public TableDataInfo queryList(FlowDefinition flowDefinition, PageQuery pageQuery) { + LambdaQueryWrapper wrapper = buildQueryWrapper(flowDefinition); + wrapper.eq(FlowDefinition::getIsPublish, PublishStatus.PUBLISHED.getKey()); + Page page = flowDefinitionMapper.selectPage(pageQuery.build(), wrapper); + TableDataInfo build = TableDataInfo.build(); + build.setRows(BeanUtil.copyToList(page.getRecords(), FlowDefinitionVo.class)); + build.setTotal(page.getTotal()); + return build; + } + + /** + * 查询未发布的流程定义列表 + * + * @param flowDefinition 流程定义信息 + * @param pageQuery 分页 + * @return 返回分页列表 + */ + @Override + public TableDataInfo unPublishList(FlowDefinition flowDefinition, PageQuery pageQuery) { + LambdaQueryWrapper wrapper = buildQueryWrapper(flowDefinition); + wrapper.in(FlowDefinition::getIsPublish, Arrays.asList(PublishStatus.UNPUBLISHED.getKey(), PublishStatus.EXPIRED.getKey())); + Page page = flowDefinitionMapper.selectPage(pageQuery.build(), wrapper); + TableDataInfo build = TableDataInfo.build(); + build.setRows(BeanUtil.copyToList(page.getRecords(), FlowDefinitionVo.class)); + build.setTotal(page.getTotal()); + return build; + } + + private LambdaQueryWrapper buildQueryWrapper(FlowDefinition flowDefinition) { + LambdaQueryWrapper wrapper = Wrappers.lambdaQuery(); + wrapper.like(StringUtils.isNotBlank(flowDefinition.getFlowCode()), FlowDefinition::getFlowCode, flowDefinition.getFlowCode()); + wrapper.like(StringUtils.isNotBlank(flowDefinition.getFlowName()), FlowDefinition::getFlowName, flowDefinition.getFlowName()); + if (StringUtils.isNotBlank(flowDefinition.getCategory())) { + List categoryIds = flwCategoryMapper.selectCategoryIdsByParentId(Convert.toLong(flowDefinition.getCategory())); + wrapper.in(FlowDefinition::getCategory, categoryIds); + } + wrapper.orderByDesc(FlowDefinition::getCreateTime); + return wrapper; + } + + /** + * 发布流程定义 + * + * @param id 流程定义id + */ + @Override + public boolean publish(Long id) { + List flowNodes = flowNodeMapper.selectList(new LambdaQueryWrapper().eq(FlowNode::getDefinitionId, id)); + List errorMsg = new ArrayList<>(); + if (CollUtil.isNotEmpty(flowNodes)) { + for (FlowNode flowNode : flowNodes) { + String applyNodeCode = WorkflowUtils.applyNodeCode(id); + if (StringUtils.isBlank(flowNode.getPermissionFlag()) && !applyNodeCode.equals(flowNode.getNodeCode()) && NodeType.BETWEEN.getKey().equals(flowNode.getNodeType())) { + errorMsg.add(flowNode.getNodeName()); + } + } + if (CollUtil.isNotEmpty(errorMsg)) { + throw new ServiceException("节点【" + StringUtils.join(errorMsg, ",") + "】未配置办理人!"); + } + } + return defService.publish(id); + } + + /** + * 导入流程定义 + * + * @param file 文件 + */ + @Override + public boolean importXml(MultipartFile file, String category) { + try { + FlowCombine combine = defService.readXml(file.getInputStream()); + // 流程定义 + Definition definition = combine.getDefinition(); + definition.setCategory(category); + defService.importFlow(combine); + } catch (Exception e) { + log.error("导入流程定义错误: {}", e.getMessage(), e); + throw new RuntimeException(e); + } + return true; + } + + /** + * 导出流程定义 + * + * @param id 流程定义id + * @param response 响应 + * @throws IOException 异常 + */ + @Override + public void exportDef(Long id, HttpServletResponse response) throws IOException { + Document document = defService.exportXml(id); + // 设置生成xml的格式 + OutputFormat of = OutputFormat.createPrettyPrint(); + // 设置编码格式 + of.setEncoding("UTF-8"); + of.setIndent(true); + of.setIndent(" "); + of.setNewlines(true); + + // 创建一个xml文档编辑器 + XMLWriter writer = new XMLWriter(response.getOutputStream(), of); + writer.setEscapeText(false); + response.reset(); + response.setCharacterEncoding("UTF-8"); + response.setContentType("application/x-msdownload"); + response.setHeader("Content-Disposition", "attachment;"); + writer.write(document); + writer.close(); + } + + /** + * 删除流程定义 + * + * @param ids 流程定义id + */ + @Override + @Transactional(rollbackFor = Exception.class) + public boolean removeDef(List ids) { + LambdaQueryWrapper wrapper = Wrappers.lambdaQuery(); + wrapper.in(FlowHisTask::getDefinitionId, ids); + List flowHisTasks = flowHisTaskMapper.selectList(wrapper); + if (CollUtil.isNotEmpty(flowHisTasks)) { + List flowDefinitions = flowDefinitionMapper.selectByIds(StreamUtils.toList(flowHisTasks, FlowHisTask::getDefinitionId)); + if (CollUtil.isNotEmpty(flowDefinitions)) { + String join = StreamUtils.join(flowDefinitions, FlowDefinition::getFlowCode); + log.error("流程定义【{}】已被使用不可被删除!", join); + throw new ServiceException("流程定义【" + join + "】已被使用不可被删除!"); + } + } + try { + defService.removeDef(ids); + } catch (Exception e) { + log.error("Error removing flow definitions: {}", e.getMessage(), e); + throw new RuntimeException("Failed to remove flow definitions", e); + } + return true; + } + + /** + * 新增租户流程定义 + * + * @param tenantId 租户id + */ + @Override + @Transactional(rollbackFor = Exception.class) + public void syncDef(String tenantId) { + List flowDefinitions = flowDefinitionMapper.selectList(new LambdaQueryWrapper().eq(FlowDefinition::getTenantId, DEFAULT_TENANT_ID)); + if (CollUtil.isEmpty(flowDefinitions)) { + return; + } + FlowCategory flowCategory = flwCategoryMapper.selectOne(new LambdaQueryWrapper() + .eq(FlowCategory::getTenantId, DEFAULT_TENANT_ID).eq(FlowCategory::getCategoryId, FlowConstant.FLOW_CATEGORY_ID)); + flowCategory.setCategoryId(null); + flowCategory.setTenantId(tenantId); + flwCategoryMapper.insert(flowCategory); + List defIds = StreamUtils.toList(flowDefinitions, FlowDefinition::getId); + List flowNodes = flowNodeMapper.selectList(new LambdaQueryWrapper().in(FlowNode::getDefinitionId, defIds)); + List flowSkips = flowSkipMapper.selectList(new LambdaQueryWrapper().in(FlowSkip::getDefinitionId, defIds)); + for (FlowDefinition definition : flowDefinitions) { + FlowDefinition flowDefinition = BeanUtil.toBean(definition, FlowDefinition.class); + flowDefinition.setId(null); + flowDefinition.setTenantId(tenantId); + flowDefinition.setIsPublish(0); + flowDefinition.setCategory(String.valueOf(flowCategory.getCategoryId())); + int insert = flowDefinitionMapper.insert(flowDefinition); + if (insert <= 0) { + log.info("同步流程定义【{}】失败!", definition.getFlowCode()); + continue; + } + log.info("同步流程定义【{}】成功!", definition.getFlowCode()); + Long definitionId = flowDefinition.getId(); + if (CollUtil.isNotEmpty(flowNodes)) { + List nodes = StreamUtils.filter(flowNodes, node -> node.getDefinitionId().equals(definition.getId())); + if (CollUtil.isNotEmpty(nodes)) { + List flowNodeList = BeanUtil.copyToList(nodes, FlowNode.class); + flowNodeList.forEach(e -> { + e.setId(null); + e.setDefinitionId(definitionId); + e.setTenantId(tenantId); + e.setPermissionFlag(null); + }); + flowNodeMapper.insertOrUpdate(flowNodeList); + } + } + if (CollUtil.isNotEmpty(flowSkips)) { + List skips = StreamUtils.filter(flowSkips, skip -> skip.getDefinitionId().equals(definition.getId())); + if (CollUtil.isNotEmpty(skips)) { + List flowSkipList = BeanUtil.copyToList(skips, FlowSkip.class); + flowSkipList.forEach(e -> { + e.setId(null); + e.setDefinitionId(definitionId); + e.setTenantId(tenantId); + }); + flowSkipMapper.insertOrUpdate(flowSkipList); + } + } + } + } +} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwInstanceServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwInstanceServiceImpl.java new file mode 100644 index 000000000..c053e6d4a --- /dev/null +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwInstanceServiceImpl.java @@ -0,0 +1,455 @@ +package org.dromara.workflow.service.impl; + +import cn.hutool.core.bean.BeanUtil; +import cn.hutool.core.collection.CollUtil; +import cn.hutool.core.convert.Convert; +import cn.hutool.core.util.ObjectUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.dromara.common.core.domain.dto.UserDTO; +import org.dromara.common.core.enums.BusinessStatusEnum; +import org.dromara.common.core.exception.ServiceException; +import org.dromara.common.core.utils.StreamUtils; +import org.dromara.common.core.utils.StringUtils; +import org.dromara.common.mybatis.core.page.PageQuery; +import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.dromara.common.satoken.utils.LoginHelper; +import org.dromara.warm.flow.core.FlowFactory; +import org.dromara.warm.flow.core.constant.ExceptionCons; +import org.dromara.warm.flow.core.dto.FlowParams; +import org.dromara.warm.flow.core.entity.Definition; +import org.dromara.warm.flow.core.entity.Instance; +import org.dromara.warm.flow.core.entity.Task; +import org.dromara.warm.flow.core.enums.NodeType; +import org.dromara.warm.flow.core.service.DefService; +import org.dromara.warm.flow.core.service.InsService; +import org.dromara.warm.flow.core.service.TaskService; +import org.dromara.warm.flow.orm.entity.FlowHisTask; +import org.dromara.warm.flow.orm.entity.FlowInstance; +import org.dromara.warm.flow.orm.entity.FlowTask; +import org.dromara.warm.flow.orm.mapper.FlowHisTaskMapper; +import org.dromara.warm.flow.orm.mapper.FlowInstanceMapper; +import org.dromara.workflow.common.enums.TaskStatusEnum; +import org.dromara.workflow.domain.bo.FlowCancelBo; +import org.dromara.workflow.domain.bo.FlowInstanceBo; +import org.dromara.workflow.domain.bo.FlowInvalidBo; +import org.dromara.workflow.domain.vo.FlowHisTaskVo; +import org.dromara.workflow.domain.vo.FlowInstanceVo; +import org.dromara.workflow.domain.vo.FlowVariableVo; +import org.dromara.workflow.handler.FlowProcessEventHandler; +import org.dromara.workflow.mapper.FlwCategoryMapper; +import org.dromara.workflow.mapper.FlwInstanceMapper; +import org.dromara.workflow.service.IFlwInstanceService; +import org.dromara.workflow.service.IFlwTaskService; +import org.dromara.workflow.utils.WorkflowUtils; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.io.IOException; +import java.util.*; +import java.util.stream.Collectors; + +/** + * 流程实例 服务层实现 + * + * @author may + */ +@Slf4j +@RequiredArgsConstructor +@Service +public class FlwInstanceServiceImpl implements IFlwInstanceService { + + private final InsService insService; + private final DefService defService; + private final FlowHisTaskMapper flowHisTaskMapper; + private final FlowInstanceMapper flowInstanceMapper; + private final FlwInstanceMapper flwInstanceMapper; + private final TaskService taskService; + private final IFlwTaskService flwTaskService; + private final FlowProcessEventHandler flowProcessEventHandler; + private final FlwCategoryMapper flwCategoryMapper; + + /** + * 分页查询正在运行的流程实例 + * + * @param flowInstanceBo 流程实例 + * @param pageQuery 分页 + */ + @Override + public TableDataInfo selectRunningInstanceList(FlowInstanceBo flowInstanceBo, PageQuery pageQuery) { + QueryWrapper queryWrapper = buildQueryWrapper(flowInstanceBo); + queryWrapper.in("fi.flow_status", BusinessStatusEnum.runningStatus()); + Page page = flwInstanceMapper.selectInstanceList(pageQuery.build(), queryWrapper); + return TableDataInfo.build(page); + } + + /** + * 分页查询已结束的流程实例 + * + * @param flowInstanceBo 流程实例 + * @param pageQuery 分页 + */ + @Override + public TableDataInfo selectFinishInstanceList(FlowInstanceBo flowInstanceBo, PageQuery pageQuery) { + QueryWrapper queryWrapper = buildQueryWrapper(flowInstanceBo); + queryWrapper.in("fi.flow_status", BusinessStatusEnum.finishStatus()); + Page page = flwInstanceMapper.selectInstanceList(pageQuery.build(), queryWrapper); + return TableDataInfo.build(page); + } + + /** + * 根据业务id查询流程实例详细信息 + * + * @param businessId 业务id + * @return 结果 + */ + @Override + public FlowInstanceVo queryByBusinessId(Long businessId) { + FlowInstance instance = this.selectInstByBusinessId(String.valueOf(businessId)); + FlowInstanceVo instanceVo = BeanUtil.toBean(instance, FlowInstanceVo.class); + Definition definition = defService.getById(instanceVo.getDefinitionId()); + instanceVo.setFlowName(definition.getFlowName()); + instanceVo.setFlowCode(definition.getFlowCode()); + instanceVo.setVersion(definition.getVersion()); + instanceVo.setFormCustom(definition.getFormCustom()); + instanceVo.setFormPath(definition.getFormPath()); + instanceVo.setCategory(definition.getCategory()); + return instanceVo; + } + + /** + * 通用查询条件 + * + * @param flowInstanceBo 查询条件 + * @return 查询条件构造方法 + */ + private QueryWrapper buildQueryWrapper(FlowInstanceBo flowInstanceBo) { + QueryWrapper queryWrapper = Wrappers.query(); + queryWrapper.like(StringUtils.isNotBlank(flowInstanceBo.getNodeName()), "fi.node_name", flowInstanceBo.getNodeName()); + queryWrapper.like(StringUtils.isNotBlank(flowInstanceBo.getFlowName()), "fd.flow_name", flowInstanceBo.getFlowName()); + queryWrapper.like(StringUtils.isNotBlank(flowInstanceBo.getFlowCode()), "fd.flow_code", flowInstanceBo.getFlowCode()); + if (StringUtils.isNotBlank(flowInstanceBo.getCategory())) { + List categoryIds = flwCategoryMapper.selectCategoryIdsByParentId(Convert.toLong(flowInstanceBo.getCategory())); + queryWrapper.in("fd.category", categoryIds); + } + queryWrapper.eq(StringUtils.isNotBlank(flowInstanceBo.getBusinessId()), "fi.business_id", flowInstanceBo.getBusinessId()); + queryWrapper.in(CollUtil.isNotEmpty(flowInstanceBo.getCreateByIds()), "fi.create_by", flowInstanceBo.getCreateByIds()); + queryWrapper.eq("fi.del_flag", "0"); + queryWrapper.orderByDesc("fi.create_time"); + return queryWrapper; + } + + /** + * 根据业务id查询流程实例 + * + * @param businessId 业务id + */ + @Override + public FlowInstance selectInstByBusinessId(String businessId) { + return flowInstanceMapper.selectOne(new LambdaQueryWrapper().eq(FlowInstance::getBusinessId, businessId)); + } + + /** + * 按照实例id查询流程实例 + * + * @param instanceId 实例id + */ + @Override + public FlowInstance selectInstById(Long instanceId) { + return flowInstanceMapper.selectById(instanceId); + } + + /** + * 按照实例id查询流程实例 + * + * @param instanceIds 实例id + */ + @Override + public List selectInstListByIdList(List instanceIds) { + return flowInstanceMapper.selectByIds(instanceIds); + } + + /** + * 按照业务id删除流程实例 + * + * @param businessIds 业务id + */ + @Override + @Transactional(rollbackFor = Exception.class) + public boolean deleteByBusinessIds(List businessIds) { + List flowInstances = flowInstanceMapper.selectList(new LambdaQueryWrapper().in(FlowInstance::getBusinessId, businessIds)); + if (CollUtil.isEmpty(flowInstances)) { + log.warn("未找到对应的流程实例信息,无法执行删除操作。"); + return false; + } + return insService.remove(StreamUtils.toList(flowInstances, FlowInstance::getId)); + } + + /** + * 按照实例id删除流程实例 + * + * @param instanceIds 实例id + */ + @Override + @Transactional(rollbackFor = Exception.class) + public boolean deleteByInstanceIds(List instanceIds) { + // 获取实例信息 + List instances = insService.getByIds(instanceIds); + if (CollUtil.isEmpty(instances)) { + log.warn("未找到对应的流程实例信息,无法执行删除操作。"); + return false; + } + // 获取定义信息 + Map definitionMap = defService.getByIds( + StreamUtils.toList(instances, Instance::getDefinitionId) + ).stream().collect(Collectors.toMap(Definition::getId, definition -> definition)); + + // 逐一触发删除事件 + instances.forEach(instance -> { + Definition definition = definitionMap.get(instance.getDefinitionId()); + if (ObjectUtil.isNull(definition)) { + log.warn("实例 ID: {} 对应的流程定义信息未找到,跳过删除事件触发。", instance.getId()); + return; + } + flowProcessEventHandler.processDeleteHandler(definition.getFlowCode(), instance.getBusinessId()); + }); + + // 删除实例 + return insService.remove(instanceIds); + } + + /** + * 撤销流程 + * + * @param bo 参数 + */ + @Override + @Transactional(rollbackFor = Exception.class) + public boolean cancelProcessApply(FlowCancelBo bo) { + try { + Instance instance = selectInstByBusinessId(bo.getBusinessId()); + if (instance == null) { + throw new ServiceException(ExceptionCons.NOT_FOUNT_INSTANCE); + } + Definition definition = defService.getById(instance.getDefinitionId()); + if (definition == null) { + throw new ServiceException(ExceptionCons.NOT_FOUNT_DEF); + } + String message = bo.getMessage(); + BusinessStatusEnum.checkCancelStatus(instance.getFlowStatus()); + String applyNodeCode = WorkflowUtils.applyNodeCode(definition.getId()); + //撤销 + WorkflowUtils.backTask(message, instance.getId(), applyNodeCode, BusinessStatusEnum.CANCEL.getStatus(), BusinessStatusEnum.CANCEL.getStatus()); + //判断或签节点是否有多个,只保留一个 + List currentTaskList = taskService.list(FlowFactory.newTask().setInstanceId(instance.getId())); + if (CollUtil.isNotEmpty(currentTaskList)) { + if (currentTaskList.size() > 1) { + currentTaskList.remove(0); + WorkflowUtils.deleteRunTask(StreamUtils.toList(currentTaskList, Task::getId)); + } + } + + } catch (Exception e) { + log.error("撤销失败: {}", e.getMessage(), e); + throw new ServiceException(e.getMessage()); + } + return true; + } + + /** + * 获取当前登陆人发起的流程实例 + * + * @param instanceBo 流程实例 + * @param pageQuery 分页 + */ + @Override + public TableDataInfo selectCurrentInstanceList(FlowInstanceBo instanceBo, PageQuery pageQuery) { + QueryWrapper queryWrapper = buildQueryWrapper(instanceBo); + queryWrapper.eq("fi.create_by", LoginHelper.getUserIdStr()); + Page page = flwInstanceMapper.selectInstanceList(pageQuery.build(), queryWrapper); + return TableDataInfo.build(page); + } + + /** + * 获取流程图,流程记录 + * + * @param businessId 业务id + */ + @Override + public Map flowImage(String businessId) { + Map map = new HashMap<>(16); + FlowInstance flowInstance = this.selectInstByBusinessId(businessId); + if (flowInstance == null) { + throw new ServiceException(ExceptionCons.NOT_FOUNT_INSTANCE); + } + //运行中的任务 + List list = new ArrayList<>(); + List flowTaskList = flwTaskService.selectByInstId(flowInstance.getId()); + if (CollUtil.isNotEmpty(flowTaskList)) { + List flowHisTaskVos = BeanUtil.copyToList(flowTaskList, FlowHisTaskVo.class); + for (FlowHisTaskVo flowHisTaskVo : flowHisTaskVos) { + flowHisTaskVo.setFlowStatus(TaskStatusEnum.WAITING.getStatus()); + flowHisTaskVo.setUpdateTime(null); + flowHisTaskVo.setRunDuration(null); + List allUser = flwTaskService.currentTaskAllUser(flowHisTaskVo.getId()); + if (CollUtil.isNotEmpty(allUser)) { + String join = StreamUtils.join(allUser, e -> String.valueOf(e.getUserId())); + flowHisTaskVo.setApprover(join); + } + if (BusinessStatusEnum.isDraftOrCancelOrBack(flowInstance.getFlowStatus())) { + flowHisTaskVo.setApprover(LoginHelper.getUserIdStr()); + flowHisTaskVo.setApproveName(LoginHelper.getLoginUser().getNickname()); + } + } + list.addAll(flowHisTaskVos); + } + //历史任务 + LambdaQueryWrapper wrapper = Wrappers.lambdaQuery(); + wrapper.eq(FlowHisTask::getInstanceId, flowInstance.getId()); + wrapper.eq(FlowHisTask::getNodeType, NodeType.BETWEEN.getKey()); + wrapper.orderByDesc(FlowHisTask::getCreateTime).orderByDesc(FlowHisTask::getUpdateTime); + List flowHisTasks = flowHisTaskMapper.selectList(wrapper); + if (CollUtil.isNotEmpty(flowHisTasks)) { + list.addAll(BeanUtil.copyToList(flowHisTasks, FlowHisTaskVo.class)); + } + + map.put("list", list); + try { + String flowChart = defService.flowChart(flowInstance.getId()); + map.put("image", flowChart); + } catch (IOException e) { + throw new RuntimeException(e); + } + return map; + } + + /** + * 按照实例id更新状态 + * + * @param instanceId 实例id + * @param status 状态 + */ + @Override + public void updateStatus(Long instanceId, String status) { + LambdaUpdateWrapper wrapper = new LambdaUpdateWrapper<>(); + wrapper.set(FlowInstance::getFlowStatus, status); + wrapper.eq(FlowInstance::getId, instanceId); + flowInstanceMapper.update(wrapper); + } + + /** + * 获取流程变量 + * + * @param instanceId 实例id + */ + @Override + public Map instanceVariable(String instanceId) { + Map map = new HashMap<>(); + FlowInstance flowInstance = flowInstanceMapper.selectById(instanceId); + Map variableMap = flowInstance.getVariableMap(); + List list = new ArrayList<>(); + if (CollUtil.isNotEmpty(variableMap)) { + for (Map.Entry entry : variableMap.entrySet()) { + FlowVariableVo flowVariableVo = new FlowVariableVo(); + flowVariableVo.setKey(entry.getKey()); + flowVariableVo.setValue(entry.getValue().toString()); + list.add(flowVariableVo); + } + } + map.put("variableList", list); + map.put("variable", flowInstance.getVariable()); + return map; + } + + /** + * 设置流程变量 + * + * @param instanceId 实例id + * @param variable 流程变量 + */ + @Override + public void setVariable(Long instanceId, Map variable) { + Instance instance = insService.getById(instanceId); + if (instance != null) { + taskService.mergeVariable(instance, variable); + } + } + + /** + * 按任务id查询实例 + * + * @param taskId 任务id + */ + @Override + public FlowInstance selectByTaskId(Long taskId) { + Task task = taskService.getById(taskId); + if (task == null) { + FlowHisTask flowHisTask = flwTaskService.selectHisTaskById(taskId); + if (flowHisTask != null) { + return this.selectInstById(flowHisTask.getInstanceId()); + } + } else { + return this.selectInstById(task.getInstanceId()); + } + return null; + } + + /** + * 按任务id查询实例 + * + * @param taskIdList 任务id + */ + @Override + public List selectByTaskIdList(List taskIdList) { + if (CollUtil.isEmpty(taskIdList)) { + return Collections.emptyList(); + } + Set instanceIds = new HashSet<>(); + List flowTaskList = flwTaskService.selectByIdList(taskIdList); + for (FlowTask flowTask : flowTaskList) { + instanceIds.add(flowTask.getInstanceId()); + } + List flowHisTaskList = flwTaskService.selectHisTaskByIdList(taskIdList); + for (FlowHisTask flowHisTask : flowHisTaskList) { + instanceIds.add(flowHisTask.getInstanceId()); + } + if (!instanceIds.isEmpty()) { + return this.selectInstListByIdList(new ArrayList<>(instanceIds)); + } + return Collections.emptyList(); + } + + /** + * 作废流程 + * + * @param bo 参数 + */ + @Override + @Transactional(rollbackFor = Exception.class) + public boolean processInvalid(FlowInvalidBo bo) { + try { + Instance instance = insService.getById(bo.getId()); + if (instance != null) { + BusinessStatusEnum.checkInvalidStatus(instance.getFlowStatus()); + } + List flowTaskList = flwTaskService.selectByInstId(bo.getId()); + for (FlowTask flowTask : flowTaskList) { + FlowParams flowParams = new FlowParams(); + flowParams.message(bo.getComment()); + flowParams.flowStatus(BusinessStatusEnum.INVALID.getStatus()) + .hisStatus(TaskStatusEnum.INVALID.getStatus()); + flowParams.ignore(true); + taskService.termination(flowTask.getId(), flowParams); + } + return true; + } catch (Exception e) { + log.error(e.getMessage(), e); + throw new ServiceException(e.getMessage()); + } + } +} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskAssigneeServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskAssigneeServiceImpl.java new file mode 100644 index 000000000..28c1e8b04 --- /dev/null +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskAssigneeServiceImpl.java @@ -0,0 +1,158 @@ +package org.dromara.workflow.service.impl; + +import cn.hutool.core.bean.BeanUtil; +import cn.hutool.core.util.StrUtil; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.dromara.common.core.domain.dto.DeptDTO; +import org.dromara.common.core.domain.dto.TaskAssigneeDTO; +import org.dromara.common.core.domain.dto.UserDTO; +import org.dromara.common.core.domain.model.TaskAssigneeBody; +import org.dromara.common.core.enums.FormatsType; +import org.dromara.common.core.exception.ServiceException; +import org.dromara.common.core.service.DeptService; +import org.dromara.common.core.service.TaskAssigneeService; +import org.dromara.common.core.service.UserService; +import org.dromara.common.core.utils.DateUtils; +import org.dromara.common.core.utils.StringUtils; +import org.dromara.warm.flow.ui.dto.HandlerFunDto; +import org.dromara.warm.flow.ui.dto.HandlerQuery; +import org.dromara.warm.flow.ui.dto.TreeFunDto; +import org.dromara.warm.flow.ui.service.HandlerSelectService; +import org.dromara.warm.flow.ui.vo.HandlerSelectVo; +import org.dromara.workflow.common.enums.TaskAssigneeEnum; +import org.dromara.workflow.service.IFlwTaskAssigneeService; +import org.springframework.stereotype.Service; + +import java.util.ArrayList; +import java.util.List; +import java.util.Optional; + +/** + * 流程设计器-获取办理人权限设置列表 + * + * @author AprilWind + */ +@Slf4j +@RequiredArgsConstructor +@Service +public class FlwTaskAssigneeServiceImpl implements IFlwTaskAssigneeService, HandlerSelectService { + + private static final String DEFAULT_GROUP_NAME = "默认分组"; + private final TaskAssigneeService taskAssigneeService; + private final UserService userService; + private final DeptService deptService; + + /** + * 获取办理人权限设置列表tabs页签 + * + * @return tabs页签 + */ + @Override + public List getHandlerType() { + return TaskAssigneeEnum.getAssigneeTypeList(); + } + + /** + * 获取办理列表, 同时构建左侧部门树状结构 + * + * @param query 查询条件 + * @return HandlerSelectVo + */ + @Override + public HandlerSelectVo getHandlerSelect(HandlerQuery query) { + // 获取任务办理类型 + TaskAssigneeEnum type = TaskAssigneeEnum.fromDesc(query.getHandlerType()); + // 转换查询条件为 TaskAssigneeBody + TaskAssigneeBody taskQuery = BeanUtil.toBean(query, TaskAssigneeBody.class); + + // 统一查询并构建业务数据 + TaskAssigneeDTO dto = fetchTaskAssigneeData(type, taskQuery); + List depts = fetchDeptData(type); + + return getHandlerSelectVo(buildHandlerData(dto, type), buildDeptTree(depts)); + } + + /** + * 根据任务办理类型查询对应的数据 + */ + private TaskAssigneeDTO fetchTaskAssigneeData(TaskAssigneeEnum type, TaskAssigneeBody taskQuery) { + return switch (type) { + case USER -> taskAssigneeService.selectUsersByTaskAssigneeList(taskQuery); + case ROLE -> taskAssigneeService.selectRolesByTaskAssigneeList(taskQuery); + case DEPT -> taskAssigneeService.selectDeptsByTaskAssigneeList(taskQuery); + case POST -> taskAssigneeService.selectPostsByTaskAssigneeList(taskQuery); + default -> throw new ServiceException("Unsupported handler type"); + }; + } + + /** + * 根据任务办理类型获取部门数据 + */ + private List fetchDeptData(TaskAssigneeEnum type) { + if (type == TaskAssigneeEnum.USER || type == TaskAssigneeEnum.DEPT || type == TaskAssigneeEnum.POST) { + return deptService.selectDeptsByList(); + } + return new ArrayList<>(); + } + + /** + * 构建部门树状结构 + */ + private TreeFunDto buildDeptTree(List depts) { + return new TreeFunDto<>(depts) + .setId(dept -> String.valueOf(dept.getDeptId())) + .setName(DeptDTO::getDeptName) + .setParentId(dept -> String.valueOf(dept.getParentId())); + } + + /** + * 构建任务办理人数据 + */ + private HandlerFunDto buildHandlerData(TaskAssigneeDTO dto, TaskAssigneeEnum type) { + return new HandlerFunDto<>(dto.getList(), dto.getTotal()) + .setStorageId(assignee -> type.getCode() + assignee.getStorageId()) + .setHandlerCode(assignee -> StringUtils.blankToDefault(assignee.getHandlerCode(), "无")) + .setHandlerName(assignee -> StringUtils.blankToDefault(assignee.getHandlerName(), "无")) + .setGroupName(assignee -> StringUtils.defaultIfBlank( + Optional.ofNullable(assignee.getGroupName()) + .map(deptService::selectDeptNameByIds) + .orElse(DEFAULT_GROUP_NAME), DEFAULT_GROUP_NAME)) + .setCreateTime(assignee -> DateUtils.parseDateToStr(FormatsType.YYYY_MM_DD_HH_MM_SS, assignee.getCreateTime())); + } + + /** + * 根据存储标识符(storageId)解析分配类型和ID,并获取对应的用户列表 + * + * @param storageId 包含分配类型和ID的字符串(例如 "user:123" 或 "role:456") + * @return 与分配类型和ID匹配的用户列表,如果格式无效则返回空列表 + */ + @Override + public List fetchUsersByStorageId(String storageId) { + String[] parts = storageId.split(StrUtil.COLON, 2); + if (parts.length < 2) { + return getUsersByType(TaskAssigneeEnum.USER, List.of(Long.valueOf(parts[0]))); + } + return getUsersByType(TaskAssigneeEnum.fromCode(parts[0] + StrUtil.COLON), List.of(Long.valueOf(parts[1]))); + } + + /** + * 根据指定的任务分配类型(TaskAssigneeEnum)和 ID 列表,获取对应的用户信息列表 + * + * @param type 任务分配类型,表示用户、角色、部门或其他(TaskAssigneeEnum 枚举值) + * @param ids 与指定分配类型关联的 ID 列表(例如用户ID、角色ID、部门ID等) + * @return 返回包含用户信息的列表。如果类型为用户(USER),则通过用户ID列表查询; + * 如果类型为角色(ROLE),则通过角色ID列表查询; + * 如果类型为部门(DEPT),则通过部门ID列表查询; + * 如果类型为岗位(POST)或无法识别的类型,则返回空列表 + */ + private List getUsersByType(TaskAssigneeEnum type, List ids) { + return switch (type) { + case USER -> userService.selectListByIds(ids); + case ROLE -> userService.selectUsersByRoleIds(ids); + case DEPT -> userService.selectUsersByDeptIds(ids); + case POST -> userService.selectUsersByPostIds(ids); + }; + } + +} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java new file mode 100644 index 000000000..fca38fbac --- /dev/null +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java @@ -0,0 +1,669 @@ +package org.dromara.workflow.service.impl; + +import cn.hutool.core.bean.BeanUtil; +import cn.hutool.core.collection.CollUtil; +import cn.hutool.core.convert.Convert; +import cn.hutool.core.util.ObjectUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.incrementer.IdentifierGenerator; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.dromara.common.core.domain.dto.UserDTO; +import org.dromara.common.core.enums.BusinessStatusEnum; +import org.dromara.common.core.exception.ServiceException; +import org.dromara.common.core.service.UserService; +import org.dromara.common.core.utils.SpringUtils; +import org.dromara.common.core.utils.StreamUtils; +import org.dromara.common.core.utils.StringUtils; +import org.dromara.common.core.utils.ValidatorUtils; +import org.dromara.common.core.validate.AddGroup; +import org.dromara.common.core.validate.EditGroup; +import org.dromara.common.mybatis.core.page.PageQuery; +import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.dromara.common.satoken.utils.LoginHelper; +import org.dromara.warm.flow.core.dto.FlowParams; +import org.dromara.warm.flow.core.entity.*; +import org.dromara.warm.flow.core.enums.NodeType; +import org.dromara.warm.flow.core.enums.SkipType; +import org.dromara.warm.flow.core.service.*; +import org.dromara.warm.flow.orm.entity.*; +import org.dromara.warm.flow.orm.mapper.FlowHisTaskMapper; +import org.dromara.warm.flow.orm.mapper.FlowInstanceMapper; +import org.dromara.warm.flow.orm.mapper.FlowNodeMapper; +import org.dromara.warm.flow.orm.mapper.FlowTaskMapper; +import org.dromara.workflow.common.enums.TaskAssigneeType; +import org.dromara.workflow.common.enums.TaskStatusEnum; +import org.dromara.workflow.domain.bo.*; +import org.dromara.workflow.domain.vo.FlowHisTaskVo; +import org.dromara.workflow.domain.vo.FlowTaskVo; +import org.dromara.workflow.handler.FlowProcessEventHandler; +import org.dromara.workflow.handler.WorkflowPermissionHandler; +import org.dromara.workflow.mapper.FlwCategoryMapper; +import org.dromara.workflow.mapper.FlwTaskMapper; +import org.dromara.workflow.service.IFlwTaskService; +import org.dromara.workflow.utils.WorkflowUtils; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.math.BigDecimal; +import java.util.*; +import java.util.stream.Collectors; + +import static org.dromara.workflow.common.constant.FlowConstant.*; + +/** + * 任务 服务层实现 + * + * @author may + */ +@Slf4j +@RequiredArgsConstructor +@Service +public class FlwTaskServiceImpl implements IFlwTaskService { + + private final TaskService taskService; + private final InsService insService; + private final FlowInstanceMapper flowInstanceMapper; + private final FlwTaskMapper flwTaskMapper; + private final UserService userService; + private final FlowTaskMapper flowTaskMapper; + private final FlowHisTaskMapper flowHisTaskMapper; + private final FlowProcessEventHandler flowProcessEventHandler; + private final DefService defService; + private final HisTaskService hisTaskService; + private final IdentifierGenerator identifierGenerator; + private final NodeService nodeService; + private final FlowNodeMapper flowNodeMapper; + private final FlwCategoryMapper flwCategoryMapper; + + /** + * 启动任务 + * + * @param startProcessBo 启动流程参数 + */ + @Override + @Transactional(rollbackFor = Exception.class) + public Map startWorkFlow(StartProcessBo startProcessBo) { + String businessId = startProcessBo.getBusinessId(); + if (StringUtils.isBlank(businessId)) { + throw new ServiceException("启动工作流时必须包含业务ID"); + } + // 启动流程实例(提交申请) + Map variables = startProcessBo.getVariables(); + // 流程发起人 + variables.put(INITIATOR, LoginHelper.getUserIdStr()); + // 业务id + variables.put(BUSINESS_ID, businessId); + FlowInstance flowInstance = flowInstanceMapper.selectOne(new LambdaQueryWrapper<>(FlowInstance.class) + .eq(FlowInstance::getBusinessId, businessId)); + if (ObjectUtil.isNotNull(flowInstance)) { + BusinessStatusEnum.checkStartStatus(flowInstance.getFlowStatus()); + List taskList = taskService.list(new FlowTask().setInstanceId(flowInstance.getId())); + return Map.of(PROCESS_INSTANCE_ID, taskList.get(0).getInstanceId(), TASK_ID, taskList.get(0).getId()); + } + FlowParams flowParams = new FlowParams(); + flowParams.flowCode(startProcessBo.getFlowCode()); + flowParams.variable(startProcessBo.getVariables()); + flowParams.flowStatus(BusinessStatusEnum.DRAFT.getStatus()); + Instance instance; + try { + instance = insService.start(businessId, flowParams); + } catch (Exception e) { + throw new ServiceException(e.getMessage()); + } + // 申请人执行流程 + List taskList = taskService.list(new FlowTask().setInstanceId(instance.getId())); + if (taskList.size() > 1) { + throw new ServiceException("请检查流程第一个环节是否为申请人!"); + } + return Map.of(PROCESS_INSTANCE_ID, instance.getId(), TASK_ID, taskList.get(0).getId()); + } + + /** + * 办理任务 + * + * @param completeTaskBo 办理任务参数 + */ + @Override + @Transactional(rollbackFor = Exception.class) + public boolean completeTask(CompleteTaskBo completeTaskBo) { + try { + // 获取任务ID并查询对应的流程任务和实例信息 + Long taskId = completeTaskBo.getTaskId(); + List messageType = completeTaskBo.getMessageType(); + String notice = completeTaskBo.getNotice(); + // 获取抄送人 + List flowCopyList = completeTaskBo.getFlowCopyList(); + FlowTask flowTask = flowTaskMapper.selectById(taskId); + Instance ins = insService.getById(flowTask.getInstanceId()); + // 获取流程定义信息 + Definition definition = defService.getById(flowTask.getDefinitionId()); + // 检查流程状态是否为草稿、已撤销或已退回状态,若是则执行流程提交监听 + if (BusinessStatusEnum.isDraftOrCancelOrBack(ins.getFlowStatus())) { + flowProcessEventHandler.processHandler(definition.getFlowCode(), ins.getBusinessId(), ins.getFlowStatus(), true); + } + // 构建流程参数,包括变量、跳转类型、消息、处理人、权限等信息 + FlowParams flowParams = new FlowParams(); + flowParams.variable(completeTaskBo.getVariables()); + flowParams.skipType(SkipType.PASS.getKey()); + flowParams.message(completeTaskBo.getMessage()); + flowParams.flowStatus(BusinessStatusEnum.WAITING.getStatus()).hisStatus(TaskStatusEnum.PASS.getStatus()); + + flowParams.hisTaskExt(completeTaskBo.getFileId()); + // 执行任务跳转,并根据返回的处理人设置下一步处理人 + Instance instance = taskService.skip(taskId, flowParams); + this.setHandler(instance, flowTask, flowCopyList); + // 消息通知 + WorkflowUtils.sendMessage(definition.getFlowName(), ins.getId(), messageType, notice); + return true; + } catch (Exception e) { + log.error(e.getMessage(), e); + throw new ServiceException(e.getMessage()); + } + } + + /** + * 设置办理人 + * + * @param instance 实例 + * @param task (当前任务)未办理的任务 + * @param flowCopyList 抄送人 + */ + private void setHandler(Instance instance, FlowTask task, List flowCopyList) { + if (ObjectUtil.isNull(instance)) { + return; + } + // 添加抄送人 + this.setCopy(task, flowCopyList); + // 根据流程实例ID查询所有关联的任务 + List flowTasks = this.selectByInstId(instance.getId()); + List userList = new ArrayList<>(); + // 遍历任务列表,处理每个任务的办理人 + for (FlowTask flowTask : flowTasks) { + // 获取与当前任务关联的用户列表 + List associatedUsers = WorkflowUtils.getFlowUserService().getByAssociateds(Collections.singletonList(flowTask.getId())); + if (CollUtil.isNotEmpty(associatedUsers)) { + userList.addAll(WorkflowUtils.buildUser(associatedUsers, flowTask.getId())); + } + } + // 批量删除现有任务的办理人记录 + if (CollUtil.isNotEmpty(flowTasks)) { + WorkflowUtils.getFlowUserService().deleteByTaskIds(StreamUtils.toList(flowTasks, FlowTask::getId)); + } + // 确保要保存的 userList 不为空 + if (CollUtil.isNotEmpty(userList)) { + WorkflowUtils.getFlowUserService().saveBatch(userList); + } + } + + /** + * 添加抄送人 + * + * @param task 任务信息 + * @param flowCopyList 抄送人 + */ + public void setCopy(FlowTask task, List flowCopyList) { + if (CollUtil.isEmpty(flowCopyList)) { + return; + } + // 添加抄送人记录 + FlowHisTask flowHisTask = flowHisTaskMapper.selectList(new LambdaQueryWrapper<>(FlowHisTask.class).eq(FlowHisTask::getTaskId, task.getId())).get(0); + FlowNode flowNode = new FlowNode(); + flowNode.setNodeCode(flowHisTask.getTargetNodeCode()); + flowNode.setNodeName(flowHisTask.getTargetNodeName()); + //生成新的任务id + long taskId = identifierGenerator.nextId(null).longValue(); + task.setId(taskId); + task.setNodeName("【抄送】" + task.getNodeName()); + Date updateTime = new Date(flowHisTask.getUpdateTime().getTime() - 1000); + FlowParams flowParams = FlowParams.build(); + flowParams.skipType(SkipType.NONE.getKey()); + flowParams.hisStatus(TaskStatusEnum.COPY.getStatus()); + flowParams.message("【抄送给】" + StreamUtils.join(flowCopyList, FlowCopyBo::getUserName)); + HisTask hisTask = hisTaskService.setSkipHisTask(task, flowNode, flowParams); + hisTask.setCreateTime(updateTime); + hisTask.setUpdateTime(updateTime); + hisTaskService.save(hisTask); + List userList = flowCopyList.stream() + .map(flowCopy -> { + FlowUser flowUser = new FlowUser(); + flowUser.setType(TaskAssigneeType.COPY.getCode()); + flowUser.setProcessedBy(String.valueOf(flowCopy.getUserId())); + flowUser.setAssociated(taskId); + return flowUser; + }).collect(Collectors.toList()); + // 批量保存抄送人员 + WorkflowUtils.getFlowUserService().saveBatch(userList); + } + + /** + * 查询当前用户的待办任务 + * + * @param flowTaskBo 参数 + * @param pageQuery 分页 + */ + @Override + public TableDataInfo pageByTaskWait(FlowTaskBo flowTaskBo, PageQuery pageQuery) { + QueryWrapper queryWrapper = buildQueryWrapper(flowTaskBo); + queryWrapper.eq("t.node_type", NodeType.BETWEEN.getKey()); + queryWrapper.in("t.processed_by", SpringUtils.getBean(WorkflowPermissionHandler.class).permissions()); + queryWrapper.in("t.flow_status", BusinessStatusEnum.WAITING.getStatus()); + Page page = this.getFlowTaskVoPage(pageQuery, queryWrapper); + return TableDataInfo.build(page); + } + + /** + * 查询当前用户的已办任务 + * + * @param flowTaskBo 参数 + * @param pageQuery 分页 + */ + @Override + public TableDataInfo pageByTaskFinish(FlowTaskBo flowTaskBo, PageQuery pageQuery) { + QueryWrapper queryWrapper = buildQueryWrapper(flowTaskBo); + queryWrapper.eq("t.node_type", NodeType.BETWEEN.getKey()); + queryWrapper.in("t.approver", LoginHelper.getUserIdStr()); + queryWrapper.orderByDesc("t.create_time").orderByDesc("t.update_time"); + Page page = flwTaskMapper.getListFinishTask(pageQuery.build(), queryWrapper); + return TableDataInfo.build(page); + } + + /** + * 查询待办任务 + * + * @param flowTaskBo 参数 + * @param pageQuery 分页 + */ + @Override + public TableDataInfo pageByAllTaskWait(FlowTaskBo flowTaskBo, PageQuery pageQuery) { + QueryWrapper queryWrapper = buildQueryWrapper(flowTaskBo); + queryWrapper.eq("t.node_type", NodeType.BETWEEN.getKey()); + Page page = getFlowTaskVoPage(pageQuery, queryWrapper); + return TableDataInfo.build(page); + } + + private Page getFlowTaskVoPage(PageQuery pageQuery, QueryWrapper queryWrapper) { + Page page = flwTaskMapper.getListRunTask(pageQuery.build(), queryWrapper); + List records = page.getRecords(); + if (CollUtil.isNotEmpty(records)) { + List taskIds = StreamUtils.toList(records, FlowTaskVo::getId); + Map> listMap = currentTaskAllUser(taskIds); + records.forEach(t -> { + List userList = listMap.getOrDefault(t.getId(), Collections.emptyList()); + if (CollUtil.isNotEmpty(userList)) { + t.setAssigneeIds(StreamUtils.join(userList, e -> String.valueOf(e.getUserId()))); + t.setAssigneeNames(StreamUtils.join(userList, UserDTO::getNickName)); + } + }); + } + return page; + } + + /** + * 查询已办任务 + * + * @param flowTaskBo 参数 + * @param pageQuery 分页 + */ + @Override + public TableDataInfo pageByAllTaskFinish(FlowTaskBo flowTaskBo, PageQuery pageQuery) { + QueryWrapper queryWrapper = buildQueryWrapper(flowTaskBo); + Page page = flwTaskMapper.getListFinishTask(pageQuery.build(), queryWrapper); + return TableDataInfo.build(page); + } + + /** + * 查询当前用户的抄送 + * + * @param flowTaskBo 参数 + * @param pageQuery 分页 + */ + @Override + public TableDataInfo pageByTaskCopy(FlowTaskBo flowTaskBo, PageQuery pageQuery) { + QueryWrapper queryWrapper = buildQueryWrapper(flowTaskBo); + queryWrapper.in("t.processed_by", LoginHelper.getUserIdStr()); + Page page = flwTaskMapper.getTaskCopyByPage(pageQuery.build(), queryWrapper); + return TableDataInfo.build(page); + } + + private QueryWrapper buildQueryWrapper(FlowTaskBo flowTaskBo) { + QueryWrapper wrapper = Wrappers.query(); + wrapper.like(StringUtils.isNotBlank(flowTaskBo.getNodeName()), "t.node_name", flowTaskBo.getNodeName()); + wrapper.like(StringUtils.isNotBlank(flowTaskBo.getFlowName()), "t.flow_name", flowTaskBo.getFlowName()); + wrapper.like(StringUtils.isNotBlank(flowTaskBo.getFlowCode()), "t.flow_code", flowTaskBo.getFlowCode()); + wrapper.in(CollUtil.isNotEmpty(flowTaskBo.getCreateByIds()), "t.create_by", flowTaskBo.getCreateByIds()); + if (StringUtils.isNotBlank(flowTaskBo.getCategory())) { + List categoryIds = flwCategoryMapper.selectCategoryIdsByParentId(Convert.toLong(flowTaskBo.getCategory())); + wrapper.in("t.category", categoryIds); + } + wrapper.orderByDesc("t.create_time"); + return wrapper; + } + + /** + * 驳回任务 + * + * @param bo 参数 + */ + @Override + @Transactional(rollbackFor = Exception.class) + public boolean backProcess(BackProcessBo bo) { + try { + Long taskId = bo.getTaskId(); + String notice = bo.getNotice(); + List messageType = bo.getMessageType(); + String message = bo.getMessage(); + FlowTask task = flowTaskMapper.selectById(taskId); + if (ObjectUtil.isNull(task)) { + throw new ServiceException("任务不存在!"); + } + Instance inst = insService.getById(task.getInstanceId()); + BusinessStatusEnum.checkBackStatus(inst.getFlowStatus()); + Long definitionId = task.getDefinitionId(); + Definition definition = defService.getById(definitionId); + String applyNodeCode = WorkflowUtils.applyNodeCode(definitionId); + FlowParams flowParams = FlowParams.build(); + flowParams.nodeCode(bo.getNodeCode()); + flowParams.message(message); + flowParams.skipType(SkipType.REJECT.getKey()); + flowParams.flowStatus(applyNodeCode.equals(bo.getNodeCode()) ? TaskStatusEnum.BACK.getStatus() : TaskStatusEnum.WAITING.getStatus()) + .hisStatus(TaskStatusEnum.BACK.getStatus()); + taskService.skip(task.getId(), flowParams); + + Instance instance = insService.getById(inst.getId()); + this.setHandler(instance, task, null); + // 消息通知 + WorkflowUtils.sendMessage(definition.getFlowName(), instance.getId(), messageType, notice); + return true; + } catch (Exception e) { + log.error(e.getMessage(), e); + throw new ServiceException(e.getMessage()); + } + } + + /** + * 获取可驳回的前置节点 + * + * @param definitionId 流程定义id + * @param nowNodeCode 当前节点 + */ + @Override + public List getBackTaskNode(Long definitionId, String nowNodeCode) { + List nodeCodes = nodeService.getByNodeCodes(Collections.singletonList(nowNodeCode), definitionId); + if (!CollUtil.isNotEmpty(nodeCodes)) { + return nodeCodes; + } + //判断是否配置了固定驳回节点 + Node node = nodeCodes.get(0); + if (StringUtils.isNotBlank(node.getAnyNodeSkip())) { + return nodeService.getByNodeCodes(Collections.singletonList(node.getAnyNodeSkip()), definitionId); + } + //获取可驳回的前置节点 + List nodes = nodeService.previousNodeList(definitionId, nowNodeCode); + if (CollUtil.isNotEmpty(nodes)) { + return StreamUtils.filter(nodes, e -> NodeType.BETWEEN.getKey().equals(e.getNodeType())); + } + return nodes; + } + + /** + * 终止任务 + * + * @param bo 参数 + */ + @Override + @Transactional(rollbackFor = Exception.class) + public boolean terminationTask(FlowTerminationBo bo) { + try { + Long taskId = bo.getTaskId(); + Task task = taskService.getById(taskId); + if (task == null) { + throw new ServiceException("任务不存在!"); + } + Instance instance = insService.getById(task.getInstanceId()); + if (ObjectUtil.isNotNull(instance)) { + BusinessStatusEnum.checkInvalidStatus(instance.getFlowStatus()); + } + FlowParams flowParams = new FlowParams(); + flowParams.message(bo.getComment()); + flowParams.flowStatus(BusinessStatusEnum.TERMINATION.getStatus()) + .hisStatus(TaskStatusEnum.TERMINATION.getStatus()); + taskService.termination(taskId, flowParams); + return true; + } catch (Exception e) { + log.error(e.getMessage(), e); + throw new ServiceException(e.getMessage()); + } + } + + /** + * 按照任务id查询任务 + * + * @param taskIdList 任务id + */ + @Override + public List selectByIdList(List taskIdList) { + return flowTaskMapper.selectList(new LambdaQueryWrapper<>(FlowTask.class) + .in(FlowTask::getId, taskIdList)); + } + + /** + * 按照任务id查询任务 + * + * @param taskId 任务id + */ + @Override + public FlowTaskVo selectById(Long taskId) { + Task task = taskService.getById(taskId); + if (ObjectUtil.isNull(task)) { + return null; + } + FlowTaskVo flowTaskVo = BeanUtil.toBean(task, FlowTaskVo.class); + Instance instance = insService.getById(task.getInstanceId()); + Definition definition = defService.getById(task.getDefinitionId()); + flowTaskVo.setFlowStatus(instance.getFlowStatus()); + flowTaskVo.setVersion(definition.getVersion()); + flowTaskVo.setFlowCode(definition.getFlowCode()); + flowTaskVo.setFlowName(definition.getFlowName()); + flowTaskVo.setBusinessId(instance.getBusinessId()); + List nodeList = nodeService.getByNodeCodes(Collections.singletonList(flowTaskVo.getNodeCode()), instance.getDefinitionId()); + if (CollUtil.isNotEmpty(nodeList)) { + Node node = nodeList.get(0); + flowTaskVo.setNodeRatio(node.getNodeRatio()); + } + return flowTaskVo; + } + + /** + * 按照任务id查询任务 + * + * @param taskIdList 任务id + * @return 结果 + */ + @Override + public List selectHisTaskByIdList(List taskIdList) { + return flowHisTaskMapper.selectList(new LambdaQueryWrapper<>(FlowHisTask.class) + .in(FlowHisTask::getId, taskIdList)); + } + + /** + * 按照任务id查询任务 + * + * @param taskId 任务id + * @return 结果 + */ + @Override + public FlowHisTask selectHisTaskById(Long taskId) { + return flowHisTaskMapper.selectOne(new LambdaQueryWrapper<>(FlowHisTask.class) + .eq(FlowHisTask::getId, taskId)); + } + + /** + * 按照实例id查询任务 + * + * @param instanceIdList 流程实例id + */ + @Override + public List selectByInstIdList(List instanceIdList) { + return flowTaskMapper.selectList(new LambdaQueryWrapper<>(FlowTask.class) + .in(FlowTask::getInstanceId, instanceIdList)); + } + + /** + * 按照实例id查询任务 + * + * @param instanceId 流程实例id + */ + @Override + public List selectByInstId(Long instanceId) { + return flowTaskMapper.selectList(new LambdaQueryWrapper<>(FlowTask.class) + .eq(FlowTask::getInstanceId, instanceId)); + } + + /** + * 任务操作 + * + * @param bo 参数 + * @param taskOperation 操作类型,委派 delegateTask、转办 transferTask、加签 addSignature、减签 reductionSignature + */ + @Override + @Transactional(rollbackFor = Exception.class) + public boolean taskOperation(TaskOperationBo bo, String taskOperation) { + FlowParams flowParams = new FlowParams(); + flowParams.message(bo.getMessage()); + if (LoginHelper.isSuperAdmin() || LoginHelper.isTenantAdmin()) { + flowParams.ignore(true); + } + + // 根据操作类型构建 FlowParams + switch (taskOperation) { + case DELEGATE_TASK, TRANSFER_TASK -> { + ValidatorUtils.validate(bo, AddGroup.class); + flowParams.addHandlers(Collections.singletonList(bo.getUserId())); + } + case ADD_SIGNATURE -> { + ValidatorUtils.validate(bo, EditGroup.class); + flowParams.addHandlers(bo.getUserIds()); + } + case REDUCTION_SIGNATURE -> { + ValidatorUtils.validate(bo, EditGroup.class); + flowParams.reductionHandlers(bo.getUserIds()); + } + default -> { + log.error("Invalid operation type:{} ", taskOperation); + throw new ServiceException("Invalid operation type " + taskOperation); + } + } + + Long taskId = bo.getTaskId(); + FlowTaskVo flowTaskVo = selectById(taskId); + if ("addSignature".equals(taskOperation) || "reductionSignature".equals(taskOperation)) { + if (flowTaskVo.getNodeRatio().compareTo(BigDecimal.ZERO) == 0) { + throw new ServiceException(flowTaskVo.getNodeName() + "不是会签节点!"); + } + } + // 设置任务状态并执行对应的任务操作 + switch (taskOperation) { + //委派任务 + case DELEGATE_TASK -> { + flowParams.hisStatus(TaskStatusEnum.DEPUTE.getStatus()); + return taskService.depute(taskId, flowParams); + } + //转办任务 + case TRANSFER_TASK -> { + flowParams.hisStatus(TaskStatusEnum.TRANSFER.getStatus()); + return taskService.transfer(taskId, flowParams); + } + //加签,增加办理人 + case ADD_SIGNATURE -> { + flowParams.hisStatus(TaskStatusEnum.SIGN.getStatus()); + return taskService.addSignature(taskId, flowParams); + } + //减签,减少办理人 + case REDUCTION_SIGNATURE -> { + flowParams.hisStatus(TaskStatusEnum.SIGN_OFF.getStatus()); + return taskService.reductionSignature(taskId, flowParams); + } + default -> { + log.error("Invalid operation type:{} ", taskOperation); + throw new ServiceException("Invalid operation type " + taskOperation); + } + } + } + + /** + * 修改任务办理人(此方法将会批量修改所有任务的办理人) + * + * @param taskIdList 任务id + * @param userId 用户id + */ + @Override + @Transactional(rollbackFor = Exception.class) + public boolean updateAssignee(List taskIdList, String userId) { + if (CollUtil.isEmpty(taskIdList)) { + return false; + } + try { + List flowTasks = this.selectByIdList(taskIdList); + // 批量删除现有任务的办理人记录 + if (CollUtil.isNotEmpty(flowTasks)) { + WorkflowUtils.getFlowUserService().deleteByTaskIds(StreamUtils.toList(flowTasks, FlowTask::getId)); + List userList = flowTasks.stream() + .map(flowTask -> { + FlowUser flowUser = new FlowUser(); + flowUser.setType(TaskAssigneeType.APPROVER.getCode()); + flowUser.setProcessedBy(userId); + flowUser.setAssociated(flowTask.getId()); + return flowUser; + }) + .collect(Collectors.toList()); + if (CollUtil.isNotEmpty(userList)) { + WorkflowUtils.getFlowUserService().saveBatch(userList); + } + } + } catch (Exception e) { + log.error(e.getMessage(), e); + throw new ServiceException(e.getMessage()); + } + return true; + } + + /** + * 获取任务所有办理人 + * + * @param taskIdList 任务id + */ + @Override + public Map> currentTaskAllUser(List taskIdList) { + Map> map = new HashMap<>(); + // 获取与当前任务关联的用户列表 + List associatedUsers = WorkflowUtils.getFlowUserService().getByAssociateds(taskIdList); + Map> listMap = StreamUtils.groupByKey(associatedUsers, User::getAssociated); + for (Map.Entry> entry : listMap.entrySet()) { + List value = entry.getValue(); + if (CollUtil.isNotEmpty(value)) { + List userDTOS = userService.selectListByIds(StreamUtils.toList(value, e -> Long.valueOf(e.getProcessedBy()))); + map.put(entry.getKey(), userDTOS); + } + } + return map; + } + + /** + * 获取当前任务的所有办理人 + * + * @param taskId 任务id + */ + @Override + public List currentTaskAllUser(Long taskId) { + // 获取与当前任务关联的用户列表 + List userList = WorkflowUtils.getFlowUserService().getByAssociateds(Collections.singletonList(taskId)); + if (CollUtil.isEmpty(userList)) { + return Collections.emptyList(); + } + return userService.selectListByIds(StreamUtils.toList(userList, e -> Long.valueOf(e.getProcessedBy()))); + } +} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/TestLeaveServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/TestLeaveServiceImpl.java index f81c85f7c..499d64b6e 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/TestLeaveServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/TestLeaveServiceImpl.java @@ -1,16 +1,18 @@ package org.dromara.workflow.service.impl; +import cn.hutool.core.date.DateUtil; +import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; +import org.dromara.common.core.domain.event.ProcessDeleteEvent; import org.dromara.common.core.domain.event.ProcessEvent; import org.dromara.common.core.domain.event.ProcessTaskEvent; import org.dromara.common.core.enums.BusinessStatusEnum; import org.dromara.common.core.service.WorkflowService; import org.dromara.common.core.utils.MapstructUtils; -import org.dromara.common.core.utils.StreamUtils; import org.dromara.common.core.utils.StringUtils; import org.dromara.common.mybatis.core.domain.BaseEntity; import org.dromara.common.mybatis.core.page.PageQuery; @@ -24,7 +26,6 @@ import org.springframework.context.event.EventListener; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; -import java.util.Collection; import java.util.List; /** @@ -82,6 +83,9 @@ public class TestLeaveServiceImpl implements ITestLeaveService { */ @Override public TestLeaveVo insertByBo(TestLeaveBo bo) { + long day = DateUtil.betweenDay(bo.getStartDate(), bo.getEndDate(), true); + // 截止日期也算一天 + bo.setLeaveDays((int) day + 1); TestLeave add = MapstructUtils.convert(bo, TestLeave.class); if (StringUtils.isBlank(add.getStatus())) { add.setStatus(BusinessStatusEnum.DRAFT.getStatus()); @@ -108,23 +112,22 @@ public class TestLeaveServiceImpl implements ITestLeaveService { */ @Override @Transactional(rollbackFor = Exception.class) - public Boolean deleteWithValidByIds(Collection ids) { - List idList = StreamUtils.toList(ids, String::valueOf); - workflowService.deleteRunAndHisInstance(idList); + public Boolean deleteWithValidByIds(List ids) { + workflowService.deleteInstance(ids); return baseMapper.deleteByIds(ids) > 0; } /** - * 总体流程监听(例如: 提交 退回 撤销 终止 作废等) - * 正常使用只需#processEvent.key=='leave1' + * 总体流程监听(例如: 草稿,撤销,退回,作废,终止,已完成等) + * 正常使用只需#processEvent.flowCode=='leave1' * 示例为了方便则使用startsWith匹配了全部示例key * * @param processEvent 参数 */ - @EventListener(condition = "#processEvent.key.startsWith('leave')") + @EventListener(condition = "#processEvent.flowCode.startsWith('leave')") public void processHandler(ProcessEvent processEvent) { log.info("当前任务执行了{}", processEvent.toString()); - TestLeave testLeave = baseMapper.selectById(Long.valueOf(processEvent.getBusinessKey())); + TestLeave testLeave = baseMapper.selectById(Long.valueOf(processEvent.getBusinessId())); testLeave.setStatus(processEvent.getStatus()); if (processEvent.isSubmit()) { testLeave.setStatus(BusinessStatusEnum.WAITING.getStatus()); @@ -134,24 +137,37 @@ public class TestLeaveServiceImpl implements ITestLeaveService { /** * 执行办理任务监听 - * 示例:也可通过 @EventListener(condition = "#processTaskEvent.key=='leave1'")进行判断 + * 示例:也可通过 @EventListener(condition = "#processTaskEvent.flowCode=='leave1'")进行判断 * 在方法中判断流程节点key - * if ("xxx".equals(processTaskEvent.getTaskDefinitionKey())) { + * if ("xxx".equals(processTaskEvent.getNodeCode())) { * //执行业务逻辑 * } * * @param processTaskEvent 参数 */ - @EventListener(condition = "#processTaskEvent.key.startsWith('leave')") + @EventListener(condition = "#processTaskEvent.flowCode.startsWith('leave')") public void processTaskHandler(ProcessTaskEvent processTaskEvent) { - // 所有demo案例的申请人节点id - String[] ids = {"Activity_14633hx", "Activity_19b1i4j", "Activity_0uscrk3", - "Activity_0uscrk3", "Activity_0x6b71j", "Activity_0zy3g6j", "Activity_06a55t0"}; - if (StringUtils.equalsAny(processTaskEvent.getTaskDefinitionKey(), ids)) { - log.info("当前任务执行了{}", processTaskEvent.toString()); - TestLeave testLeave = baseMapper.selectById(Long.valueOf(processTaskEvent.getBusinessKey())); - testLeave.setStatus(BusinessStatusEnum.WAITING.getStatus()); - baseMapper.updateById(testLeave); + log.info("当前任务执行了{}", processTaskEvent.toString()); + TestLeave testLeave = baseMapper.selectById(Long.valueOf(processTaskEvent.getBusinessId())); + testLeave.setStatus(BusinessStatusEnum.WAITING.getStatus()); + baseMapper.updateById(testLeave); + } + + /** + * 监听删除流程事件 + * 正常使用只需#processDeleteEvent.flowCode=='leave1' + * 示例为了方便则使用startsWith匹配了全部示例key + * + * @param processDeleteEvent 参数 + */ + @EventListener(condition = "#processDeleteEvent.flowCode.startsWith('leave')") + public void processDeleteHandler(ProcessDeleteEvent processDeleteEvent) { + log.info("监听删除流程事件,当前任务执行了{}", processDeleteEvent.toString()); + TestLeave testLeave = baseMapper.selectById(Long.valueOf(processDeleteEvent.getBusinessId())); + if (ObjectUtil.isNull(testLeave)) { + return; } + baseMapper.deleteById(testLeave.getId()); } + } diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WfCategoryServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WfCategoryServiceImpl.java deleted file mode 100644 index e5628232b..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WfCategoryServiceImpl.java +++ /dev/null @@ -1,130 +0,0 @@ -package org.dromara.workflow.service.impl; - -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.baomidou.mybatisplus.core.toolkit.Wrappers; -import lombok.RequiredArgsConstructor; -import org.dromara.common.core.utils.MapstructUtils; -import org.dromara.common.core.utils.StringUtils; -import org.dromara.workflow.domain.WfCategory; -import org.dromara.workflow.domain.bo.WfCategoryBo; -import org.dromara.workflow.domain.vo.WfCategoryVo; -import org.dromara.workflow.mapper.WfCategoryMapper; -import org.dromara.workflow.service.IWfCategoryService; -import org.dromara.workflow.utils.QueryUtils; -import org.flowable.engine.RepositoryService; -import org.flowable.engine.repository.Deployment; -import org.flowable.engine.repository.Model; -import org.flowable.engine.repository.ProcessDefinition; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; - -import java.util.Collection; -import java.util.List; - -/** - * 流程分类Service业务层处理 - * - * @author may - * @date 2023-06-28 - */ -@RequiredArgsConstructor -@Service -public class WfCategoryServiceImpl implements IWfCategoryService { - - private final WfCategoryMapper baseMapper; - @Autowired(required = false) - private RepositoryService repositoryService; - - /** - * 查询流程分类 - */ - @Override - public WfCategoryVo queryById(Long id) { - return baseMapper.selectVoById(id); - } - - - /** - * 查询流程分类列表 - */ - @Override - public List queryList(WfCategoryBo bo) { - LambdaQueryWrapper lqw = buildQueryWrapper(bo); - return baseMapper.selectVoList(lqw); - } - - private LambdaQueryWrapper buildQueryWrapper(WfCategoryBo bo) { - LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); - lqw.like(StringUtils.isNotBlank(bo.getCategoryName()), WfCategory::getCategoryName, bo.getCategoryName()); - lqw.eq(StringUtils.isNotBlank(bo.getCategoryCode()), WfCategory::getCategoryCode, bo.getCategoryCode()); - return lqw; - } - - /** - * 新增流程分类 - */ - @Override - public Boolean insertByBo(WfCategoryBo bo) { - WfCategory add = MapstructUtils.convert(bo, WfCategory.class); - validEntityBeforeSave(add); - boolean flag = baseMapper.insert(add) > 0; - if (flag) { - bo.setId(add.getId()); - } - return flag; - } - - /** - * 修改流程分类 - */ - @Override - @Transactional(rollbackFor = Exception.class) - public Boolean updateByBo(WfCategoryBo bo) { - WfCategory update = MapstructUtils.convert(bo, WfCategory.class); - validEntityBeforeSave(update); - WfCategoryVo wfCategoryVo = baseMapper.selectVoById(bo.getId()); - List processDefinitionList = QueryUtils.definitionQuery().processDefinitionCategory(wfCategoryVo.getCategoryCode()).list(); - for (ProcessDefinition processDefinition : processDefinitionList) { - repositoryService.setProcessDefinitionCategory(processDefinition.getId(), bo.getCategoryCode()); - } - List deploymentList = QueryUtils.deploymentQuery().deploymentCategory(wfCategoryVo.getCategoryCode()).list(); - for (Deployment deployment : deploymentList) { - repositoryService.setDeploymentCategory(deployment.getId(), bo.getCategoryCode()); - } - List modelList = QueryUtils.modelQuery().modelCategory(wfCategoryVo.getCategoryCode()).list(); - for (Model model : modelList) { - model.setCategory(bo.getCategoryCode()); - repositoryService.saveModel(model); - } - return baseMapper.updateById(update) > 0; - } - - /** - * 保存前的数据校验 - */ - private void validEntityBeforeSave(WfCategory entity) { - //TODO 做一些数据校验,如唯一约束 - } - - /** - * 批量删除流程分类 - */ - @Override - public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { - if (isValid) { - //TODO 做一些业务上的校验,判断是否需要校验 - } - return baseMapper.deleteByIds(ids) > 0; - } - - /** - * 按照类别编码查询 - * - * @param categoryCode 分类比吗 - */ - @Override - public WfCategory queryByCategoryCode(String categoryCode) { - return baseMapper.selectOne(new LambdaQueryWrapper().eq(WfCategory::getCategoryCode, categoryCode)); - } -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WfDefinitionConfigServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WfDefinitionConfigServiceImpl.java deleted file mode 100644 index b2ffb9ef9..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WfDefinitionConfigServiceImpl.java +++ /dev/null @@ -1,117 +0,0 @@ -package org.dromara.workflow.service.impl; - -import cn.hutool.core.collection.CollUtil; -import org.dromara.common.core.utils.MapstructUtils; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import lombok.RequiredArgsConstructor; -import org.dromara.workflow.domain.WfDefinitionConfig; -import org.dromara.workflow.domain.bo.WfDefinitionConfigBo; -import org.dromara.workflow.domain.vo.WfDefinitionConfigVo; -import org.dromara.workflow.service.IWfDefinitionConfigService; -import org.springframework.stereotype.Service; -import org.dromara.workflow.mapper.WfDefinitionConfigMapper; -import org.springframework.transaction.annotation.Transactional; - -import java.util.List; -import java.util.Collection; - -/** - * 流程定义配置Service业务层处理 - * - * @author may - * @date 2024-03-18 - */ -@RequiredArgsConstructor -@Service -public class WfDefinitionConfigServiceImpl implements IWfDefinitionConfigService { - - private final WfDefinitionConfigMapper baseMapper; - - /** - * 查询流程定义配置 - */ - @Override - public WfDefinitionConfigVo getByDefId(String definitionId) { - return baseMapper.selectVoOne(new LambdaQueryWrapper().eq(WfDefinitionConfig::getDefinitionId, definitionId)); - } - - /** - * 查询流程定义配置 - * - * @param tableName 表名 - * @return 结果 - */ - @Override - public WfDefinitionConfigVo getByTableNameLastVersion(String tableName) { - List wfDefinitionConfigVos = baseMapper.selectVoList( - new LambdaQueryWrapper().eq(WfDefinitionConfig::getTableName, tableName).orderByDesc(WfDefinitionConfig::getVersion)); - if (CollUtil.isNotEmpty(wfDefinitionConfigVos)) { - return wfDefinitionConfigVos.get(0); - } - return null; - } - - /** - * 查询流程定义配置 - * - * @param definitionId 流程定义id - * @param tableName 表名 - * @return 结果 - */ - @Override - public WfDefinitionConfigVo getByDefIdAndTableName(String definitionId, String tableName) { - return baseMapper.selectVoOne(new LambdaQueryWrapper() - .eq(WfDefinitionConfig::getDefinitionId, definitionId) - .eq(WfDefinitionConfig::getTableName, tableName)); - } - - /** - * 查询流程定义配置排除当前查询的流程定义 - * - * @param tableName 表名 - * @param definitionId 流程定义id - */ - @Override - public List getByTableNameNotDefId(String tableName, String definitionId) { - return baseMapper.selectVoList(new LambdaQueryWrapper() - .eq(WfDefinitionConfig::getTableName, tableName) - .ne(WfDefinitionConfig::getDefinitionId, definitionId)); - } - - /** - * 查询流程定义配置列表 - */ - @Override - public List queryList(List definitionIds) { - return baseMapper.selectVoList(new LambdaQueryWrapper().in(WfDefinitionConfig::getDefinitionId, definitionIds)); - } - - /** - * 新增流程定义配置 - */ - @Override - @Transactional(rollbackFor = Exception.class) - public Boolean saveOrUpdate(WfDefinitionConfigBo bo) { - WfDefinitionConfig add = MapstructUtils.convert(bo, WfDefinitionConfig.class); - baseMapper.delete(new LambdaQueryWrapper().eq(WfDefinitionConfig::getTableName, bo.getTableName())); - add.setTableName(add.getTableName().toLowerCase()); - boolean flag = baseMapper.insertOrUpdate(add); - if (flag) { - bo.setId(add.getId()); - } - return flag; - } - - /** - * 批量删除流程定义配置 - */ - @Override - public Boolean deleteByIds(Collection ids) { - return baseMapper.deleteByIds(ids) > 0; - } - - @Override - public Boolean deleteByDefIds(Collection ids) { - return baseMapper.delete(new LambdaQueryWrapper().in(WfDefinitionConfig::getDefinitionId, ids)) > 0; - } -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WfFormManageServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WfFormManageServiceImpl.java deleted file mode 100644 index 55e491178..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WfFormManageServiceImpl.java +++ /dev/null @@ -1,111 +0,0 @@ -package org.dromara.workflow.service.impl; - -import org.dromara.common.core.utils.MapstructUtils; -import org.dromara.common.core.utils.StringUtils; -import org.dromara.common.mybatis.core.page.TableDataInfo; -import org.dromara.common.mybatis.core.page.PageQuery; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.baomidou.mybatisplus.core.toolkit.Wrappers; -import lombok.RequiredArgsConstructor; -import org.dromara.workflow.common.enums.FormTypeEnum; -import org.springframework.stereotype.Service; -import org.dromara.workflow.domain.bo.WfFormManageBo; -import org.dromara.workflow.domain.vo.WfFormManageVo; -import org.dromara.workflow.domain.WfFormManage; -import org.dromara.workflow.mapper.WfFormManageMapper; -import org.dromara.workflow.service.IWfFormManageService; - -import java.util.List; -import java.util.Collection; - -/** - * 表单管理Service业务层处理 - * - * @author may - * @date 2024-03-29 - */ -@RequiredArgsConstructor -@Service -public class WfFormManageServiceImpl implements IWfFormManageService { - - private final WfFormManageMapper baseMapper; - - /** - * 查询表单管理 - */ - @Override - public WfFormManageVo queryById(Long id) { - return baseMapper.selectVoById(id); - } - - @Override - public List queryByIds(List ids) { - return baseMapper.selectVoByIds(ids); - } - - /** - * 查询表单管理列表 - */ - @Override - public TableDataInfo queryPageList(WfFormManageBo bo, PageQuery pageQuery) { - LambdaQueryWrapper lqw = buildQueryWrapper(bo); - Page result = baseMapper.selectVoPage(pageQuery.build(), lqw); - return TableDataInfo.build(result); - } - - @Override - public List selectList() { - List wfFormManageVos = baseMapper.selectVoList(new LambdaQueryWrapper().orderByDesc(WfFormManage::getUpdateTime)); - for (WfFormManageVo wfFormManageVo : wfFormManageVos) { - wfFormManageVo.setFormTypeName(FormTypeEnum.findByType(wfFormManageVo.getFormType())); - } - return wfFormManageVos; - } - - /** - * 查询表单管理列表 - */ - @Override - public List queryList(WfFormManageBo bo) { - LambdaQueryWrapper lqw = buildQueryWrapper(bo); - return baseMapper.selectVoList(lqw); - } - - private LambdaQueryWrapper buildQueryWrapper(WfFormManageBo bo) { - LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); - lqw.like(StringUtils.isNotBlank(bo.getFormName()), WfFormManage::getFormName, bo.getFormName()); - lqw.eq(StringUtils.isNotBlank(bo.getFormType()), WfFormManage::getFormType, bo.getFormType()); - return lqw; - } - - /** - * 新增表单管理 - */ - @Override - public Boolean insertByBo(WfFormManageBo bo) { - WfFormManage add = MapstructUtils.convert(bo, WfFormManage.class); - boolean flag = baseMapper.insert(add) > 0; - if (flag) { - bo.setId(add.getId()); - } - return flag; - } - - /** - * 修改表单管理 - */ - @Override - public Boolean updateByBo(WfFormManageBo bo) { - WfFormManage update = MapstructUtils.convert(bo, WfFormManage.class); - return baseMapper.updateById(update) > 0; - } - - /** - * 批量删除表单管理 - */ - @Override - public Boolean deleteByIds(Collection ids) { - return baseMapper.deleteByIds(ids) > 0; - } -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WfNodeConfigServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WfNodeConfigServiceImpl.java deleted file mode 100644 index 2f71482fa..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WfNodeConfigServiceImpl.java +++ /dev/null @@ -1,75 +0,0 @@ -package org.dromara.workflow.service.impl; - -import cn.hutool.core.collection.CollUtil; -import cn.hutool.core.util.ObjectUtil; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import lombok.RequiredArgsConstructor; -import org.dromara.common.core.utils.StreamUtils; -import org.dromara.workflow.domain.vo.WfFormManageVo; -import org.dromara.workflow.service.IWfFormManageService; -import org.springframework.stereotype.Service; -import org.dromara.workflow.domain.vo.WfNodeConfigVo; -import org.dromara.workflow.domain.WfNodeConfig; -import org.dromara.workflow.mapper.WfNodeConfigMapper; -import org.dromara.workflow.service.IWfNodeConfigService; - -import java.util.Collection; -import java.util.List; - -/** - * 节点配置Service业务层处理 - * - * @author may - * @date 2024-03-30 - */ -@RequiredArgsConstructor -@Service -public class WfNodeConfigServiceImpl implements IWfNodeConfigService { - - private final WfNodeConfigMapper baseMapper; - private final IWfFormManageService wfFormManageService; - - /** - * 查询节点配置 - */ - @Override - public WfNodeConfigVo queryById(Long id) { - return baseMapper.selectVoById(id); - } - - /** - * 保存节点配置 - */ - @Override - public Boolean saveOrUpdate(List list) { - return baseMapper.insertOrUpdateBatch(list); - } - - /** - * 批量删除节点配置 - */ - @Override - public Boolean deleteByIds(Collection ids) { - return baseMapper.deleteByIds(ids) > 0; - } - - - - @Override - public Boolean deleteByDefIds(Collection ids) { - return baseMapper.delete(new LambdaQueryWrapper().in(WfNodeConfig::getDefinitionId, ids)) > 0; - } - - @Override - public List selectByDefIds(Collection ids) { - List wfNodeConfigVos = baseMapper.selectVoList(new LambdaQueryWrapper().in(WfNodeConfig::getDefinitionId, ids)); - if (CollUtil.isNotEmpty(wfNodeConfigVos)) { - List formIds = StreamUtils.toList(wfNodeConfigVos, WfNodeConfigVo::getFormId); - List wfFormManageVos = wfFormManageService.queryByIds(formIds); - for (WfNodeConfigVo wfNodeConfigVo : wfNodeConfigVos) { - wfFormManageVos.stream().filter(e -> ObjectUtil.equals(e.getId(), wfNodeConfigVo.getFormId())).findFirst().ifPresent(wfNodeConfigVo::setWfFormManageVo); - } - } - return wfNodeConfigVos; - } -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WfTaskBackNodeServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WfTaskBackNodeServiceImpl.java deleted file mode 100644 index 6c255d3b0..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WfTaskBackNodeServiceImpl.java +++ /dev/null @@ -1,144 +0,0 @@ -package org.dromara.workflow.service.impl; - -import cn.hutool.core.collection.CollUtil; -import cn.hutool.core.util.ObjectUtil; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import lombok.RequiredArgsConstructor; -import lombok.extern.slf4j.Slf4j; -import org.dromara.common.core.exception.ServiceException; -import org.dromara.common.core.utils.StreamUtils; -import org.dromara.common.core.utils.StringUtils; -import org.dromara.common.satoken.utils.LoginHelper; -import org.dromara.workflow.domain.WfTaskBackNode; -import org.dromara.workflow.domain.vo.MultiInstanceVo; -import org.dromara.workflow.mapper.WfTaskBackNodeMapper; -import org.dromara.workflow.service.IWfTaskBackNodeService; -import org.dromara.workflow.utils.WorkflowUtils; -import org.flowable.task.api.Task; -import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; - -import java.util.ArrayList; -import java.util.List; - -import static org.dromara.workflow.common.constant.FlowConstant.MULTI_INSTANCE; -import static org.dromara.workflow.common.constant.FlowConstant.USER_TASK; - - -/** - * 节点驳回记录Service业务层处理 - * - * @author may - * @date 2024-03-13 - */ -@Slf4j -@RequiredArgsConstructor -@Service -public class WfTaskBackNodeServiceImpl implements IWfTaskBackNodeService { - - private final WfTaskBackNodeMapper wfTaskBackNodeMapper; - - @Override - @Transactional(rollbackFor = Exception.class) - public void recordExecuteNode(Task task) { - List list = getListByInstanceId(task.getProcessInstanceId()); - WfTaskBackNode wfTaskBackNode = new WfTaskBackNode(); - wfTaskBackNode.setNodeId(task.getTaskDefinitionKey()); - wfTaskBackNode.setNodeName(task.getName()); - wfTaskBackNode.setInstanceId(task.getProcessInstanceId()); - wfTaskBackNode.setAssignee(String.valueOf(LoginHelper.getUserId())); - MultiInstanceVo multiInstance = WorkflowUtils.isMultiInstance(task.getProcessDefinitionId(), task.getTaskDefinitionKey()); - if (ObjectUtil.isNotEmpty(multiInstance)) { - wfTaskBackNode.setTaskType(MULTI_INSTANCE); - } else { - wfTaskBackNode.setTaskType(USER_TASK); - } - if (CollUtil.isEmpty(list)) { - wfTaskBackNode.setOrderNo(0); - wfTaskBackNodeMapper.insert(wfTaskBackNode); - } else { - WfTaskBackNode taskNode = StreamUtils.findFirst(list, e -> e.getNodeId().equals(wfTaskBackNode.getNodeId()) && e.getOrderNo() == 0); - if (ObjectUtil.isEmpty(taskNode)) { - wfTaskBackNode.setOrderNo(list.get(0).getOrderNo() + 1); - WfTaskBackNode node = getListByInstanceIdAndNodeId(wfTaskBackNode.getInstanceId(), wfTaskBackNode.getNodeId()); - if (ObjectUtil.isNotEmpty(node)) { - node.setAssignee(node.getAssignee() + StringUtils.SEPARATOR + LoginHelper.getUserId()); - wfTaskBackNodeMapper.updateById(node); - } else { - wfTaskBackNodeMapper.insert(wfTaskBackNode); - } - } - } - } - - @Override - public List getListByInstanceId(String processInstanceId) { - LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); - wrapper.eq(WfTaskBackNode::getInstanceId, processInstanceId); - wrapper.orderByDesc(WfTaskBackNode::getOrderNo); - return wfTaskBackNodeMapper.selectList(wrapper); - } - - @Override - public WfTaskBackNode getListByInstanceIdAndNodeId(String processInstanceId, String nodeId) { - LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.eq(WfTaskBackNode::getInstanceId, processInstanceId); - queryWrapper.eq(WfTaskBackNode::getNodeId, nodeId); - return wfTaskBackNodeMapper.selectOne(queryWrapper); - } - - @Override - @Transactional(rollbackFor = Exception.class) - public boolean deleteBackTaskNode(String processInstanceId, String targetActivityId) { - try { - LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.eq(WfTaskBackNode::getInstanceId, processInstanceId); - queryWrapper.eq(WfTaskBackNode::getNodeId, targetActivityId); - WfTaskBackNode actTaskNode = wfTaskBackNodeMapper.selectOne(queryWrapper); - if (ObjectUtil.isNotNull(actTaskNode)) { - Integer orderNo = actTaskNode.getOrderNo(); - List taskNodeList = getListByInstanceId(processInstanceId); - List ids = new ArrayList<>(); - if (CollUtil.isNotEmpty(taskNodeList)) { - for (WfTaskBackNode taskNode : taskNodeList) { - if (taskNode.getOrderNo() >= orderNo) { - ids.add(taskNode.getId()); - } - } - } - if (CollUtil.isNotEmpty(ids)) { - wfTaskBackNodeMapper.deleteByIds(ids); - } - } - return true; - } catch (Exception e) { - log.error(e.getMessage(), e); - throw new ServiceException("删除失败"); - } - } - - @Override - @Transactional(rollbackFor = Exception.class) - public boolean deleteByInstanceId(String processInstanceId) { - LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); - wrapper.eq(WfTaskBackNode::getInstanceId, processInstanceId); - List list = wfTaskBackNodeMapper.selectList(wrapper); - int delete = wfTaskBackNodeMapper.delete(wrapper); - if (list.size() != delete) { - throw new ServiceException("删除失败"); - } - return true; - } - - @Override - public boolean deleteByInstanceIds(List processInstanceIds) { - LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); - wrapper.in(WfTaskBackNode::getInstanceId, processInstanceIds); - List list = wfTaskBackNodeMapper.selectList(wrapper); - int delete = wfTaskBackNodeMapper.delete(wrapper); - if (list.size() != delete) { - throw new ServiceException("删除失败"); - } - return true; - } -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WorkflowServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WorkflowServiceImpl.java index b03658444..d00c90735 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WorkflowServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WorkflowServiceImpl.java @@ -1,14 +1,18 @@ package org.dromara.workflow.service.impl; -import cn.hutool.core.util.StrUtil; +import cn.hutool.core.bean.BeanUtil; +import cn.hutool.core.util.ObjectUtil; import lombok.RequiredArgsConstructor; +import org.dromara.common.core.domain.dto.CompleteTaskDTO; +import org.dromara.common.core.domain.dto.StartProcessDTO; import org.dromara.common.core.service.WorkflowService; -import org.dromara.workflow.domain.ActHiProcinst; -import org.dromara.workflow.service.IActHiProcinstService; -import org.dromara.workflow.service.IActProcessInstanceService; -import org.dromara.workflow.utils.WorkflowUtils; -import org.flowable.engine.TaskService; -import org.springframework.beans.factory.annotation.Autowired; +import org.dromara.common.core.utils.StringUtils; +import org.dromara.warm.flow.orm.entity.FlowInstance; +import org.dromara.workflow.domain.bo.CompleteTaskBo; +import org.dromara.workflow.domain.bo.StartProcessBo; +import org.dromara.workflow.service.IFlwDefinitionService; +import org.dromara.workflow.service.IFlwInstanceService; +import org.dromara.workflow.service.IFlwTaskService; import org.springframework.stereotype.Service; import java.util.List; @@ -23,19 +27,19 @@ import java.util.Map; @Service public class WorkflowServiceImpl implements WorkflowService { - @Autowired(required = false) - private TaskService taskService; - private final IActProcessInstanceService actProcessInstanceService; - private final IActHiProcinstService actHiProcinstService; + private final IFlwInstanceService flwInstanceService; + private final IFlwDefinitionService flwDefinitionService; + private final IFlwTaskService flwTaskService; + /** - * 运行中的实例 删除程实例,删除历史记录,删除业务与流程关联信息 + * 删除流程实例 * - * @param businessKeys 业务id + * @param businessIds 业务id * @return 结果 */ @Override - public boolean deleteRunAndHisInstance(List businessKeys) { - return actProcessInstanceService.deleteRunAndHisInstance(businessKeys); + public boolean deleteInstance(List businessIds) { + return flwInstanceService.deleteByBusinessIds(businessIds); } /** @@ -44,78 +48,72 @@ public class WorkflowServiceImpl implements WorkflowService { * @param taskId 任务id */ @Override - public String getBusinessStatusByTaskId(String taskId) { - return WorkflowUtils.getBusinessStatusByTaskId(taskId); + public String getBusinessStatusByTaskId(Long taskId) { + FlowInstance flowInstance = flwInstanceService.selectByTaskId(taskId); + return ObjectUtil.isNotNull(flowInstance) ? flowInstance.getFlowStatus() : StringUtils.EMPTY; } /** * 获取当前流程状态 * - * @param businessKey 业务id + * @param businessId 业务id */ @Override - public String getBusinessStatus(String businessKey) { - return WorkflowUtils.getBusinessStatus(businessKey); + public String getBusinessStatus(String businessId) { + FlowInstance flowInstance = flwInstanceService.selectInstByBusinessId(businessId); + return ObjectUtil.isNotNull(flowInstance) ? flowInstance.getFlowStatus() : StringUtils.EMPTY; } /** - * 设置流程变量(全局变量) + * 设置流程变量 * - * @param taskId 任务id - * @param variableName 变量名称 - * @param value 变量值 + * @param instanceId 流程实例id + * @param variables 流程变量 */ @Override - public void setVariable(String taskId, String variableName, Object value) { - taskService.setVariable(taskId, variableName, value); + public void setVariable(Long instanceId, Map variables) { + flwInstanceService.setVariable(instanceId, variables); } /** - * 设置流程变量(全局变量) + * 按照业务id查询流程实例id * - * @param taskId 任务id - * @param variables 流程变量 + * @param businessId 业务id + * @return 结果 */ @Override - public void setVariables(String taskId, Map variables) { - taskService.setVariables(taskId, variables); + public Long getInstanceIdByBusinessId(String businessId) { + FlowInstance flowInstance = flwInstanceService.selectInstByBusinessId(businessId); + return ObjectUtil.isNotNull(flowInstance) ? flowInstance.getId() : null; } /** - * 设置流程变量(本地变量,非全局变量) + * 新增租户流程定义 * - * @param taskId 任务id - * @param variableName 变量名称 - * @param value 变量值 + * @param tenantId 租户id */ @Override - public void setVariableLocal(String taskId, String variableName, Object value) { - taskService.setVariableLocal(taskId, variableName, value); + public void syncDef(String tenantId) { + flwDefinitionService.syncDef(tenantId); } /** - * 设置流程变量(本地变量,非全局变量) + * 启动流程 * - * @param taskId 任务id - * @param variables 流程变量 + * @param startProcess 参数 */ @Override - public void setVariablesLocal(String taskId, Map variables) { - taskService.setVariablesLocal(taskId, variables); + public Map startWorkFlow(StartProcessDTO startProcess) { + return flwTaskService.startWorkFlow(BeanUtil.toBean(startProcess, StartProcessBo.class)); } /** - * 按照业务id查询流程实例id + * 办理任务 * - * @param businessKey 业务id - * @return 结果 + * @param completeTask 参数 */ @Override - public String getInstanceIdByBusinessKey(String businessKey) { - ActHiProcinst actHiProcinst = actHiProcinstService.selectByBusinessKey(businessKey); - if (actHiProcinst == null) { - return StrUtil.EMPTY; - } - return actHiProcinst.getId(); + public boolean completeTask(CompleteTaskDTO completeTask) { + return flwTaskService.completeTask(BeanUtil.toBean(completeTask, CompleteTaskBo.class)); } } diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/utils/ModelUtils.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/utils/ModelUtils.java deleted file mode 100644 index 7c5377ed7..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/utils/ModelUtils.java +++ /dev/null @@ -1,289 +0,0 @@ -package org.dromara.workflow.utils; - -import cn.hutool.core.collection.CollUtil; -import cn.hutool.core.collection.CollectionUtil; -import cn.hutool.core.io.IoUtil; -import cn.hutool.core.util.ObjectUtil; -import cn.hutool.core.util.StrUtil; -import com.fasterxml.jackson.databind.JsonNode; -import com.fasterxml.jackson.databind.ObjectMapper; -import lombok.AccessLevel; -import lombok.NoArgsConstructor; -import org.dromara.common.core.utils.SpringUtils; -import org.dromara.common.core.utils.StreamUtils; -import org.dromara.common.core.utils.StringUtils; -import org.dromara.common.json.utils.JsonUtils; -import org.dromara.workflow.domain.vo.MultiInstanceVo; -import org.flowable.bpmn.converter.BpmnXMLConverter; -import org.flowable.bpmn.model.*; -import org.flowable.bpmn.model.Process; -import org.flowable.editor.language.json.converter.BpmnJsonConverter; -import org.flowable.engine.ProcessEngine; - -import javax.xml.stream.XMLInputFactory; -import javax.xml.stream.XMLStreamException; -import javax.xml.stream.XMLStreamReader; -import java.io.ByteArrayInputStream; -import java.io.IOException; -import java.io.InputStream; -import java.rmi.ServerException; -import java.util.*; -import java.util.stream.Collectors; - -/** - * 模型工具 - * - * @author may - */ -@NoArgsConstructor(access = AccessLevel.PRIVATE) -public class ModelUtils { - - private static final ProcessEngine PROCESS_ENGINE = SpringUtils.getBean(ProcessEngine.class); - - public static BpmnModel xmlToBpmnModel(String xml) throws IOException { - if (xml == null) { - throw new ServerException("xml不能为空"); - } - try { - InputStream inputStream = new ByteArrayInputStream(StrUtil.utf8Bytes(xml)); - XMLInputFactory factory = XMLInputFactory.newInstance(); - XMLStreamReader reader = factory.createXMLStreamReader(inputStream); - return new BpmnXMLConverter().convertToBpmnModel(reader); - } catch (XMLStreamException e) { - throw new ServerException(e.getMessage()); - } - } - - /** - * bpmnModel转为xml - * - * @param jsonBytes json - */ - public static byte[] bpmnJsonToXmlBytes(byte[] jsonBytes) throws IOException { - if (jsonBytes == null) { - return new byte[0]; - } - // 1. json字节码转成 BpmnModel 对象 - ObjectMapper objectMapper = JsonUtils.getObjectMapper(); - JsonNode jsonNode = objectMapper.readTree(jsonBytes); - BpmnModel bpmnModel = new BpmnJsonConverter().convertToBpmnModel(jsonNode); - - if (bpmnModel.getProcesses().isEmpty()) { - return new byte[0]; - } - // 2.将bpmnModel转为xml - return new BpmnXMLConverter().convertToXML(bpmnModel); - } - - /** - * xml转为bpmnModel - * - * @param xmlBytes xml - */ - public static BpmnModel xmlToBpmnModel(byte[] xmlBytes) throws XMLStreamException { - ByteArrayInputStream byteArrayInputStream = IoUtil.toStream(xmlBytes); - XMLInputFactory xif = XMLInputFactory.newInstance(); - XMLStreamReader xtr = xif.createXMLStreamReader(byteArrayInputStream); - return new BpmnXMLConverter().convertToBpmnModel(xtr); - } - - /** - * 校验模型 - * - * @param bpmnModel bpmn模型 - */ - public static void checkBpmnModel(BpmnModel bpmnModel) throws ServerException { - Collection flowElements = bpmnModel.getMainProcess().getFlowElements(); - - checkBpmnNode(flowElements, false); - - List subProcessList = flowElements.stream().filter(SubProcess.class::isInstance).map(SubProcess.class::cast).collect(Collectors.toList()); - if (!CollUtil.isEmpty(subProcessList)) { - for (SubProcess subProcess : subProcessList) { - Collection subProcessFlowElements = subProcess.getFlowElements(); - checkBpmnNode(subProcessFlowElements, true); - } - } - List multiInstanceVoList = new ArrayList<>(); - for (FlowElement flowElement : flowElements) { - if (flowElement instanceof UserTask && ObjectUtil.isNotEmpty(((UserTask) flowElement).getLoopCharacteristics()) && StringUtils.isNotBlank(((UserTask) flowElement).getLoopCharacteristics().getInputDataItem())) { - MultiInstanceVo multiInstanceVo = new MultiInstanceVo(); - multiInstanceVo.setAssigneeList(((UserTask) flowElement).getLoopCharacteristics().getInputDataItem()); - multiInstanceVoList.add(multiInstanceVo); - } - } - - if (CollectionUtil.isNotEmpty(multiInstanceVoList) && multiInstanceVoList.size() > 1) { - Map> assigneeListGroup = StreamUtils.groupByKey(multiInstanceVoList, MultiInstanceVo::getAssigneeList); - for (Map.Entry> entry : assigneeListGroup.entrySet()) { - List value = entry.getValue(); - if (CollectionUtil.isNotEmpty(value) && value.size() > 1) { - String key = entry.getKey(); - throw new ServerException("会签人员集合【" + key + "】重复,请重新设置集合KEY"); - } - } - } - } - - /** - * 校验bpmn节点是否合法 - * - * @param flowElements 节点集合 - * @param subtask 是否子流程 - */ - private static void checkBpmnNode(Collection flowElements, boolean subtask) throws ServerException { - - if (CollUtil.isEmpty(flowElements)) { - throw new ServerException(subtask ? "子流程必须存在节点" : "必须存在节点!"); - } - - List startEventList = flowElements.stream().filter(StartEvent.class::isInstance).map(StartEvent.class::cast).collect(Collectors.toList()); - if (CollUtil.isEmpty(startEventList)) { - throw new ServerException(subtask ? "子流程必须存在开始节点" : "必须存在开始节点!"); - } - - if (startEventList.size() > 1) { - throw new ServerException(subtask ? "子流程只能存在一个开始节点" : "只能存在一个开始节点!"); - } - - StartEvent startEvent = startEventList.get(0); - List outgoingFlows = startEvent.getOutgoingFlows(); - if (CollUtil.isEmpty(outgoingFlows)) { - throw new ServerException(subtask ? "子流程流程节点为空,请至少设计一条主线流程!" : "流程节点为空,请至少设计一条主线流程!"); - } - - FlowElement targetFlowElement = outgoingFlows.get(0).getTargetFlowElement(); - if (!(targetFlowElement instanceof UserTask) && !subtask) { - throw new ServerException("开始节点后第一个节点必须是用户任务!"); - } - //开始节点后第一个节点申请人节点 - if ((targetFlowElement instanceof UserTask) && !subtask) { - UserTask userTask = (UserTask) targetFlowElement; - if (StringUtils.isBlank(userTask.getFormKey())) { - throw new ServerException("申请人节点必须选择表单!"); - } - } - List endEventList = flowElements.stream().filter(EndEvent.class::isInstance).map(EndEvent.class::cast).collect(Collectors.toList()); - if (CollUtil.isEmpty(endEventList)) { - throw new ServerException(subtask ? "子流程必须存在结束节点!" : "必须存在结束节点!"); - } - } - - /** - * 获取流程全部用户节点 - * - * @param processDefinitionId 流程定义id - */ - public static List getUserTaskFlowElements(String processDefinitionId) { - BpmnModel bpmnModel = PROCESS_ENGINE.getRepositoryService().getBpmnModel(processDefinitionId); - List list = new ArrayList<>(); - List processes = bpmnModel.getProcesses(); - Collection flowElements = processes.get(0).getFlowElements(); - buildUserTaskFlowElements(flowElements, list); - return list; - } - - /** - * 递归获取所有节点 - * - * @param flowElements 节点信息 - * @param list 集合 - */ - private static void buildUserTaskFlowElements(Collection flowElements, List list) { - for (FlowElement flowElement : flowElements) { - if (flowElement instanceof SubProcess) { - Collection subFlowElements = ((SubProcess) flowElement).getFlowElements(); - buildUserTaskFlowElements(subFlowElements, list); - } else if (flowElement instanceof UserTask) { - list.add((UserTask) flowElement); - } - } - } - - /** - * 获取流程全部节点 - * - * @param processDefinitionId 流程定义id - */ - public static List getFlowElements(String processDefinitionId) { - BpmnModel bpmnModel = PROCESS_ENGINE.getRepositoryService().getBpmnModel(processDefinitionId); - List list = new ArrayList<>(); - List processes = bpmnModel.getProcesses(); - Collection flowElements = processes.get(0).getFlowElements(); - buildFlowElements(flowElements, list); - return list; - } - - /** - * 递归获取所有节点 - * - * @param flowElements 节点信息 - * @param list 集合 - */ - private static void buildFlowElements(Collection flowElements, List list) { - for (FlowElement flowElement : flowElements) { - list.add(flowElement); - if (flowElement instanceof SubProcess) { - Collection subFlowElements = ((SubProcess) flowElement).getFlowElements(); - buildFlowElements(subFlowElements, list); - } - } - } - - /** - * 获取全部扩展信息 - * - * @param processDefinitionId 流程定义id - */ - public static Map> getExtensionElements(String processDefinitionId) { - Map> map = new HashMap<>(); - List flowElements = getFlowElements(processDefinitionId); - for (FlowElement flowElement : flowElements) { - if (flowElement instanceof UserTask && CollUtil.isNotEmpty(flowElement.getExtensionElements())) { - map.putAll(flowElement.getExtensionElements()); - } - } - return map; - } - - /** - * 获取某个节点的扩展信息 - * - * @param processDefinitionId 流程定义id - * @param flowElementId 节点id - */ - public static Map> getExtensionElement(String processDefinitionId, String flowElementId) { - BpmnModel bpmnModel = PROCESS_ENGINE.getRepositoryService().getBpmnModel(processDefinitionId); - Process process = bpmnModel.getMainProcess(); - FlowElement flowElement = process.getFlowElement(flowElementId); - return flowElement.getExtensionElements(); - } - - /** - * 判断当前节点是否为用户任务 - * - * @param processDefinitionId 流程定义id - * @param taskDefinitionKey 流程定义id - */ - public static boolean isUserTask(String processDefinitionId, String taskDefinitionKey) { - BpmnModel bpmnModel = PROCESS_ENGINE.getRepositoryService().getBpmnModel(processDefinitionId); - FlowNode flowNode = (FlowNode) bpmnModel.getFlowElement(taskDefinitionKey); - return flowNode instanceof UserTask; - } - - /** - * 获取申请人节点 - * - * @param processDefinitionId 流程定义id - * @return 结果 - */ - public static UserTask getApplyUserTask(String processDefinitionId) { - BpmnModel bpmnModel = PROCESS_ENGINE.getRepositoryService().getBpmnModel(processDefinitionId); - Collection flowElements = bpmnModel.getMainProcess().getFlowElements(); - List startEventList = flowElements.stream().filter(StartEvent.class::isInstance).map(StartEvent.class::cast).collect(Collectors.toList()); - StartEvent startEvent = startEventList.get(0); - List outgoingFlows = startEvent.getOutgoingFlows(); - FlowElement targetFlowElement = outgoingFlows.get(0).getTargetFlowElement(); - return (UserTask) targetFlowElement; - } -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/utils/QueryUtils.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/utils/QueryUtils.java deleted file mode 100644 index df928dc72..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/utils/QueryUtils.java +++ /dev/null @@ -1,169 +0,0 @@ -package org.dromara.workflow.utils; - -import cn.hutool.core.bean.BeanUtil; -import lombok.AccessLevel; -import lombok.NoArgsConstructor; -import org.dromara.common.core.utils.SpringUtils; -import org.dromara.common.tenant.helper.TenantHelper; -import org.dromara.workflow.domain.vo.TaskVo; -import org.flowable.engine.ProcessEngine; -import org.flowable.engine.history.HistoricActivityInstanceQuery; -import org.flowable.engine.history.HistoricProcessInstanceQuery; -import org.flowable.engine.repository.DeploymentQuery; -import org.flowable.engine.repository.ModelQuery; -import org.flowable.engine.repository.ProcessDefinitionQuery; -import org.flowable.engine.runtime.ProcessInstance; -import org.flowable.engine.runtime.ProcessInstanceQuery; -import org.flowable.task.api.Task; -import org.flowable.task.api.TaskQuery; -import org.flowable.task.api.history.HistoricTaskInstanceQuery; - -import java.util.Collection; -import java.util.List; -import java.util.Set; - -/** - * 查询工具 - * - * @author Lion Li - */ -@NoArgsConstructor(access = AccessLevel.PRIVATE) -public class QueryUtils { - - private static final ProcessEngine PROCESS_ENGINE = SpringUtils.getBean(ProcessEngine.class); - - public static ModelQuery modelQuery() { - ModelQuery query = PROCESS_ENGINE.getRepositoryService().createModelQuery(); - if (TenantHelper.isEnable()) { - query.modelTenantId(TenantHelper.getTenantId()); - } - return query; - } - - public static ProcessDefinitionQuery definitionQuery() { - ProcessDefinitionQuery query = PROCESS_ENGINE.getRepositoryService().createProcessDefinitionQuery(); - if (TenantHelper.isEnable()) { - query.processDefinitionTenantId(TenantHelper.getTenantId()); - } - return query; - } - - public static DeploymentQuery deploymentQuery() { - DeploymentQuery query = PROCESS_ENGINE.getRepositoryService().createDeploymentQuery(); - if (TenantHelper.isEnable()) { - query.deploymentTenantId(TenantHelper.getTenantId()); - } - return query; - } - - public static DeploymentQuery deploymentQuery(String deploymentId) { - return deploymentQuery().deploymentId(deploymentId); - } - - public static DeploymentQuery deploymentQuery(List deploymentIds) { - return deploymentQuery().deploymentIds(deploymentIds); - } - - public static HistoricTaskInstanceQuery hisTaskInstanceQuery() { - HistoricTaskInstanceQuery query = PROCESS_ENGINE.getHistoryService().createHistoricTaskInstanceQuery(); - if (TenantHelper.isEnable()) { - query.taskTenantId(TenantHelper.getTenantId()); - } - return query; - } - - public static HistoricTaskInstanceQuery hisTaskInstanceQuery(String processInstanceId) { - return hisTaskInstanceQuery().processInstanceId(processInstanceId); - } - - public static HistoricTaskInstanceQuery hisTaskBusinessKeyQuery(String businessKey) { - return hisTaskInstanceQuery().processInstanceBusinessKey(businessKey); - } - - public static ProcessInstanceQuery instanceQuery() { - ProcessInstanceQuery query = PROCESS_ENGINE.getRuntimeService().createProcessInstanceQuery(); - if (TenantHelper.isEnable()) { - query.processInstanceTenantId(TenantHelper.getTenantId()); - } - return query; - } - - public static ProcessInstanceQuery instanceQuery(String processInstanceId) { - return instanceQuery().processInstanceId(processInstanceId); - } - - public static ProcessInstanceQuery businessKeyQuery(String businessKey) { - return instanceQuery().processInstanceBusinessKey(businessKey); - } - - public static ProcessInstanceQuery instanceQuery(Set processInstanceIds) { - return instanceQuery().processInstanceIds(processInstanceIds); - } - - public static HistoricProcessInstanceQuery hisInstanceQuery() { - HistoricProcessInstanceQuery query = PROCESS_ENGINE.getHistoryService().createHistoricProcessInstanceQuery(); - if (TenantHelper.isEnable()) { - query.processInstanceTenantId(TenantHelper.getTenantId()); - } - return query; - } - - public static HistoricProcessInstanceQuery hisInstanceQuery(String processInstanceId) { - return hisInstanceQuery().processInstanceId(processInstanceId); - } - - public static HistoricProcessInstanceQuery hisBusinessKeyQuery(String businessKey) { - return hisInstanceQuery().processInstanceBusinessKey(businessKey); - } - - public static HistoricProcessInstanceQuery hisInstanceQuery(Set processInstanceIds) { - return hisInstanceQuery().processInstanceIds(processInstanceIds); - } - - public static HistoricActivityInstanceQuery hisActivityInstanceQuery() { - HistoricActivityInstanceQuery query = PROCESS_ENGINE.getHistoryService().createHistoricActivityInstanceQuery(); - if (TenantHelper.isEnable()) { - query.activityTenantId(TenantHelper.getTenantId()); - } - return query; - } - - public static HistoricActivityInstanceQuery hisActivityInstanceQuery(String processInstanceId) { - return hisActivityInstanceQuery().processInstanceId(processInstanceId); - } - - public static TaskQuery taskQuery() { - TaskQuery query = PROCESS_ENGINE.getTaskService().createTaskQuery(); - if (TenantHelper.isEnable()) { - query.taskTenantId(TenantHelper.getTenantId()); - } - return query; - } - - public static TaskQuery taskQuery(String processInstanceId) { - return taskQuery().processInstanceId(processInstanceId); - } - - public static TaskQuery taskQuery(Collection processInstanceIds) { - return taskQuery().processInstanceIdIn(processInstanceIds); - } - - /** - * 按照任务id查询当前任务 - * - * @param taskId 任务id - */ - public static TaskVo getTask(String taskId) { - Task task = PROCESS_ENGINE.getTaskService().createTaskQuery().taskId(taskId).singleResult(); - if (task == null) { - return null; - } - ProcessInstance processInstance = QueryUtils.instanceQuery(task.getProcessInstanceId()).singleResult(); - TaskVo taskVo = BeanUtil.toBean(task, TaskVo.class); - taskVo.setBusinessKey(processInstance.getBusinessKey()); - taskVo.setMultiInstance(WorkflowUtils.isMultiInstance(task.getProcessDefinitionId(), task.getTaskDefinitionKey()) != null); - String businessStatus = WorkflowUtils.getBusinessStatus(taskVo.getBusinessKey()); - taskVo.setBusinessStatus(businessStatus); - return taskVo; - } -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/utils/WorkflowUtils.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/utils/WorkflowUtils.java index d7c44723b..0bf8f429b 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/utils/WorkflowUtils.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/utils/WorkflowUtils.java @@ -2,43 +2,42 @@ package org.dromara.workflow.utils; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.util.ObjectUtil; -import cn.hutool.core.util.StrUtil; -import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import lombok.AccessLevel; import lombok.NoArgsConstructor; -import org.dromara.common.core.domain.dto.RoleDTO; import org.dromara.common.core.domain.dto.UserDTO; -import org.dromara.common.core.service.UserService; import org.dromara.common.core.utils.SpringUtils; import org.dromara.common.core.utils.StreamUtils; import org.dromara.common.core.utils.StringUtils; import org.dromara.common.mail.utils.MailUtils; -import org.dromara.common.satoken.utils.LoginHelper; -import org.dromara.common.tenant.helper.TenantHelper; -import org.dromara.common.websocket.dto.WebSocketMessageDto; -import org.dromara.common.websocket.utils.WebSocketUtils; -import org.dromara.workflow.common.constant.FlowConstant; +import org.dromara.common.sse.dto.SseMessageDto; +import org.dromara.common.sse.utils.SseMessageUtils; +import org.dromara.warm.flow.core.constant.ExceptionCons; +import org.dromara.warm.flow.core.dto.FlowParams; +import org.dromara.warm.flow.core.entity.Node; +import org.dromara.warm.flow.core.entity.Task; +import org.dromara.warm.flow.core.entity.User; +import org.dromara.warm.flow.core.enums.NodeType; +import org.dromara.warm.flow.core.enums.SkipType; +import org.dromara.warm.flow.core.service.NodeService; +import org.dromara.warm.flow.core.service.TaskService; +import org.dromara.warm.flow.core.service.UserService; +import org.dromara.warm.flow.core.utils.AssertUtil; +import org.dromara.warm.flow.orm.entity.FlowNode; +import org.dromara.warm.flow.orm.entity.FlowTask; +import org.dromara.warm.flow.orm.entity.FlowUser; +import org.dromara.warm.flow.orm.mapper.FlowNodeMapper; +import org.dromara.warm.flow.orm.mapper.FlowTaskMapper; import org.dromara.workflow.common.enums.MessageTypeEnum; -import org.dromara.workflow.common.enums.TaskStatusEnum; -import org.dromara.workflow.domain.ActHiTaskinst; -import org.dromara.workflow.domain.vo.MultiInstanceVo; -import org.dromara.workflow.domain.vo.ParticipantVo; -import org.dromara.workflow.flowable.cmd.UpdateHiTaskInstCmd; -import org.dromara.workflow.mapper.ActHiTaskinstMapper; -import org.flowable.bpmn.model.BpmnModel; -import org.flowable.bpmn.model.FlowNode; -import org.flowable.common.engine.api.delegate.Expression; -import org.flowable.engine.ProcessEngine; -import org.flowable.engine.history.HistoricProcessInstance; -import org.flowable.engine.impl.bpmn.behavior.ParallelMultiInstanceBehavior; -import org.flowable.engine.impl.bpmn.behavior.SequentialMultiInstanceBehavior; -import org.flowable.identitylink.api.history.HistoricIdentityLink; -import org.flowable.task.api.Task; -import org.flowable.task.api.TaskQuery; -import org.flowable.task.api.history.HistoricTaskInstance; -import org.flowable.task.service.impl.persistence.entity.TaskEntity; +import org.dromara.workflow.service.IFlwTaskAssigneeService; +import org.dromara.workflow.service.IFlwTaskService; + +import java.util.ArrayList; +import java.util.HashSet; +import java.util.List; +import java.util.Set; +import java.util.stream.Collectors; -import java.util.*; /** * 工作流工具 @@ -48,220 +47,84 @@ import java.util.*; @NoArgsConstructor(access = AccessLevel.PRIVATE) public class WorkflowUtils { - private static final ProcessEngine PROCESS_ENGINE = SpringUtils.getBean(ProcessEngine.class); - private static final ActHiTaskinstMapper ACT_HI_TASKINST_MAPPER = SpringUtils.getBean(ActHiTaskinstMapper.class); + private static final IFlwTaskAssigneeService TASK_ASSIGNEE_SERVICE = SpringUtils.getBean(IFlwTaskAssigneeService.class); + private static final IFlwTaskService FLW_TASK_SERVICE = SpringUtils.getBean(IFlwTaskService.class); + private static final FlowNodeMapper FLOW_NODE_MAPPER = SpringUtils.getBean(FlowNodeMapper.class); + private static final FlowTaskMapper FLOW_TASK_MAPPER = SpringUtils.getBean(FlowTaskMapper.class); + private static final UserService USER_SERVICE = SpringUtils.getBean(UserService.class); + private static final TaskService TASK_SERVICE = SpringUtils.getBean(TaskService.class); + private static final NodeService NODE_SERVICE = SpringUtils.getBean(NodeService.class); /** - * 创建一个新任务 - * - * @param currentTask 参数 + * 获取工作流用户service */ - public static TaskEntity createNewTask(Task currentTask) { - TaskEntity task = null; - if (ObjectUtil.isNotEmpty(currentTask)) { - task = (TaskEntity) PROCESS_ENGINE.getTaskService().newTask(); - task.setCategory(currentTask.getCategory()); - task.setDescription(currentTask.getDescription()); - task.setAssignee(currentTask.getAssignee()); - task.setName(currentTask.getName()); - task.setProcessDefinitionId(currentTask.getProcessDefinitionId()); - task.setProcessInstanceId(currentTask.getProcessInstanceId()); - task.setTaskDefinitionKey(currentTask.getTaskDefinitionKey()); - task.setPriority(currentTask.getPriority()); - task.setCreateTime(new Date()); - task.setTenantId(TenantHelper.getTenantId()); - PROCESS_ENGINE.getTaskService().saveTask(task); - } - if (ObjectUtil.isNotNull(task)) { - UpdateHiTaskInstCmd updateHiTaskInstCmd = new UpdateHiTaskInstCmd(Collections.singletonList(task.getId()), task.getProcessDefinitionId(), task.getProcessInstanceId()); - PROCESS_ENGINE.getManagementService().executeCommand(updateHiTaskInstCmd); - } - return task; + public static UserService getFlowUserService() { + return USER_SERVICE; } /** - * 抄送任务 + * 构建工作流用户 * - * @param parentTaskList 父级任务 - * @param userIds 人员id + * @param userList 办理用户 + * @param taskId 任务ID + * @return 用户 */ - public static void createCopyTask(List parentTaskList, List userIds) { - List list = new ArrayList<>(); - String tenantId = TenantHelper.getTenantId(); - for (Task parentTask : parentTaskList) { - for (Long userId : userIds) { - TaskEntity newTask = (TaskEntity) PROCESS_ENGINE.getTaskService().newTask(); - newTask.setParentTaskId(parentTask.getId()); - newTask.setAssignee(userId.toString()); - newTask.setName("【抄送】-" + parentTask.getName()); - newTask.setProcessDefinitionId(parentTask.getProcessDefinitionId()); - newTask.setProcessInstanceId(parentTask.getProcessInstanceId()); - newTask.setTaskDefinitionKey(parentTask.getTaskDefinitionKey()); - newTask.setTenantId(tenantId); - list.add(newTask); - } - } - PROCESS_ENGINE.getTaskService().bulkSaveTasks(list); - if (CollUtil.isNotEmpty(list) && CollUtil.isNotEmpty(parentTaskList)) { - String processInstanceId = parentTaskList.get(0).getProcessInstanceId(); - String processDefinitionId = parentTaskList.get(0).getProcessDefinitionId(); - List taskIds = StreamUtils.toList(list, Task::getId); - ActHiTaskinst actHiTaskinst = new ActHiTaskinst(); - actHiTaskinst.setProcDefId(processDefinitionId); - actHiTaskinst.setProcInstId(processInstanceId); - actHiTaskinst.setScopeType(TaskStatusEnum.COPY.getStatus()); - actHiTaskinst.setTenantId(tenantId); - LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>(); - updateWrapper.in(ActHiTaskinst::getId, taskIds); - ACT_HI_TASKINST_MAPPER.update(actHiTaskinst, updateWrapper); - for (Task task : list) { - PROCESS_ENGINE.getTaskService().addComment(task.getId(), task.getProcessInstanceId(), TaskStatusEnum.COPY.getStatus(), StrUtil.EMPTY); - } + public static Set buildUser(List userList, Long taskId) { + if (CollUtil.isEmpty(userList)) { + return Set.of(); } - } - - /** - * 获取当前任务参与者 - * - * @param taskId 任务id - */ - public static ParticipantVo getCurrentTaskParticipant(String taskId, UserService userService) { - ParticipantVo participantVo = new ParticipantVo(); - List linksForTask = PROCESS_ENGINE.getHistoryService().getHistoricIdentityLinksForTask(taskId); - Task task = QueryUtils.taskQuery().taskId(taskId).singleResult(); - if (task != null && CollUtil.isNotEmpty(linksForTask)) { - List groupList = StreamUtils.filter(linksForTask, e -> StringUtils.isNotBlank(e.getGroupId())); - if (CollUtil.isNotEmpty(groupList)) { - List groupIds = StreamUtils.toList(groupList, e -> Long.valueOf(e.getGroupId())); - List userIds = userService.selectUserIdsByRoleIds(groupIds); - if (CollUtil.isNotEmpty(userIds)) { - participantVo.setGroupIds(groupIds); - List userList = userService.selectListByIds(userIds); - if (CollUtil.isNotEmpty(userList)) { - List userIdList = StreamUtils.toList(userList, UserDTO::getUserId); - List nickNames = StreamUtils.toList(userList, UserDTO::getNickName); - participantVo.setCandidate(userIdList); - participantVo.setCandidateName(nickNames); - participantVo.setClaim(!StringUtils.isBlank(task.getAssignee())); + Set list = new HashSet<>(); + Set processedBySet = new HashSet<>(); + for (User user : userList) { + // 根据 processedBy 前缀判断处理人类型,分别获取用户列表 + List users = TASK_ASSIGNEE_SERVICE.fetchUsersByStorageId(user.getProcessedBy()); + // 转换为 FlowUser 并添加到结果集合 + if (CollUtil.isNotEmpty(users)) { + users.forEach(dto -> { + String processedBy = String.valueOf(dto.getUserId()); + if (!processedBySet.contains(processedBy)) { + FlowUser flowUser = new FlowUser(); + flowUser.setType(user.getType()); + flowUser.setProcessedBy(processedBy); + flowUser.setAssociated(taskId); + list.add(flowUser); + processedBySet.add(processedBy); } - } - } else { - List candidateList = StreamUtils.filter(linksForTask, e -> FlowConstant.CANDIDATE.equals(e.getType())); - List userIdList = new ArrayList<>(); - for (HistoricIdentityLink historicIdentityLink : linksForTask) { - try { - userIdList.add(Long.valueOf(historicIdentityLink.getUserId())); - } catch (NumberFormatException ignored) { - - } - } - List userList = userService.selectListByIds(userIdList); - if (CollUtil.isNotEmpty(userList)) { - List userIds = StreamUtils.toList(userList, UserDTO::getUserId); - List nickNames = StreamUtils.toList(userList, UserDTO::getNickName); - participantVo.setCandidate(userIds); - participantVo.setCandidateName(nickNames); - // 判断当前任务是否具有多个办理人 - if (CollUtil.isNotEmpty(candidateList) && candidateList.size() > 1) { - // 如果 assignee 存在,则设置当前任务已经被认领 - participantVo.setClaim(StringUtils.isNotBlank(task.getAssignee())); - } - } + }); } } - return participantVo; - } - - /** - * 判断当前节点是否为会签节点 - * - * @param processDefinitionId 流程定义id - * @param taskDefinitionKey 流程定义id - */ - public static MultiInstanceVo isMultiInstance(String processDefinitionId, String taskDefinitionKey) { - BpmnModel bpmnModel = PROCESS_ENGINE.getRepositoryService().getBpmnModel(processDefinitionId); - FlowNode flowNode = (FlowNode) bpmnModel.getFlowElement(taskDefinitionKey); - MultiInstanceVo multiInstanceVo = new MultiInstanceVo(); - //判断是否为并行会签节点 - if (flowNode.getBehavior() instanceof ParallelMultiInstanceBehavior behavior && behavior.getCollectionExpression() != null) { - Expression collectionExpression = behavior.getCollectionExpression(); - String assigneeList = collectionExpression.getExpressionText(); - String assignee = behavior.getCollectionElementVariable(); - multiInstanceVo.setType(behavior); - multiInstanceVo.setAssignee(assignee); - multiInstanceVo.setAssigneeList(assigneeList); - return multiInstanceVo; - //判断是否为串行会签节点 - } else if (flowNode.getBehavior() instanceof SequentialMultiInstanceBehavior behavior && behavior.getCollectionExpression() != null) { - Expression collectionExpression = behavior.getCollectionExpression(); - String assigneeList = collectionExpression.getExpressionText(); - String assignee = behavior.getCollectionElementVariable(); - multiInstanceVo.setType(behavior); - multiInstanceVo.setAssignee(assignee); - multiInstanceVo.setAssigneeList(assigneeList); - return multiInstanceVo; - } - return null; - } - - /** - * 获取当前流程状态 - * - * @param taskId 任务id - */ - public static String getBusinessStatusByTaskId(String taskId) { - HistoricTaskInstance historicTaskInstance = QueryUtils.hisTaskInstanceQuery().taskId(taskId).singleResult(); - HistoricProcessInstance historicProcessInstance = QueryUtils.hisInstanceQuery(historicTaskInstance.getProcessInstanceId()).singleResult(); - return historicProcessInstance.getBusinessStatus(); - } - - /** - * 获取当前流程状态 - * - * @param businessKey 业务id - */ - public static String getBusinessStatus(String businessKey) { - HistoricProcessInstance historicProcessInstance = QueryUtils.hisBusinessKeyQuery(businessKey).singleResult(); - return historicProcessInstance.getBusinessStatus(); + return list; } /** * 发送消息 * - * @param list 任务 - * @param name 流程名称 + * @param flowName 流程定义名称 * @param messageType 消息类型 * @param message 消息内容,为空则发送默认配置的消息内容 */ - public static void sendMessage(List list, String name, List messageType, String message, UserService userService) { - Set userIds = new HashSet<>(); + public static void sendMessage(String flowName, Long instId, List messageType, String message) { + List userList = new ArrayList<>(); + List list = FLW_TASK_SERVICE.selectByInstId(instId); if (StringUtils.isBlank(message)) { - message = "有新的【" + name + "】单据已经提交至您的待办,请您及时处理。"; + message = "有新的【" + flowName + "】单据已经提交至您,请您及时处理。"; } - for (Task t : list) { - ParticipantVo taskParticipant = WorkflowUtils.getCurrentTaskParticipant(t.getId(), userService); - if (CollUtil.isNotEmpty(taskParticipant.getGroupIds())) { - List userIdList = userService.selectUserIdsByRoleIds(taskParticipant.getGroupIds()); - if (CollUtil.isNotEmpty(userIdList)) { - userIds.addAll(userIdList); - } - } - List candidate = taskParticipant.getCandidate(); - if (CollUtil.isNotEmpty(candidate)) { - userIds.addAll(candidate); + for (Task task : list) { + List users = FLW_TASK_SERVICE.currentTaskAllUser(task.getId()); + if (CollUtil.isNotEmpty(users)) { + userList.addAll(users); } } - if (CollUtil.isNotEmpty(userIds)) { - List userList = userService.selectListByIds(new ArrayList<>(userIds)); + if (CollUtil.isNotEmpty(userList)) { for (String code : messageType) { MessageTypeEnum messageTypeEnum = MessageTypeEnum.getByCode(code); if (ObjectUtil.isNotEmpty(messageTypeEnum)) { switch (messageTypeEnum) { case SYSTEM_MESSAGE: - WebSocketMessageDto dto = new WebSocketMessageDto(); - dto.setSessionKeys(new ArrayList<>(userIds)); + SseMessageDto dto = new SseMessageDto(); + dto.setUserIds(StreamUtils.toList(userList, UserDTO::getUserId).stream().distinct().collect(Collectors.toList())); dto.setMessage(message); - WebSocketUtils.publishMessage(dto); + SseMessageUtils.publishMessage(dto); break; case EMAIL_MESSAGE: MailUtils.sendText(StreamUtils.join(userList, UserDTO::getEmail), "单据审批提醒", message); @@ -269,6 +132,8 @@ public class WorkflowUtils { case SMS_MESSAGE: //todo 短信发送 break; + default: + throw new IllegalStateException("Unexpected value: " + messageTypeEnum); } } } @@ -276,20 +141,66 @@ public class WorkflowUtils { } /** - * 根据任务id查询 当前用户的任务,检查 当前人员 是否是该 taskId 的办理人 + * 驳回 + * + * @param message 审批意见 + * @param instanceId 流程实例id + * @param targetNodeCode 目标节点 + * @param flowStatus 流程状态 + * @param flowHisStatus 节点操作状态 + */ + public static void backTask(String message, Long instanceId, String targetNodeCode, String flowStatus, String flowHisStatus) { + List list = FLW_TASK_SERVICE.selectByInstId(instanceId); + if (CollUtil.isNotEmpty(list)) { + List tasks = StreamUtils.filter(list, e -> e.getNodeCode().equals(targetNodeCode)); + if (list.size() == tasks.size()) { + return; + } + } + for (FlowTask task : list) { + List userList = FLW_TASK_SERVICE.currentTaskAllUser(task.getId()); + FlowParams flowParams = FlowParams.build(); + flowParams.nodeCode(targetNodeCode); + flowParams.message(message); + flowParams.skipType(SkipType.PASS.getKey()); + flowParams.flowStatus(flowStatus).hisStatus(flowHisStatus); + flowParams.ignore(true); + //解决会签没权限问题 + if (CollUtil.isNotEmpty(userList)) { + flowParams.handler(userList.get(0).getUserId().toString()); + } + TASK_SERVICE.skip(task.getId(), flowParams); + } + //解决会签多人审批问题 + backTask(message, instanceId, targetNodeCode, flowStatus, flowHisStatus); + } + + /** + * 申请人节点编码 * - * @param taskId 任务id - * @return 结果 + * @param definitionId 流程定义id + * @return 申请人节点编码 */ - public static Task getTaskByCurrentUser(String taskId) { - TaskQuery taskQuery = QueryUtils.taskQuery(); - taskQuery.taskId(taskId).taskCandidateOrAssigned(String.valueOf(LoginHelper.getUserId())); + public static String applyNodeCode(Long definitionId) { + //获取已发布的流程节点 + List flowNodes = FLOW_NODE_MAPPER.selectList(new LambdaQueryWrapper().eq(FlowNode::getDefinitionId, definitionId)); + AssertUtil.isTrue(CollUtil.isEmpty(flowNodes), ExceptionCons.NOT_PUBLISH_NODE); + Node startNode = flowNodes.stream().filter(t -> NodeType.isStart(t.getNodeType())).findFirst().orElse(null); + AssertUtil.isNull(startNode, ExceptionCons.LOST_START_NODE); + Node nextNode = NODE_SERVICE.getNextNode(definitionId, startNode.getNodeCode(), null, SkipType.NONE.getKey()); + return nextNode.getNodeCode(); + } - List roles = LoginHelper.getLoginUser().getRoles(); - if (CollUtil.isNotEmpty(roles)) { - List groupIds = StreamUtils.toList(roles, e -> String.valueOf(e.getRoleId())); - taskQuery.taskCandidateGroupIn(groupIds); + /** + * 删除运行中的任务 + * + * @param taskIds 任务id + */ + public static void deleteRunTask(List taskIds) { + if (CollUtil.isEmpty(taskIds)) { + return; } - return taskQuery.singleResult(); + USER_SERVICE.deleteByTaskIds(taskIds); + FLOW_TASK_MAPPER.deleteByIds(taskIds); } } diff --git a/ruoyi-modules/ruoyi-workflow/src/main/resources/mapper/workflow/ActHiTaskinstMapper.xml b/ruoyi-modules/ruoyi-workflow/src/main/resources/mapper/workflow/ActHiTaskinstMapper.xml deleted file mode 100644 index 7e73b603f..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/resources/mapper/workflow/ActHiTaskinstMapper.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - - diff --git a/ruoyi-modules/ruoyi-workflow/src/main/resources/mapper/workflow/ActTaskMapper.xml b/ruoyi-modules/ruoyi-workflow/src/main/resources/mapper/workflow/ActTaskMapper.xml deleted file mode 100644 index 36419009a..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/resources/mapper/workflow/ActTaskMapper.xml +++ /dev/null @@ -1,77 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/ruoyi-modules/ruoyi-workflow/src/main/resources/mapper/workflow/ActHiProcinstMapper.xml b/ruoyi-modules/ruoyi-workflow/src/main/resources/mapper/workflow/FlwCategoryMapper.xml similarity index 41% rename from ruoyi-modules/ruoyi-workflow/src/main/resources/mapper/workflow/ActHiProcinstMapper.xml rename to ruoyi-modules/ruoyi-workflow/src/main/resources/mapper/workflow/FlwCategoryMapper.xml index dd0578576..e9918f1f2 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/resources/mapper/workflow/ActHiProcinstMapper.xml +++ b/ruoyi-modules/ruoyi-workflow/src/main/resources/mapper/workflow/FlwCategoryMapper.xml @@ -2,6 +2,10 @@ - + + + diff --git a/ruoyi-modules/ruoyi-workflow/src/main/resources/mapper/workflow/FlwInstanceMapper.xml b/ruoyi-modules/ruoyi-workflow/src/main/resources/mapper/workflow/FlwInstanceMapper.xml new file mode 100644 index 000000000..30e2267dc --- /dev/null +++ b/ruoyi-modules/ruoyi-workflow/src/main/resources/mapper/workflow/FlwInstanceMapper.xml @@ -0,0 +1,36 @@ + + + + + + + + + diff --git a/ruoyi-modules/ruoyi-workflow/src/main/resources/mapper/workflow/FlwTaskMapper.xml b/ruoyi-modules/ruoyi-workflow/src/main/resources/mapper/workflow/FlwTaskMapper.xml new file mode 100644 index 000000000..73e4ec789 --- /dev/null +++ b/ruoyi-modules/ruoyi-workflow/src/main/resources/mapper/workflow/FlwTaskMapper.xml @@ -0,0 +1,115 @@ + + + + + + + + + + + + + + diff --git a/ruoyi-modules/ruoyi-workflow/src/main/resources/mapper/workflow/WfCategoryMapper.xml b/ruoyi-modules/ruoyi-workflow/src/main/resources/mapper/workflow/WfCategoryMapper.xml deleted file mode 100644 index 4375cb2dd..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/resources/mapper/workflow/WfCategoryMapper.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - - diff --git a/ruoyi-modules/ruoyi-workflow/src/main/resources/mapper/workflow/WfDefinitionConfigMapper.xml b/ruoyi-modules/ruoyi-workflow/src/main/resources/mapper/workflow/WfDefinitionConfigMapper.xml deleted file mode 100644 index 8d579f705..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/resources/mapper/workflow/WfDefinitionConfigMapper.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - - diff --git a/ruoyi-modules/ruoyi-workflow/src/main/resources/mapper/workflow/WfFormManageMapper.xml b/ruoyi-modules/ruoyi-workflow/src/main/resources/mapper/workflow/WfFormManageMapper.xml deleted file mode 100644 index 59221f82d..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/resources/mapper/workflow/WfFormManageMapper.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - - diff --git a/ruoyi-modules/ruoyi-workflow/src/main/resources/mapper/workflow/WfNodeConfigMapper.xml b/ruoyi-modules/ruoyi-workflow/src/main/resources/mapper/workflow/WfNodeConfigMapper.xml deleted file mode 100644 index b65194f8b..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/resources/mapper/workflow/WfNodeConfigMapper.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - - diff --git a/ruoyi-modules/ruoyi-workflow/src/main/resources/mapper/workflow/WfTaskBackNodeMapper.xml b/ruoyi-modules/ruoyi-workflow/src/main/resources/mapper/workflow/WfTaskBackNodeMapper.xml deleted file mode 100644 index 4a9179b62..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/resources/mapper/workflow/WfTaskBackNodeMapper.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - - diff --git a/script/bpmn/leave1.xml b/script/bpmn/leave1.xml new file mode 100644 index 000000000..1013eb24e --- /dev/null +++ b/script/bpmn/leave1.xml @@ -0,0 +1,17 @@ + + + + + dd515cdd-59f6-446f-94ca-25ca062afb42 + + + 78fa8e5b-e809-44ed-978a-41092409ebcf + + + a8abf15f-b83e-428a-86cc-033555ea9bbe + + + 8b82b7d7-8660-455e-b880-d6d22ea3eb6d + + + diff --git a/script/bpmn/leave2.xml b/script/bpmn/leave2.xml new file mode 100644 index 000000000..38ec0a9d7 --- /dev/null +++ b/script/bpmn/leave2.xml @@ -0,0 +1,24 @@ + + + + + fdcae93b-b69c-498a-b231-09255e74bcbd + + + 7b8c7ead-7dc8-4951-a7f3-f0c41995909e + + + b3528155-dcb7-4445-bbdf-3d00e3499e86 + 5ed2362b-fc0c-4d52-831f-95208b830605 + + + c9fa6d7d-2a74-4e78-b947-0cad8a6af869 + + + 40aa65fd-0712-4d23-b6f7-d0432b920fd1 + + + + c9fa6d7d-2a74-4e78-b947-0cad8a6af869 + + diff --git a/script/bpmn/leave3.xml b/script/bpmn/leave3.xml new file mode 100644 index 000000000..ffb8d9505 --- /dev/null +++ b/script/bpmn/leave3.xml @@ -0,0 +1,27 @@ + + + + + b7bbb571-06de-455c-8083-f83c07bf0b99 + + + 84d7ed24-bb44-4ba1-bf1f-e6f5092d3f0a + + + 4b7743cd-940c-431b-926f-e7b614fbf1fe + 762cb975-37d8-4276-b6db-79a4c3606394 + + + b66b6563-f9fe-41cc-a782-f7837bb6f3d2 + + + 23e7429e-2b47-4431-b93e-40db7c431ce6 + + + f5ace37f-5a5e-4e64-a6f6-913ab9a71cd1 + + + + b66b6563-f9fe-41cc-a782-f7837bb6f3d2 + + diff --git a/script/bpmn/leave4.xml b/script/bpmn/leave4.xml new file mode 100644 index 000000000..2061d176f --- /dev/null +++ b/script/bpmn/leave4.xml @@ -0,0 +1,20 @@ + + + + + e90b98ef-35b4-410c-a663-bae8b7624b9f + + + 768b5b1a-6726-4d67-8853-4cc70d5b1045 + + + 2f9f2e21-9bcf-42a3-a07c-13037aad22d1 + + + 27461e01-3d9f-4530-8fe3-bd5ec7f9571f + + + b62b88c3-8d8d-4969-911e-2aaea219e7fc + + + diff --git a/script/bpmn/leave5.xml b/script/bpmn/leave5.xml new file mode 100644 index 000000000..d6c0117c0 --- /dev/null +++ b/script/bpmn/leave5.xml @@ -0,0 +1,27 @@ + + + + + e1b04e96-dc81-4858-a309-2fe945d2f374 + + + 3e743f4f-51ca-41d4-8e94-21f5dd9b59c9 + + + c80f273e-1f17-4bd8-9ad1-04a4a94ea862 + 1e3e8d3b-18ae-4d6c-a814-ce0d724adfa4 + + + 1a20169e-3d82-4926-a151-e2daad28de1b + + + 7a8f0473-e409-442e-a843-5c2b813d00e9 + + + 03c4d2bc-58b5-4408-a2e4-65afb046f169 + + + + 1a20169e-3d82-4926-a151-e2daad28de1b + + diff --git "a/script/bpmn/\346\250\241\345\236\213.zip" "b/script/bpmn/\346\250\241\345\236\213.zip" deleted file mode 100644 index 6f30952ab14f0b60dc64674e7eef083141856458..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8543 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 Date: Mon, 13 Jan 2025 14:26:31 +0800 Subject: [PATCH 360/540] =?UTF-8?q?Revert=20"fix=20=E4=BF=AE=E5=A4=8D=20sa?= =?UTF-8?q?token=20dao=E5=B1=82=E8=8E=B7=E5=8F=96timeout=E4=B8=BA=E7=A7=92?= =?UTF-8?q?=E5=AF=BC=E8=87=B4=E4=B8=A2=E5=A4=B1=E6=AF=AB=E7=A7=92=E8=BF=9B?= =?UTF-8?q?=E5=BA=A6=E9=97=AE=E9=A2=98(=E4=B8=B4=E6=97=B6=E4=BF=AE?= =?UTF-8?q?=E5=A4=8D=20=E7=AD=89satoken=E5=AE=98=E6=96=B9=E8=A7=A3?= =?UTF-8?q?=E5=86=B3)"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This reverts commit e36e8f77581314541b27bcf43dd99bbc2c916255. --- .../common/satoken/core/dao/PlusSaTokenDao.java | 12 ++---------- 1 file changed, 2 insertions(+), 10 deletions(-) diff --git a/ruoyi-common/ruoyi-common-satoken/src/main/java/org/dromara/common/satoken/core/dao/PlusSaTokenDao.java b/ruoyi-common/ruoyi-common-satoken/src/main/java/org/dromara/common/satoken/core/dao/PlusSaTokenDao.java index a2a152003..38e12c315 100644 --- a/ruoyi-common/ruoyi-common-satoken/src/main/java/org/dromara/common/satoken/core/dao/PlusSaTokenDao.java +++ b/ruoyi-common/ruoyi-common-satoken/src/main/java/org/dromara/common/satoken/core/dao/PlusSaTokenDao.java @@ -51,11 +51,7 @@ public class PlusSaTokenDao implements SaTokenDao { if (timeout == NEVER_EXPIRE) { RedisUtils.setCacheObject(key, value); } else { - if (RedisUtils.hasKey(key)) { - RedisUtils.setCacheObject(key, value, true); - } else { - RedisUtils.setCacheObject(key, value, Duration.ofSeconds(timeout)); - } + RedisUtils.setCacheObject(key, value, Duration.ofSeconds(timeout)); } CAFFEINE.invalidate(key); } @@ -118,11 +114,7 @@ public class PlusSaTokenDao implements SaTokenDao { if (timeout == NEVER_EXPIRE) { RedisUtils.setCacheObject(key, object); } else { - if (RedisUtils.hasKey(key)) { - RedisUtils.setCacheObject(key, object, true); - } else { - RedisUtils.setCacheObject(key, object, Duration.ofSeconds(timeout)); - } + RedisUtils.setCacheObject(key, object, Duration.ofSeconds(timeout)); } CAFFEINE.invalidate(key); } -- Gitee From a680310f80728e995fdeb7251b1f270ad02d48e5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Mon, 13 Jan 2025 13:35:57 +0800 Subject: [PATCH 361/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20satoken=20da?= =?UTF-8?q?o=E5=B1=82=E8=8E=B7=E5=8F=96timeout=E4=B8=BA=E7=A7=92=E5=AF=BC?= =?UTF-8?q?=E8=87=B4=E4=B8=A2=E5=A4=B1=E6=AF=AB=E7=A7=92=E8=BF=9B=E5=BA=A6?= =?UTF-8?q?=E9=97=AE=E9=A2=98(=E4=B8=B4=E6=97=B6=E4=BF=AE=E5=A4=8D=20?= =?UTF-8?q?=E7=AD=89satoken=E5=AE=98=E6=96=B9=E8=A7=A3=E5=86=B3)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/satoken/core/dao/PlusSaTokenDao.java | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/ruoyi-common/ruoyi-common-satoken/src/main/java/org/dromara/common/satoken/core/dao/PlusSaTokenDao.java b/ruoyi-common/ruoyi-common-satoken/src/main/java/org/dromara/common/satoken/core/dao/PlusSaTokenDao.java index 38e12c315..a2a152003 100644 --- a/ruoyi-common/ruoyi-common-satoken/src/main/java/org/dromara/common/satoken/core/dao/PlusSaTokenDao.java +++ b/ruoyi-common/ruoyi-common-satoken/src/main/java/org/dromara/common/satoken/core/dao/PlusSaTokenDao.java @@ -51,7 +51,11 @@ public class PlusSaTokenDao implements SaTokenDao { if (timeout == NEVER_EXPIRE) { RedisUtils.setCacheObject(key, value); } else { - RedisUtils.setCacheObject(key, value, Duration.ofSeconds(timeout)); + if (RedisUtils.hasKey(key)) { + RedisUtils.setCacheObject(key, value, true); + } else { + RedisUtils.setCacheObject(key, value, Duration.ofSeconds(timeout)); + } } CAFFEINE.invalidate(key); } @@ -114,7 +118,11 @@ public class PlusSaTokenDao implements SaTokenDao { if (timeout == NEVER_EXPIRE) { RedisUtils.setCacheObject(key, object); } else { - RedisUtils.setCacheObject(key, object, Duration.ofSeconds(timeout)); + if (RedisUtils.hasKey(key)) { + RedisUtils.setCacheObject(key, object, true); + } else { + RedisUtils.setCacheObject(key, object, Duration.ofSeconds(timeout)); + } } CAFFEINE.invalidate(key); } -- Gitee From 9086d32bee89a0614271002c9b691357e695057a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Mon, 13 Jan 2025 18:52:52 +0800 Subject: [PATCH 362/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20=E5=A4=9A?= =?UTF-8?q?=E8=A7=92=E8=89=B2=E6=9C=AA=E6=8B=86=E5=88=86=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/FlwTaskAssigneeServiceImpl.java | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskAssigneeServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskAssigneeServiceImpl.java index 28c1e8b04..7910b7b35 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskAssigneeServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskAssigneeServiceImpl.java @@ -129,11 +129,16 @@ public class FlwTaskAssigneeServiceImpl implements IFlwTaskAssigneeService, Hand */ @Override public List fetchUsersByStorageId(String storageId) { - String[] parts = storageId.split(StrUtil.COLON, 2); - if (parts.length < 2) { - return getUsersByType(TaskAssigneeEnum.USER, List.of(Long.valueOf(parts[0]))); + List list = new ArrayList<>(); + for (String str : storageId.split(StrUtil.COMMA)) { + String[] parts = str.split(StrUtil.COLON, 2); + TaskAssigneeEnum enumd = TaskAssigneeEnum.USER; + if (parts.length >= 2) { + enumd = TaskAssigneeEnum.fromDesc(parts[0] + StrUtil.COLON); + } + list.addAll(getUsersByType(enumd, List.of(Long.valueOf(parts[1])))); } - return getUsersByType(TaskAssigneeEnum.fromCode(parts[0] + StrUtil.COLON), List.of(Long.valueOf(parts[1]))); + return list; } /** -- Gitee From 69130a76e4fcff2b06c4c1143fc5d2ddf4e780a8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Mon, 13 Jan 2025 19:09:13 +0800 Subject: [PATCH 363/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20=E5=A4=9A?= =?UTF-8?q?=E8=A7=92=E8=89=B2=E6=9C=AA=E6=8B=86=E5=88=86=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../workflow/service/impl/FlwTaskAssigneeServiceImpl.java | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskAssigneeServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskAssigneeServiceImpl.java index 7910b7b35..2ed6538af 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskAssigneeServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskAssigneeServiceImpl.java @@ -132,11 +132,10 @@ public class FlwTaskAssigneeServiceImpl implements IFlwTaskAssigneeService, Hand List list = new ArrayList<>(); for (String str : storageId.split(StrUtil.COMMA)) { String[] parts = str.split(StrUtil.COLON, 2); - TaskAssigneeEnum enumd = TaskAssigneeEnum.USER; - if (parts.length >= 2) { - enumd = TaskAssigneeEnum.fromDesc(parts[0] + StrUtil.COLON); + if (parts.length < 2) { + list.addAll(getUsersByType(TaskAssigneeEnum.USER, List.of(Long.valueOf(parts[0])))); } - list.addAll(getUsersByType(enumd, List.of(Long.valueOf(parts[1])))); + list.addAll(getUsersByType(TaskAssigneeEnum.fromCode(parts[0] + StrUtil.COLON), List.of(Long.valueOf(parts[1])))); } return list; } -- Gitee From 7d82f954acf5e67a9375830b6835a3f211a745c7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Mon, 13 Jan 2025 19:37:45 +0800 Subject: [PATCH 364/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E9=83=A8?= =?UTF-8?q?=E5=88=86=E4=BB=A3=E7=A0=81=E4=B8=8Ebug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dromara/workflow/listener/WorkflowGlobalListener.java | 1 - .../workflow/service/impl/FlwTaskAssigneeServiceImpl.java | 3 ++- script/bpmn/leave2.xml | 6 +++--- script/bpmn/leave4.xml | 2 +- script/bpmn/leave5.xml | 2 +- 5 files changed, 7 insertions(+), 7 deletions(-) diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/listener/WorkflowGlobalListener.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/listener/WorkflowGlobalListener.java index 29b8b7279..35c16bda3 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/listener/WorkflowGlobalListener.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/listener/WorkflowGlobalListener.java @@ -107,7 +107,6 @@ public class WorkflowGlobalListener implements GlobalListener { log.info("流程已结束,状态更新为: {}", status); return status; } - log.warn("流程未结束,实例ID: {}", instanceId); return null; } } diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskAssigneeServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskAssigneeServiceImpl.java index 2ed6538af..5f348661b 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskAssigneeServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskAssigneeServiceImpl.java @@ -134,8 +134,9 @@ public class FlwTaskAssigneeServiceImpl implements IFlwTaskAssigneeService, Hand String[] parts = str.split(StrUtil.COLON, 2); if (parts.length < 2) { list.addAll(getUsersByType(TaskAssigneeEnum.USER, List.of(Long.valueOf(parts[0])))); + } else { + list.addAll(getUsersByType(TaskAssigneeEnum.fromCode(parts[0] + StrUtil.COLON), List.of(Long.valueOf(parts[1])))); } - list.addAll(getUsersByType(TaskAssigneeEnum.fromCode(parts[0] + StrUtil.COLON), List.of(Long.valueOf(parts[1])))); } return list; } diff --git a/script/bpmn/leave2.xml b/script/bpmn/leave2.xml index 38ec0a9d7..35d270fda 100644 --- a/script/bpmn/leave2.xml +++ b/script/bpmn/leave2.xml @@ -1,6 +1,6 @@ - + fdcae93b-b69c-498a-b231-09255e74bcbd @@ -8,8 +8,8 @@ 7b8c7ead-7dc8-4951-a7f3-f0c41995909e - b3528155-dcb7-4445-bbdf-3d00e3499e86 - 5ed2362b-fc0c-4d52-831f-95208b830605 + b3528155-dcb7-4445-bbdf-3d00e3499e86 + 5ed2362b-fc0c-4d52-831f-95208b830605 c9fa6d7d-2a74-4e78-b947-0cad8a6af869 diff --git a/script/bpmn/leave4.xml b/script/bpmn/leave4.xml index 2061d176f..578be560f 100644 --- a/script/bpmn/leave4.xml +++ b/script/bpmn/leave4.xml @@ -1,6 +1,6 @@ - + e90b98ef-35b4-410c-a663-bae8b7624b9f diff --git a/script/bpmn/leave5.xml b/script/bpmn/leave5.xml index d6c0117c0..a5fc2d2c2 100644 --- a/script/bpmn/leave5.xml +++ b/script/bpmn/leave5.xml @@ -1,6 +1,6 @@ - + e1b04e96-dc81-4858-a309-2fe945d2f374 -- Gitee From 6f0dd8dc8939a6dfd85deb0dc8c818dc3bc0cf01 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=89=9B=E5=AD=90Li?= Date: Tue, 14 Jan 2025 05:40:07 +0000 Subject: [PATCH 365/540] =?UTF-8?q?!636=20update=20=E4=BC=98=E5=8C=96=20?= =?UTF-8?q?=E6=94=AF=E6=8C=81=E9=80=9A=E8=BF=87=E9=85=8D=E7=BD=AE=E6=96=87?= =?UTF-8?q?=E4=BB=B6=E5=85=B3=E9=97=AD=E5=B7=A5=E4=BD=9C=E6=B5=81=20*=20up?= =?UTF-8?q?date=20=E4=BC=98=E5=8C=96=20=E6=94=AF=E6=8C=81=E9=80=9A?= =?UTF-8?q?=E8=BF=87=E9=85=8D=E7=BD=AE=E6=96=87=E4=BB=B6=E5=85=B3=E9=97=AD?= =?UTF-8?q?=E5=B7=A5=E4=BD=9C=E6=B5=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/FlwDefinitionController.java | 5 ++- .../controller/FlwInstanceController.java | 5 ++- .../service/impl/FlwCategoryServiceImpl.java | 5 ++- .../impl/FlwDefinitionServiceImpl.java | 17 ++++++--- .../service/impl/FlwInstanceServiceImpl.java | 23 +++++++---- .../service/impl/FlwTaskServiceImpl.java | 38 +++++++++++++------ 6 files changed, 66 insertions(+), 27 deletions(-) diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwDefinitionController.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwDefinitionController.java index b125f0f28..294f2f4c0 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwDefinitionController.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwDefinitionController.java @@ -14,6 +14,7 @@ import org.dromara.warm.flow.core.service.DefService; import org.dromara.warm.flow.orm.entity.FlowDefinition; import org.dromara.workflow.domain.vo.FlowDefinitionVo; import org.dromara.workflow.service.IFlwDefinitionService; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.transaction.annotation.Transactional; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; @@ -33,8 +34,10 @@ import java.util.List; @RequestMapping("/workflow/definition") public class FlwDefinitionController extends BaseController { + @Autowired(required = false) + private DefService defService; + private final IFlwDefinitionService flwDefinitionService; - private final DefService defService; /** * 查询流程定义列表 diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwInstanceController.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwInstanceController.java index cb65f2158..3393162c7 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwInstanceController.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwInstanceController.java @@ -14,6 +14,7 @@ import org.dromara.workflow.domain.bo.FlowInstanceBo; import org.dromara.workflow.domain.bo.FlowInvalidBo; import org.dromara.workflow.domain.vo.FlowInstanceVo; import org.dromara.workflow.service.IFlwInstanceService; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; @@ -31,8 +32,10 @@ import java.util.Map; @RequestMapping("/workflow/instance") public class FlwInstanceController extends BaseController { + @Autowired(required = false) + private InsService insService; + private final IFlwInstanceService flwInstanceService; - private final InsService insService; /** * 查询正在运行的流程实例列表 diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwCategoryServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwCategoryServiceImpl.java index 0a5c0bb54..368212f10 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwCategoryServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwCategoryServiceImpl.java @@ -19,6 +19,7 @@ import org.dromara.workflow.domain.bo.FlowCategoryBo; import org.dromara.workflow.domain.vo.FlowCategoryVo; import org.dromara.workflow.mapper.FlwCategoryMapper; import org.dromara.workflow.service.IFlwCategoryService; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.cache.annotation.CacheEvict; import org.springframework.cache.annotation.Cacheable; import org.springframework.stereotype.Service; @@ -35,8 +36,10 @@ import java.util.List; @Service public class FlwCategoryServiceImpl implements IFlwCategoryService { + @Autowired(required = false) + private DefService defService; + private final FlwCategoryMapper baseMapper; - private final DefService defService; /** * 查询流程分类 diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwDefinitionServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwDefinitionServiceImpl.java index baec223fe..6ded1a6d4 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwDefinitionServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwDefinitionServiceImpl.java @@ -36,6 +36,7 @@ import org.dromara.workflow.domain.vo.FlowDefinitionVo; import org.dromara.workflow.mapper.FlwCategoryMapper; import org.dromara.workflow.service.IFlwDefinitionService; import org.dromara.workflow.utils.WorkflowUtils; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.web.multipart.MultipartFile; @@ -57,12 +58,18 @@ import static org.dromara.common.core.constant.TenantConstants.DEFAULT_TENANT_ID @Service public class FlwDefinitionServiceImpl implements IFlwDefinitionService { - private final DefService defService; - private final FlowDefinitionMapper flowDefinitionMapper; - private final FlowHisTaskMapper flowHisTaskMapper; + @Autowired(required = false) + private DefService defService; + @Autowired(required = false) + private FlowDefinitionMapper flowDefinitionMapper; + @Autowired(required = false) + private FlowHisTaskMapper flowHisTaskMapper; + @Autowired(required = false) + private FlowNodeMapper flowNodeMapper; + @Autowired(required = false) + private FlowSkipMapper flowSkipMapper; + private final FlwCategoryMapper flwCategoryMapper; - private final FlowNodeMapper flowNodeMapper; - private final FlowSkipMapper flowSkipMapper; /** * 查询流程定义列表 diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwInstanceServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwInstanceServiceImpl.java index c053e6d4a..24f86de11 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwInstanceServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwInstanceServiceImpl.java @@ -47,6 +47,7 @@ import org.dromara.workflow.mapper.FlwInstanceMapper; import org.dromara.workflow.service.IFlwInstanceService; import org.dromara.workflow.service.IFlwTaskService; import org.dromara.workflow.utils.WorkflowUtils; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -64,14 +65,22 @@ import java.util.stream.Collectors; @Service public class FlwInstanceServiceImpl implements IFlwInstanceService { - private final InsService insService; - private final DefService defService; - private final FlowHisTaskMapper flowHisTaskMapper; - private final FlowInstanceMapper flowInstanceMapper; - private final FlwInstanceMapper flwInstanceMapper; - private final TaskService taskService; - private final IFlwTaskService flwTaskService; + @Autowired(required = false) + private InsService insService; + @Autowired(required = false) + private DefService defService; + @Autowired(required = false) + private TaskService taskService; + @Autowired(required = false) + private FlowHisTaskMapper flowHisTaskMapper; + @Autowired(required = false) + private FlowInstanceMapper flowInstanceMapper; + private final FlowProcessEventHandler flowProcessEventHandler; + + private final IFlwTaskService flwTaskService; + + private final FlwInstanceMapper flwInstanceMapper; private final FlwCategoryMapper flwCategoryMapper; /** diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java index fca38fbac..11f83ede6 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java @@ -45,6 +45,7 @@ import org.dromara.workflow.mapper.FlwCategoryMapper; import org.dromara.workflow.mapper.FlwTaskMapper; import org.dromara.workflow.service.IFlwTaskService; import org.dromara.workflow.utils.WorkflowUtils; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -64,19 +65,32 @@ import static org.dromara.workflow.common.constant.FlowConstant.*; @Service public class FlwTaskServiceImpl implements IFlwTaskService { - private final TaskService taskService; - private final InsService insService; - private final FlowInstanceMapper flowInstanceMapper; - private final FlwTaskMapper flwTaskMapper; - private final UserService userService; - private final FlowTaskMapper flowTaskMapper; - private final FlowHisTaskMapper flowHisTaskMapper; - private final FlowProcessEventHandler flowProcessEventHandler; - private final DefService defService; - private final HisTaskService hisTaskService; + @Autowired(required = false) + private TaskService taskService; + @Autowired(required = false) + private InsService insService; + @Autowired(required = false) + private DefService defService; + @Autowired(required = false) + private HisTaskService hisTaskService; + @Autowired(required = false) + private NodeService nodeService; + + @Autowired(required = false) + private FlowInstanceMapper flowInstanceMapper; + @Autowired(required = false) + private FlowTaskMapper flowTaskMapper; + @Autowired(required = false) + private FlowHisTaskMapper flowHisTaskMapper; + @Autowired(required = false) + private FlowNodeMapper flowNodeMapper; + private final IdentifierGenerator identifierGenerator; - private final NodeService nodeService; - private final FlowNodeMapper flowNodeMapper; + private final FlowProcessEventHandler flowProcessEventHandler; + + private final UserService userService; + + private final FlwTaskMapper flwTaskMapper; private final FlwCategoryMapper flwCategoryMapper; /** -- Gitee From 6f14c91d30f6b6fd0dd87d55b2a2cb313e2bd19e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Tue, 14 Jan 2025 14:05:30 +0800 Subject: [PATCH 366/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20!pr636=20?= =?UTF-8?q?=E6=94=B9=E4=B8=BA=E6=B3=A8=E8=A7=A3=E6=96=B9=E5=BC=8F=E5=85=B3?= =?UTF-8?q?=E9=97=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/resources/application.yml | 2 +- .../service/impl/SysTenantServiceImpl.java | 10 ++++-- .../workflow/common/ConditionalOnEnable.java | 14 ++++++++ .../workflow/config/WarmFlowConfig.java | 2 ++ .../controller/FlwCategoryController.java | 2 ++ .../controller/FlwDefinitionController.java | 7 ++-- .../controller/FlwInstanceController.java | 7 ++-- .../controller/FlwTaskController.java | 2 ++ .../controller/TestLeaveController.java | 2 ++ .../handler/FlowProcessEventHandler.java | 2 ++ .../handler/WorkflowPermissionHandler.java | 2 ++ .../listener/WorkflowGlobalListener.java | 2 ++ .../impl/CategoryNameTranslationImpl.java | 2 ++ .../service/impl/FlwCategoryServiceImpl.java | 7 ++-- .../impl/FlwDefinitionServiceImpl.java | 19 ++++------- .../service/impl/FlwInstanceServiceImpl.java | 21 ++++-------- .../impl/FlwTaskAssigneeServiceImpl.java | 2 ++ .../service/impl/FlwTaskServiceImpl.java | 34 ++++++------------- .../service/impl/TestLeaveServiceImpl.java | 2 ++ .../service/impl/WorkflowServiceImpl.java | 2 ++ 20 files changed, 77 insertions(+), 66 deletions(-) create mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/ConditionalOnEnable.java diff --git a/ruoyi-admin/src/main/resources/application.yml b/ruoyi-admin/src/main/resources/application.yml index dbe16888d..9db74dc3f 100644 --- a/ruoyi-admin/src/main/resources/application.yml +++ b/ruoyi-admin/src/main/resources/application.yml @@ -276,7 +276,7 @@ websocket: --- # warm-flow工作流配置 warm-flow: # 是否开启工作流,默认true - enabled: true + enabled: false # 是否开启设计器ui ui: true # 默认Authorization,如果有多个token,用逗号分隔 diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java index 856dabba5..5e5e8cd20 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java @@ -57,7 +57,6 @@ public class SysTenantServiceImpl implements ISysTenantService { private final SysDictTypeMapper dictTypeMapper; private final SysDictDataMapper dictDataMapper; private final SysConfigMapper configMapper; - private final WorkflowService workflowService; /** * 查询租户 @@ -195,8 +194,13 @@ public class SysTenantServiceImpl implements ISysTenantService { config.setTenantId(tenantId); } configMapper.insertBatch(sysConfigList); - //新增租户流程定义 - workflowService.syncDef(tenantId); + + // 未开启工作流不执行下方操作 + if (SpringUtils.getProperty("workflow.enabled", Boolean.class, false)) { + WorkflowService workflowService = SpringUtils.getBean(WorkflowService.class); + // 新增租户流程定义 + workflowService.syncDef(tenantId); + } return true; } diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/ConditionalOnEnable.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/ConditionalOnEnable.java new file mode 100644 index 000000000..8adf0158b --- /dev/null +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/ConditionalOnEnable.java @@ -0,0 +1,14 @@ +package org.dromara.workflow.common; + +import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; + +import java.lang.annotation.ElementType; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; +import java.lang.annotation.Target; + +@Retention(RetentionPolicy.RUNTIME) +@Target({ ElementType.TYPE, ElementType.METHOD }) +@ConditionalOnProperty(value = "workflow.enabled", havingValue = "true") +public @interface ConditionalOnEnable { +} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/config/WarmFlowConfig.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/config/WarmFlowConfig.java index a38c83e27..4dec5b1cc 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/config/WarmFlowConfig.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/config/WarmFlowConfig.java @@ -1,6 +1,7 @@ package org.dromara.workflow.config; +import org.dromara.workflow.common.ConditionalOnEnable; import org.springframework.context.annotation.Configuration; /** @@ -8,6 +9,7 @@ import org.springframework.context.annotation.Configuration; * * @author may */ +@ConditionalOnEnable @Configuration public class WarmFlowConfig { diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwCategoryController.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwCategoryController.java index 99fa064df..9520cbdef 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwCategoryController.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwCategoryController.java @@ -13,6 +13,7 @@ import org.dromara.common.idempotent.annotation.RepeatSubmit; import org.dromara.common.log.annotation.Log; import org.dromara.common.log.enums.BusinessType; import org.dromara.common.web.core.BaseController; +import org.dromara.workflow.common.ConditionalOnEnable; import org.dromara.workflow.domain.bo.FlowCategoryBo; import org.dromara.workflow.domain.vo.FlowCategoryVo; import org.dromara.workflow.service.IFlwCategoryService; @@ -26,6 +27,7 @@ import java.util.List; * * @author may */ +@ConditionalOnEnable @Validated @RequiredArgsConstructor @RestController diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwDefinitionController.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwDefinitionController.java index 294f2f4c0..1310da3f6 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwDefinitionController.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwDefinitionController.java @@ -12,9 +12,9 @@ import org.dromara.common.web.core.BaseController; import org.dromara.warm.flow.core.entity.Definition; import org.dromara.warm.flow.core.service.DefService; import org.dromara.warm.flow.orm.entity.FlowDefinition; +import org.dromara.workflow.common.ConditionalOnEnable; import org.dromara.workflow.domain.vo.FlowDefinitionVo; import org.dromara.workflow.service.IFlwDefinitionService; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.transaction.annotation.Transactional; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; @@ -28,15 +28,14 @@ import java.util.List; * * @author may */ +@ConditionalOnEnable @Validated @RequiredArgsConstructor @RestController @RequestMapping("/workflow/definition") public class FlwDefinitionController extends BaseController { - @Autowired(required = false) - private DefService defService; - + private final DefService defService; private final IFlwDefinitionService flwDefinitionService; /** diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwInstanceController.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwInstanceController.java index 3393162c7..f85b8ff0a 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwInstanceController.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwInstanceController.java @@ -9,12 +9,12 @@ import org.dromara.common.mybatis.core.page.PageQuery; import org.dromara.common.mybatis.core.page.TableDataInfo; import org.dromara.common.web.core.BaseController; import org.dromara.warm.flow.core.service.InsService; +import org.dromara.workflow.common.ConditionalOnEnable; import org.dromara.workflow.domain.bo.FlowCancelBo; import org.dromara.workflow.domain.bo.FlowInstanceBo; import org.dromara.workflow.domain.bo.FlowInvalidBo; import org.dromara.workflow.domain.vo.FlowInstanceVo; import org.dromara.workflow.service.IFlwInstanceService; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; @@ -26,15 +26,14 @@ import java.util.Map; * * @author may */ +@ConditionalOnEnable @Validated @RequiredArgsConstructor @RestController @RequestMapping("/workflow/instance") public class FlwInstanceController extends BaseController { - @Autowired(required = false) - private InsService insService; - + private final InsService insService; private final IFlwInstanceService flwInstanceService; /** diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwTaskController.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwTaskController.java index 7736b7bf8..5d9535afc 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwTaskController.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwTaskController.java @@ -11,6 +11,7 @@ import org.dromara.common.mybatis.core.page.PageQuery; import org.dromara.common.mybatis.core.page.TableDataInfo; import org.dromara.common.web.core.BaseController; import org.dromara.warm.flow.core.entity.Node; +import org.dromara.workflow.common.ConditionalOnEnable; import org.dromara.workflow.domain.bo.*; import org.dromara.workflow.domain.vo.FlowHisTaskVo; import org.dromara.workflow.domain.vo.FlowTaskVo; @@ -26,6 +27,7 @@ import java.util.Map; * * @author may */ +@ConditionalOnEnable @Validated @RequiredArgsConstructor @RestController diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/TestLeaveController.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/TestLeaveController.java index e1c246f06..98825d92d 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/TestLeaveController.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/TestLeaveController.java @@ -15,6 +15,7 @@ import org.dromara.common.log.enums.BusinessType; import org.dromara.common.mybatis.core.page.PageQuery; import org.dromara.common.mybatis.core.page.TableDataInfo; import org.dromara.common.web.core.BaseController; +import org.dromara.workflow.common.ConditionalOnEnable; import org.dromara.workflow.domain.bo.TestLeaveBo; import org.dromara.workflow.domain.vo.TestLeaveVo; import org.dromara.workflow.service.ITestLeaveService; @@ -29,6 +30,7 @@ import java.util.List; * @author may * @date 2023-07-21 */ +@ConditionalOnEnable @Validated @RequiredArgsConstructor @RestController diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/handler/FlowProcessEventHandler.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/handler/FlowProcessEventHandler.java index 9bac6bcd2..656e013e4 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/handler/FlowProcessEventHandler.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/handler/FlowProcessEventHandler.java @@ -6,6 +6,7 @@ import org.dromara.common.core.domain.event.ProcessEvent; import org.dromara.common.core.domain.event.ProcessTaskEvent; import org.dromara.common.core.utils.SpringUtils; import org.dromara.common.tenant.helper.TenantHelper; +import org.dromara.workflow.common.ConditionalOnEnable; import org.springframework.stereotype.Component; /** @@ -14,6 +15,7 @@ import org.springframework.stereotype.Component; * @author may * @date 2024-06-02 */ +@ConditionalOnEnable @Slf4j @Component public class FlowProcessEventHandler { diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/handler/WorkflowPermissionHandler.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/handler/WorkflowPermissionHandler.java index a58709a5f..c18e4ed52 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/handler/WorkflowPermissionHandler.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/handler/WorkflowPermissionHandler.java @@ -4,6 +4,7 @@ import cn.hutool.core.util.ObjectUtil; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.dromara.common.core.domain.model.LoginUser; +import org.dromara.workflow.common.ConditionalOnEnable; import org.dromara.workflow.common.enums.TaskAssigneeEnum; import org.dromara.common.satoken.utils.LoginHelper; import org.dromara.warm.flow.core.dto.FlowParams; @@ -22,6 +23,7 @@ import java.util.stream.Stream; * * @author AprilWind */ +@ConditionalOnEnable @RequiredArgsConstructor @Component @Slf4j diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/listener/WorkflowGlobalListener.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/listener/WorkflowGlobalListener.java index 35c16bda3..097d74ce7 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/listener/WorkflowGlobalListener.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/listener/WorkflowGlobalListener.java @@ -11,6 +11,7 @@ import org.dromara.warm.flow.core.entity.Task; import org.dromara.warm.flow.core.listener.GlobalListener; import org.dromara.warm.flow.core.listener.ListenerVariable; import org.dromara.warm.flow.orm.entity.FlowTask; +import org.dromara.workflow.common.ConditionalOnEnable; import org.dromara.workflow.handler.FlowProcessEventHandler; import org.dromara.workflow.service.IFlwInstanceService; import org.dromara.workflow.service.IFlwTaskService; @@ -23,6 +24,7 @@ import java.util.List; * * @author may */ +@ConditionalOnEnable @Component @Slf4j @RequiredArgsConstructor diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/CategoryNameTranslationImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/CategoryNameTranslationImpl.java index 4adbadaf7..f13e66645 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/CategoryNameTranslationImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/CategoryNameTranslationImpl.java @@ -4,6 +4,7 @@ import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.dromara.common.translation.annotation.TranslationType; import org.dromara.common.translation.core.TranslationInterface; +import org.dromara.workflow.common.ConditionalOnEnable; import org.dromara.workflow.common.constant.FlowConstant; import org.dromara.workflow.service.IFlwCategoryService; import org.springframework.stereotype.Service; @@ -13,6 +14,7 @@ import org.springframework.stereotype.Service; * * @author AprilWind */ +@ConditionalOnEnable @Slf4j @RequiredArgsConstructor @Service diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwCategoryServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwCategoryServiceImpl.java index 368212f10..1e9507b80 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwCategoryServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwCategoryServiceImpl.java @@ -13,13 +13,13 @@ import org.dromara.common.mybatis.helper.DataBaseHelper; import org.dromara.common.satoken.utils.LoginHelper; import org.dromara.warm.flow.core.service.DefService; import org.dromara.warm.flow.orm.entity.FlowDefinition; +import org.dromara.workflow.common.ConditionalOnEnable; import org.dromara.workflow.common.constant.FlowConstant; import org.dromara.workflow.domain.FlowCategory; import org.dromara.workflow.domain.bo.FlowCategoryBo; import org.dromara.workflow.domain.vo.FlowCategoryVo; import org.dromara.workflow.mapper.FlwCategoryMapper; import org.dromara.workflow.service.IFlwCategoryService; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.cache.annotation.CacheEvict; import org.springframework.cache.annotation.Cacheable; import org.springframework.stereotype.Service; @@ -32,13 +32,12 @@ import java.util.List; * * @author may */ +@ConditionalOnEnable @RequiredArgsConstructor @Service public class FlwCategoryServiceImpl implements IFlwCategoryService { - @Autowired(required = false) - private DefService defService; - + private final DefService defService; private final FlwCategoryMapper baseMapper; /** diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwDefinitionServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwDefinitionServiceImpl.java index 6ded1a6d4..4e72371a6 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwDefinitionServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwDefinitionServiceImpl.java @@ -30,13 +30,13 @@ import org.dromara.warm.flow.orm.mapper.FlowDefinitionMapper; import org.dromara.warm.flow.orm.mapper.FlowHisTaskMapper; import org.dromara.warm.flow.orm.mapper.FlowNodeMapper; import org.dromara.warm.flow.orm.mapper.FlowSkipMapper; +import org.dromara.workflow.common.ConditionalOnEnable; import org.dromara.workflow.common.constant.FlowConstant; import org.dromara.workflow.domain.FlowCategory; import org.dromara.workflow.domain.vo.FlowDefinitionVo; import org.dromara.workflow.mapper.FlwCategoryMapper; import org.dromara.workflow.service.IFlwDefinitionService; import org.dromara.workflow.utils.WorkflowUtils; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.web.multipart.MultipartFile; @@ -53,22 +53,17 @@ import static org.dromara.common.core.constant.TenantConstants.DEFAULT_TENANT_ID * * @author may */ +@ConditionalOnEnable @Slf4j @RequiredArgsConstructor @Service public class FlwDefinitionServiceImpl implements IFlwDefinitionService { - @Autowired(required = false) - private DefService defService; - @Autowired(required = false) - private FlowDefinitionMapper flowDefinitionMapper; - @Autowired(required = false) - private FlowHisTaskMapper flowHisTaskMapper; - @Autowired(required = false) - private FlowNodeMapper flowNodeMapper; - @Autowired(required = false) - private FlowSkipMapper flowSkipMapper; - + private final DefService defService; + private final FlowDefinitionMapper flowDefinitionMapper; + private final FlowHisTaskMapper flowHisTaskMapper; + private final FlowNodeMapper flowNodeMapper; + private final FlowSkipMapper flowSkipMapper; private final FlwCategoryMapper flwCategoryMapper; /** diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwInstanceServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwInstanceServiceImpl.java index 24f86de11..7f09a4596 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwInstanceServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwInstanceServiceImpl.java @@ -34,6 +34,7 @@ import org.dromara.warm.flow.orm.entity.FlowInstance; import org.dromara.warm.flow.orm.entity.FlowTask; import org.dromara.warm.flow.orm.mapper.FlowHisTaskMapper; import org.dromara.warm.flow.orm.mapper.FlowInstanceMapper; +import org.dromara.workflow.common.ConditionalOnEnable; import org.dromara.workflow.common.enums.TaskStatusEnum; import org.dromara.workflow.domain.bo.FlowCancelBo; import org.dromara.workflow.domain.bo.FlowInstanceBo; @@ -47,7 +48,6 @@ import org.dromara.workflow.mapper.FlwInstanceMapper; import org.dromara.workflow.service.IFlwInstanceService; import org.dromara.workflow.service.IFlwTaskService; import org.dromara.workflow.utils.WorkflowUtils; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -60,26 +60,19 @@ import java.util.stream.Collectors; * * @author may */ +@ConditionalOnEnable @Slf4j @RequiredArgsConstructor @Service public class FlwInstanceServiceImpl implements IFlwInstanceService { - @Autowired(required = false) - private InsService insService; - @Autowired(required = false) - private DefService defService; - @Autowired(required = false) - private TaskService taskService; - @Autowired(required = false) - private FlowHisTaskMapper flowHisTaskMapper; - @Autowired(required = false) - private FlowInstanceMapper flowInstanceMapper; - + private final InsService insService; + private final DefService defService; + private final TaskService taskService; + private final FlowHisTaskMapper flowHisTaskMapper; + private final FlowInstanceMapper flowInstanceMapper; private final FlowProcessEventHandler flowProcessEventHandler; - private final IFlwTaskService flwTaskService; - private final FlwInstanceMapper flwInstanceMapper; private final FlwCategoryMapper flwCategoryMapper; diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskAssigneeServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskAssigneeServiceImpl.java index 5f348661b..5877bb503 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskAssigneeServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskAssigneeServiceImpl.java @@ -20,6 +20,7 @@ import org.dromara.warm.flow.ui.dto.HandlerQuery; import org.dromara.warm.flow.ui.dto.TreeFunDto; import org.dromara.warm.flow.ui.service.HandlerSelectService; import org.dromara.warm.flow.ui.vo.HandlerSelectVo; +import org.dromara.workflow.common.ConditionalOnEnable; import org.dromara.workflow.common.enums.TaskAssigneeEnum; import org.dromara.workflow.service.IFlwTaskAssigneeService; import org.springframework.stereotype.Service; @@ -33,6 +34,7 @@ import java.util.Optional; * * @author AprilWind */ +@ConditionalOnEnable @Slf4j @RequiredArgsConstructor @Service diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java index 11f83ede6..faa7d9394 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java @@ -32,8 +32,8 @@ import org.dromara.warm.flow.core.service.*; import org.dromara.warm.flow.orm.entity.*; import org.dromara.warm.flow.orm.mapper.FlowHisTaskMapper; import org.dromara.warm.flow.orm.mapper.FlowInstanceMapper; -import org.dromara.warm.flow.orm.mapper.FlowNodeMapper; import org.dromara.warm.flow.orm.mapper.FlowTaskMapper; +import org.dromara.workflow.common.ConditionalOnEnable; import org.dromara.workflow.common.enums.TaskAssigneeType; import org.dromara.workflow.common.enums.TaskStatusEnum; import org.dromara.workflow.domain.bo.*; @@ -45,7 +45,6 @@ import org.dromara.workflow.mapper.FlwCategoryMapper; import org.dromara.workflow.mapper.FlwTaskMapper; import org.dromara.workflow.service.IFlwTaskService; import org.dromara.workflow.utils.WorkflowUtils; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -60,36 +59,23 @@ import static org.dromara.workflow.common.constant.FlowConstant.*; * * @author may */ +@ConditionalOnEnable @Slf4j @RequiredArgsConstructor @Service public class FlwTaskServiceImpl implements IFlwTaskService { - @Autowired(required = false) - private TaskService taskService; - @Autowired(required = false) - private InsService insService; - @Autowired(required = false) - private DefService defService; - @Autowired(required = false) - private HisTaskService hisTaskService; - @Autowired(required = false) - private NodeService nodeService; - - @Autowired(required = false) - private FlowInstanceMapper flowInstanceMapper; - @Autowired(required = false) - private FlowTaskMapper flowTaskMapper; - @Autowired(required = false) - private FlowHisTaskMapper flowHisTaskMapper; - @Autowired(required = false) - private FlowNodeMapper flowNodeMapper; - + private final TaskService taskService; + private final InsService insService; + private final DefService defService; + private final HisTaskService hisTaskService; + private final NodeService nodeService; + private final FlowInstanceMapper flowInstanceMapper; + private final FlowTaskMapper flowTaskMapper; + private final FlowHisTaskMapper flowHisTaskMapper; private final IdentifierGenerator identifierGenerator; private final FlowProcessEventHandler flowProcessEventHandler; - private final UserService userService; - private final FlwTaskMapper flwTaskMapper; private final FlwCategoryMapper flwCategoryMapper; diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/TestLeaveServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/TestLeaveServiceImpl.java index 499d64b6e..a11e6c19a 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/TestLeaveServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/TestLeaveServiceImpl.java @@ -17,6 +17,7 @@ import org.dromara.common.core.utils.StringUtils; import org.dromara.common.mybatis.core.domain.BaseEntity; import org.dromara.common.mybatis.core.page.PageQuery; import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.dromara.workflow.common.ConditionalOnEnable; import org.dromara.workflow.domain.TestLeave; import org.dromara.workflow.domain.bo.TestLeaveBo; import org.dromara.workflow.domain.vo.TestLeaveVo; @@ -34,6 +35,7 @@ import java.util.List; * @author may * @date 2023-07-21 */ +@ConditionalOnEnable @RequiredArgsConstructor @Service @Slf4j diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WorkflowServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WorkflowServiceImpl.java index d00c90735..6be20c4cf 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WorkflowServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WorkflowServiceImpl.java @@ -8,6 +8,7 @@ import org.dromara.common.core.domain.dto.StartProcessDTO; import org.dromara.common.core.service.WorkflowService; import org.dromara.common.core.utils.StringUtils; import org.dromara.warm.flow.orm.entity.FlowInstance; +import org.dromara.workflow.common.ConditionalOnEnable; import org.dromara.workflow.domain.bo.CompleteTaskBo; import org.dromara.workflow.domain.bo.StartProcessBo; import org.dromara.workflow.service.IFlwDefinitionService; @@ -23,6 +24,7 @@ import java.util.Map; * * @author may */ +@ConditionalOnEnable @RequiredArgsConstructor @Service public class WorkflowServiceImpl implements WorkflowService { -- Gitee From dd54cc972a251112359d1d8acbdce8cd3221ffd1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Tue, 14 Jan 2025 14:12:19 +0800 Subject: [PATCH 367/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20=E9=85=8D?= =?UTF-8?q?=E7=BD=AE=E5=90=8D=E4=B9=A6=E5=86=99=E9=94=99=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/dromara/system/service/impl/SysTenantServiceImpl.java | 2 +- .../java/org/dromara/workflow/common/ConditionalOnEnable.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java index 5e5e8cd20..2496e0a7d 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java @@ -196,7 +196,7 @@ public class SysTenantServiceImpl implements ISysTenantService { configMapper.insertBatch(sysConfigList); // 未开启工作流不执行下方操作 - if (SpringUtils.getProperty("workflow.enabled", Boolean.class, false)) { + if (SpringUtils.getProperty("work-flow.enabled", Boolean.class, false)) { WorkflowService workflowService = SpringUtils.getBean(WorkflowService.class); // 新增租户流程定义 workflowService.syncDef(tenantId); diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/ConditionalOnEnable.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/ConditionalOnEnable.java index 8adf0158b..e04426496 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/ConditionalOnEnable.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/ConditionalOnEnable.java @@ -9,6 +9,6 @@ import java.lang.annotation.Target; @Retention(RetentionPolicy.RUNTIME) @Target({ ElementType.TYPE, ElementType.METHOD }) -@ConditionalOnProperty(value = "workflow.enabled", havingValue = "true") +@ConditionalOnProperty(value = "work-flow.enabled", havingValue = "true") public @interface ConditionalOnEnable { } -- Gitee From cb71df8a4293be196e1b74463a6e5520303e3cad Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Tue, 14 Jan 2025 14:41:01 +0800 Subject: [PATCH 368/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E5=B7=A5?= =?UTF-8?q?=E4=BD=9C=E6=B5=81=E4=BD=BF=E7=94=A8=E7=B3=BB=E7=BB=9F=E8=87=AA?= =?UTF-8?q?=E5=B8=A6=E9=9B=AA=E8=8A=B1=E7=94=9F=E6=88=90=E5=99=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ruoyi-admin/src/main/resources/application.yml | 2 +- .../dromara/workflow/config/WarmFlowConfig.java | 16 +++++++++++++++- 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/ruoyi-admin/src/main/resources/application.yml b/ruoyi-admin/src/main/resources/application.yml index 9db74dc3f..dbe16888d 100644 --- a/ruoyi-admin/src/main/resources/application.yml +++ b/ruoyi-admin/src/main/resources/application.yml @@ -276,7 +276,7 @@ websocket: --- # warm-flow工作流配置 warm-flow: # 是否开启工作流,默认true - enabled: false + enabled: true # 是否开启设计器ui ui: true # 默认Authorization,如果有多个token,用逗号分隔 diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/config/WarmFlowConfig.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/config/WarmFlowConfig.java index 4dec5b1cc..8bae9515f 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/config/WarmFlowConfig.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/config/WarmFlowConfig.java @@ -1,7 +1,12 @@ package org.dromara.workflow.config; +import com.baomidou.mybatisplus.core.incrementer.IdentifierGenerator; +import org.dromara.warm.flow.core.config.WarmFlow; +import org.dromara.warm.flow.core.utils.IdUtils; +import org.dromara.warm.plugin.modes.sb.config.BeanConfig; import org.dromara.workflow.common.ConditionalOnEnable; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Configuration; /** @@ -11,7 +16,16 @@ import org.springframework.context.annotation.Configuration; */ @ConditionalOnEnable @Configuration -public class WarmFlowConfig { +public class WarmFlowConfig extends BeanConfig { + + @Autowired + private IdentifierGenerator identifierGenerator; + + @Override + public void after(WarmFlow flowConfig) { + // 设置Mybatis-Plus默认主键生成器 + IdUtils.setInstanceNative(() -> identifierGenerator.nextId(null).longValue()); + } } -- Gitee From 62b7d96551d2c2ab7f31b95b9ff6538097e5f66b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Tue, 14 Jan 2025 23:00:04 +0800 Subject: [PATCH 369/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20=E5=AE=9E?= =?UTF-8?q?=E4=BD=93=E7=B1=BB=E6=96=B9=E6=B3=95=E4=B9=A6=E5=86=99=E9=94=99?= =?UTF-8?q?=E8=AF=AF(=E4=B8=8D=E5=BD=B1=E5=93=8D=E5=8A=9F=E8=83=BD)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/org/dromara/generator/domain/GenTableColumn.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/domain/GenTableColumn.java b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/domain/GenTableColumn.java index e1560b421..6b2e429ed 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/domain/GenTableColumn.java +++ b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/domain/GenTableColumn.java @@ -159,7 +159,7 @@ public class GenTableColumn extends BaseEntity { } public boolean isEdit() { - return isInsert(this.isEdit); + return isEdit(this.isEdit); } public boolean isEdit(String isEdit) { -- Gitee From 3444b50da6c65abeddb80666b840946a0529518a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Wed, 15 Jan 2025 09:56:02 +0800 Subject: [PATCH 370/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E5=B7=A5?= =?UTF-8?q?=E4=BD=9C=E6=B5=81=E9=85=8D=E7=BD=AE=E4=B9=A6=E5=86=99=E9=94=99?= =?UTF-8?q?=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/dromara/system/service/impl/SysTenantServiceImpl.java | 2 +- .../java/org/dromara/workflow/common/ConditionalOnEnable.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java index 2496e0a7d..f31bd3027 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java @@ -196,7 +196,7 @@ public class SysTenantServiceImpl implements ISysTenantService { configMapper.insertBatch(sysConfigList); // 未开启工作流不执行下方操作 - if (SpringUtils.getProperty("work-flow.enabled", Boolean.class, false)) { + if (SpringUtils.getProperty("warm-flow.enabled", Boolean.class, false)) { WorkflowService workflowService = SpringUtils.getBean(WorkflowService.class); // 新增租户流程定义 workflowService.syncDef(tenantId); diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/ConditionalOnEnable.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/ConditionalOnEnable.java index e04426496..5d24b3509 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/ConditionalOnEnable.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/ConditionalOnEnable.java @@ -9,6 +9,6 @@ import java.lang.annotation.Target; @Retention(RetentionPolicy.RUNTIME) @Target({ ElementType.TYPE, ElementType.METHOD }) -@ConditionalOnProperty(value = "work-flow.enabled", havingValue = "true") +@ConditionalOnProperty(value = "warm-flow.enabled", havingValue = "true") public @interface ConditionalOnEnable { } -- Gitee From 4ba4ea4fcc559a746daf44f276867e97e580019e Mon Sep 17 00:00:00 2001 From: AprilWind <2100166581@qq.com> Date: Wed, 15 Jan 2025 16:56:09 +0800 Subject: [PATCH 371/540] =?UTF-8?q?update=20=E5=8D=87=E7=BA=A7warm-flow?= =?UTF-8?q?=E5=88=B01.6.0-m4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 2 +- .../workflow/config/WarmFlowConfig.java | 17 +----- .../controller/FlwDefinitionController.java | 10 ++-- .../service/IFlwDefinitionService.java | 2 +- .../impl/FlwDefinitionServiceImpl.java | 57 +++++++++---------- .../service/impl/FlwInstanceServiceImpl.java | 26 ++++----- 6 files changed, 44 insertions(+), 70 deletions(-) diff --git a/pom.xml b/pom.xml index 2993af438..82ed3a855 100644 --- a/pom.xml +++ b/pom.xml @@ -50,7 +50,7 @@ 8.7.2-20241022 - 1.3.7 + 1.6.0-m4 3.2.2 diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/config/WarmFlowConfig.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/config/WarmFlowConfig.java index 8bae9515f..08f1808d1 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/config/WarmFlowConfig.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/config/WarmFlowConfig.java @@ -1,12 +1,6 @@ package org.dromara.workflow.config; - -import com.baomidou.mybatisplus.core.incrementer.IdentifierGenerator; -import org.dromara.warm.flow.core.config.WarmFlow; -import org.dromara.warm.flow.core.utils.IdUtils; -import org.dromara.warm.plugin.modes.sb.config.BeanConfig; import org.dromara.workflow.common.ConditionalOnEnable; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Configuration; /** @@ -16,16 +10,7 @@ import org.springframework.context.annotation.Configuration; */ @ConditionalOnEnable @Configuration -public class WarmFlowConfig extends BeanConfig { - - @Autowired - private IdentifierGenerator identifierGenerator; - - @Override - public void after(WarmFlow flowConfig) { - // 设置Mybatis-Plus默认主键生成器 - IdUtils.setInstanceNative(() -> identifierGenerator.nextId(null).longValue()); - } +public class WarmFlowConfig { } diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwDefinitionController.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwDefinitionController.java index 1310da3f6..10d9de838 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwDefinitionController.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwDefinitionController.java @@ -104,7 +104,6 @@ public class FlwDefinitionController extends BaseController { @Log(title = "流程定义", businessType = BusinessType.INSERT) @PutMapping("/publish/{id}") @RepeatSubmit() - @Transactional(rollbackFor = Exception.class) public R publish(@PathVariable Long id) { return R.ok(flwDefinitionService.publish(id)); } @@ -127,7 +126,6 @@ public class FlwDefinitionController extends BaseController { */ @Log(title = "流程定义", businessType = BusinessType.DELETE) @DeleteMapping("/{ids}") - @Transactional(rollbackFor = Exception.class) public R remove(@PathVariable List ids) { return toAjax(flwDefinitionService.removeDef(ids)); } @@ -153,9 +151,8 @@ public class FlwDefinitionController extends BaseController { */ @Log(title = "流程定义", businessType = BusinessType.IMPORT) @PostMapping("/importDef") - @Transactional(rollbackFor = Exception.class) public R importDef(MultipartFile file, String category) { - return R.ok(flwDefinitionService.importXml(file, category)); + return R.ok(flwDefinitionService.importJson(file, category)); } /** @@ -172,13 +169,13 @@ public class FlwDefinitionController extends BaseController { } /** - * 获取流程定义xml字符串 + * 获取流程定义JSON字符串 * * @param id 流程定义id */ @GetMapping("/xmlString/{id}") public R xmlString(@PathVariable Long id) { - return R.ok("操作成功", defService.xmlString(id)); + return R.ok("操作成功", defService.exportJson(id)); } /** @@ -189,6 +186,7 @@ public class FlwDefinitionController extends BaseController { */ @RepeatSubmit() @PutMapping("/active/{id}") + @Transactional(rollbackFor = Exception.class) public R active(@PathVariable Long id, @RequestParam boolean active) { return R.ok(active ? defService.active(id) : defService.unActive(id)); } diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IFlwDefinitionService.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IFlwDefinitionService.java index 6b5ca594a..1a2d29f77 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IFlwDefinitionService.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IFlwDefinitionService.java @@ -60,7 +60,7 @@ public interface IFlwDefinitionService { * @param category 分类 * @return 结果 */ - boolean importXml(MultipartFile file, String category); + boolean importJson(MultipartFile file, String category); /** * 删除流程定义 diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwDefinitionServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwDefinitionServiceImpl.java index 4e72371a6..da547ef95 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwDefinitionServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwDefinitionServiceImpl.java @@ -3,22 +3,21 @@ package org.dromara.workflow.service.impl; import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.convert.Convert; +import cn.hutool.core.io.IoUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import jakarta.servlet.http.HttpServletResponse; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; -import org.dom4j.Document; -import org.dom4j.io.OutputFormat; -import org.dom4j.io.XMLWriter; import org.dromara.common.core.exception.ServiceException; +import org.dromara.common.core.utils.DateUtils; import org.dromara.common.core.utils.StreamUtils; import org.dromara.common.core.utils.StringUtils; +import org.dromara.common.json.utils.JsonUtils; import org.dromara.common.mybatis.core.page.PageQuery; import org.dromara.common.mybatis.core.page.TableDataInfo; -import org.dromara.warm.flow.core.dto.FlowCombine; -import org.dromara.warm.flow.core.entity.Definition; +import org.dromara.warm.flow.core.dto.DefJson; import org.dromara.warm.flow.core.enums.NodeType; import org.dromara.warm.flow.core.enums.PublishStatus; import org.dromara.warm.flow.core.service.DefService; @@ -42,6 +41,8 @@ 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.util.ArrayList; import java.util.Arrays; import java.util.List; @@ -120,6 +121,7 @@ public class FlwDefinitionServiceImpl implements IFlwDefinitionService { * @param id 流程定义id */ @Override + @Transactional(rollbackFor = Exception.class) public boolean publish(Long id) { List flowNodes = flowNodeMapper.selectList(new LambdaQueryWrapper().eq(FlowNode::getDefinitionId, id)); List errorMsg = new ArrayList<>(); @@ -143,16 +145,20 @@ public class FlwDefinitionServiceImpl implements IFlwDefinitionService { * @param file 文件 */ @Override - public boolean importXml(MultipartFile file, String category) { - try { - FlowCombine combine = defService.readXml(file.getInputStream()); - // 流程定义 - Definition definition = combine.getDefinition(); - definition.setCategory(category); - defService.importFlow(combine); + @Transactional(rollbackFor = Exception.class) + public boolean importJson(MultipartFile file, String category) { + try (InputStream inputStream = file.getInputStream()) { + byte[] fileBytes = inputStream.readAllBytes(); + String fileContent = new String(fileBytes, StandardCharsets.UTF_8); + DefJson defJson = JsonUtils.parseObject(fileContent, DefJson.class); + defJson.setCategory(category); + defService.importDef(defJson); + } catch (IOException e) { + log.error("读取文件流错误: {}", e.getMessage(), e); + throw new IllegalStateException("文件读取失败,请检查文件内容", e); } catch (Exception e) { log.error("导入流程定义错误: {}", e.getMessage(), e); - throw new RuntimeException(e); + throw new IllegalStateException("导入流程定义失败", e); } return true; } @@ -166,24 +172,15 @@ public class FlwDefinitionServiceImpl implements IFlwDefinitionService { */ @Override public void exportDef(Long id, HttpServletResponse response) throws IOException { - Document document = defService.exportXml(id); - // 设置生成xml的格式 - OutputFormat of = OutputFormat.createPrettyPrint(); - // 设置编码格式 - of.setEncoding("UTF-8"); - of.setIndent(true); - of.setIndent(" "); - of.setNewlines(true); - - // 创建一个xml文档编辑器 - XMLWriter writer = new XMLWriter(response.getOutputStream(), of); - writer.setEscapeText(false); + byte[] data = defService.exportJson(id).getBytes(StandardCharsets.UTF_8); + String filename = "workflow_export_" + DateUtils.dateTimeNow() + ".json"; + // 设置响应头和内容类型 response.reset(); - response.setCharacterEncoding("UTF-8"); - response.setContentType("application/x-msdownload"); - response.setHeader("Content-Disposition", "attachment;"); - writer.write(document); - writer.close(); + response.setCharacterEncoding(StandardCharsets.UTF_8.name()); + response.setContentType("application/json"); + response.setHeader("Content-Disposition", "attachment; filename=" + filename); + response.addHeader("Content-Length", "" + data.length); + IoUtil.write(response.getOutputStream(), false, data); } /** diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwInstanceServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwInstanceServiceImpl.java index 7f09a4596..f5153c8db 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwInstanceServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwInstanceServiceImpl.java @@ -19,13 +19,14 @@ import org.dromara.common.core.utils.StringUtils; import org.dromara.common.mybatis.core.page.PageQuery; import org.dromara.common.mybatis.core.page.TableDataInfo; import org.dromara.common.satoken.utils.LoginHelper; -import org.dromara.warm.flow.core.FlowFactory; +import org.dromara.warm.flow.core.FlowEngine; import org.dromara.warm.flow.core.constant.ExceptionCons; import org.dromara.warm.flow.core.dto.FlowParams; import org.dromara.warm.flow.core.entity.Definition; import org.dromara.warm.flow.core.entity.Instance; import org.dromara.warm.flow.core.entity.Task; import org.dromara.warm.flow.core.enums.NodeType; +import org.dromara.warm.flow.core.service.ChartService; import org.dromara.warm.flow.core.service.DefService; import org.dromara.warm.flow.core.service.InsService; import org.dromara.warm.flow.core.service.TaskService; @@ -51,7 +52,6 @@ import org.dromara.workflow.utils.WorkflowUtils; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; -import java.io.IOException; import java.util.*; import java.util.stream.Collectors; @@ -68,6 +68,7 @@ public class FlwInstanceServiceImpl implements IFlwInstanceService { private final InsService insService; private final DefService defService; + private final ChartService chartService; private final TaskService taskService; private final FlowHisTaskMapper flowHisTaskMapper; private final FlowInstanceMapper flowInstanceMapper; @@ -248,7 +249,7 @@ public class FlwInstanceServiceImpl implements IFlwInstanceService { //撤销 WorkflowUtils.backTask(message, instance.getId(), applyNodeCode, BusinessStatusEnum.CANCEL.getStatus(), BusinessStatusEnum.CANCEL.getStatus()); //判断或签节点是否有多个,只保留一个 - List currentTaskList = taskService.list(FlowFactory.newTask().setInstanceId(instance.getId())); + List currentTaskList = taskService.list(FlowEngine.newTask().setInstanceId(instance.getId())); if (CollUtil.isNotEmpty(currentTaskList)) { if (currentTaskList.size() > 1) { currentTaskList.remove(0); @@ -284,14 +285,14 @@ public class FlwInstanceServiceImpl implements IFlwInstanceService { */ @Override public Map flowImage(String businessId) { - Map map = new HashMap<>(16); FlowInstance flowInstance = this.selectInstByBusinessId(businessId); - if (flowInstance == null) { + if (ObjectUtil.isNull(flowInstance)) { throw new ServiceException(ExceptionCons.NOT_FOUNT_INSTANCE); } + Long instanceId = flowInstance.getId(); //运行中的任务 List list = new ArrayList<>(); - List flowTaskList = flwTaskService.selectByInstId(flowInstance.getId()); + List flowTaskList = flwTaskService.selectByInstId(instanceId); if (CollUtil.isNotEmpty(flowTaskList)) { List flowHisTaskVos = BeanUtil.copyToList(flowTaskList, FlowHisTaskVo.class); for (FlowHisTaskVo flowHisTaskVo : flowHisTaskVos) { @@ -312,22 +313,15 @@ public class FlwInstanceServiceImpl implements IFlwInstanceService { } //历史任务 LambdaQueryWrapper wrapper = Wrappers.lambdaQuery(); - wrapper.eq(FlowHisTask::getInstanceId, flowInstance.getId()); + wrapper.eq(FlowHisTask::getInstanceId, instanceId); wrapper.eq(FlowHisTask::getNodeType, NodeType.BETWEEN.getKey()); wrapper.orderByDesc(FlowHisTask::getCreateTime).orderByDesc(FlowHisTask::getUpdateTime); List flowHisTasks = flowHisTaskMapper.selectList(wrapper); if (CollUtil.isNotEmpty(flowHisTasks)) { list.addAll(BeanUtil.copyToList(flowHisTasks, FlowHisTaskVo.class)); } - - map.put("list", list); - try { - String flowChart = defService.flowChart(flowInstance.getId()); - map.put("image", flowChart); - } catch (IOException e) { - throw new RuntimeException(e); - } - return map; + String flowChart = chartService.chartIns(instanceId); + return Map.of("list", list, "image", flowChart); } /** -- Gitee From 652f5161a91475ae0c22a88eb06b36b240edb744 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Wed, 15 Jan 2025 17:40:31 +0800 Subject: [PATCH 372/540] =?UTF-8?q?update=20=E9=80=82=E9=85=8D=20=E6=96=B0?= =?UTF-8?q?=E7=89=88=E6=9C=AC=E5=B0=86xml=E8=BD=AC=E4=B8=BAjson?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/FlwDefinitionServiceImpl.java | 16 +-- script/bpmn/leave1.json | 75 +++++++++++ script/bpmn/leave1.xml | 17 --- script/bpmn/leave2.json | 111 ++++++++++++++++ script/bpmn/leave2.xml | 24 ---- script/bpmn/leave3.json | 121 ++++++++++++++++++ script/bpmn/leave3.xml | 27 ---- script/bpmn/leave4.json | 90 +++++++++++++ script/bpmn/leave4.xml | 20 --- script/bpmn/leave5.json | 121 ++++++++++++++++++ script/bpmn/leave5.xml | 27 ---- 11 files changed, 522 insertions(+), 127 deletions(-) create mode 100644 script/bpmn/leave1.json delete mode 100644 script/bpmn/leave1.xml create mode 100644 script/bpmn/leave2.json delete mode 100644 script/bpmn/leave2.xml create mode 100644 script/bpmn/leave3.json delete mode 100644 script/bpmn/leave3.xml create mode 100644 script/bpmn/leave4.json delete mode 100644 script/bpmn/leave4.xml create mode 100644 script/bpmn/leave5.json delete mode 100644 script/bpmn/leave5.xml diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwDefinitionServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwDefinitionServiceImpl.java index da547ef95..a881ba692 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwDefinitionServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwDefinitionServiceImpl.java @@ -11,7 +11,6 @@ import jakarta.servlet.http.HttpServletResponse; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.dromara.common.core.exception.ServiceException; -import org.dromara.common.core.utils.DateUtils; import org.dromara.common.core.utils.StreamUtils; import org.dromara.common.core.utils.StringUtils; import org.dromara.common.json.utils.JsonUtils; @@ -41,7 +40,6 @@ 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.util.ArrayList; import java.util.Arrays; @@ -147,18 +145,13 @@ public class FlwDefinitionServiceImpl implements IFlwDefinitionService { @Override @Transactional(rollbackFor = Exception.class) public boolean importJson(MultipartFile file, String category) { - try (InputStream inputStream = file.getInputStream()) { - byte[] fileBytes = inputStream.readAllBytes(); - String fileContent = new String(fileBytes, StandardCharsets.UTF_8); - DefJson defJson = JsonUtils.parseObject(fileContent, DefJson.class); + try { + DefJson defJson = JsonUtils.parseObject(file.getBytes(), DefJson.class); defJson.setCategory(category); defService.importDef(defJson); } catch (IOException e) { log.error("读取文件流错误: {}", e.getMessage(), e); throw new IllegalStateException("文件读取失败,请检查文件内容", e); - } catch (Exception e) { - log.error("导入流程定义错误: {}", e.getMessage(), e); - throw new IllegalStateException("导入流程定义失败", e); } return true; } @@ -173,12 +166,11 @@ public class FlwDefinitionServiceImpl implements IFlwDefinitionService { @Override public void exportDef(Long id, HttpServletResponse response) throws IOException { byte[] data = defService.exportJson(id).getBytes(StandardCharsets.UTF_8); - String filename = "workflow_export_" + DateUtils.dateTimeNow() + ".json"; // 设置响应头和内容类型 response.reset(); response.setCharacterEncoding(StandardCharsets.UTF_8.name()); - response.setContentType("application/json"); - response.setHeader("Content-Disposition", "attachment; filename=" + filename); + response.setContentType("application/text"); + response.setHeader("Content-Disposition", "attachment;"); response.addHeader("Content-Length", "" + data.length); IoUtil.write(response.getOutputStream(), false, data); } diff --git a/script/bpmn/leave1.json b/script/bpmn/leave1.json new file mode 100644 index 000000000..0cf67bc46 --- /dev/null +++ b/script/bpmn/leave1.json @@ -0,0 +1,75 @@ +{ + "flowCode" : "leave1", + "flowName" : "请假申请-普通", + "category" : "1", + "version" : "1", + "formCustom" : "N", + "formPath" : "/workflow/leaveEdit/index", + "nodeList" : [ { + "nodeType" : 0, + "nodeCode" : "d5ee3ddf-3968-4379-a86f-9ceabde5faac", + "nodeName" : "开始", + "nodeRatio" : 0.000, + "coordinate" : "200,200|200,200", + "skipAnyNode" : "N", + "formCustom" : "N", + "skipList" : [ { + "nowNodeCode" : "d5ee3ddf-3968-4379-a86f-9ceabde5faac", + "nextNodeCode" : "dd515cdd-59f6-446f-94ca-25ca062afb42", + "skipType" : "PASS", + "coordinate" : "220,200;310,200" + } ] + }, { + "nodeType" : 1, + "nodeCode" : "dd515cdd-59f6-446f-94ca-25ca062afb42", + "nodeName" : "申请人", + "nodeRatio" : 0.000, + "coordinate" : "360,200|360,200", + "skipAnyNode" : "N", + "formCustom" : "N", + "skipList" : [ { + "nowNodeCode" : "dd515cdd-59f6-446f-94ca-25ca062afb42", + "nextNodeCode" : "78fa8e5b-e809-44ed-978a-41092409ebcf", + "skipType" : "PASS", + "coordinate" : "410,200;490,200" + } ] + }, { + "nodeType" : 1, + "nodeCode" : "78fa8e5b-e809-44ed-978a-41092409ebcf", + "nodeName" : "组长", + "permissionFlag" : "role:1", + "nodeRatio" : 0.000, + "coordinate" : "540,200|540,200", + "skipAnyNode" : "N", + "formCustom" : "N", + "skipList" : [ { + "nowNodeCode" : "78fa8e5b-e809-44ed-978a-41092409ebcf", + "nextNodeCode" : "a8abf15f-b83e-428a-86cc-033555ea9bbe", + "skipType" : "PASS", + "coordinate" : "590,200;670,200" + } ] + }, { + "nodeType" : 1, + "nodeCode" : "a8abf15f-b83e-428a-86cc-033555ea9bbe", + "nodeName" : "部门主管", + "permissionFlag" : "role:3,role:4", + "nodeRatio" : 0.000, + "coordinate" : "720,200|720,200", + "skipAnyNode" : "N", + "formCustom" : "N", + "skipList" : [ { + "nowNodeCode" : "a8abf15f-b83e-428a-86cc-033555ea9bbe", + "nextNodeCode" : "8b82b7d7-8660-455e-b880-d6d22ea3eb6d", + "skipType" : "PASS", + "coordinate" : "770,200;880,200" + } ] + }, { + "nodeType" : 2, + "nodeCode" : "8b82b7d7-8660-455e-b880-d6d22ea3eb6d", + "nodeName" : "结束", + "nodeRatio" : 0.000, + "coordinate" : "900,200|900,200", + "skipAnyNode" : "N", + "formCustom" : "N" + } ] +} \ No newline at end of file diff --git a/script/bpmn/leave1.xml b/script/bpmn/leave1.xml deleted file mode 100644 index 1013eb24e..000000000 --- a/script/bpmn/leave1.xml +++ /dev/null @@ -1,17 +0,0 @@ - - - - - dd515cdd-59f6-446f-94ca-25ca062afb42 - - - 78fa8e5b-e809-44ed-978a-41092409ebcf - - - a8abf15f-b83e-428a-86cc-033555ea9bbe - - - 8b82b7d7-8660-455e-b880-d6d22ea3eb6d - - - diff --git a/script/bpmn/leave2.json b/script/bpmn/leave2.json new file mode 100644 index 000000000..9fce8ffd2 --- /dev/null +++ b/script/bpmn/leave2.json @@ -0,0 +1,111 @@ +{ + "flowCode" : "leave2", + "flowName" : "请假申请-排他网关", + "category" : "1", + "version" : "1", + "formCustom" : "N", + "formPath" : "/workflow/leaveEdit/index", + "nodeList" : [ { + "nodeType" : 0, + "nodeCode" : "cef3895c-f7d8-4598-8bf3-8ec2ef6ce84a", + "nodeName" : "开始", + "nodeRatio" : 0.000, + "coordinate" : "300,240|300,240", + "skipAnyNode" : "N", + "formCustom" : "N", + "skipList" : [ { + "nowNodeCode" : "cef3895c-f7d8-4598-8bf3-8ec2ef6ce84a", + "nextNodeCode" : "fdcae93b-b69c-498a-b231-09255e74bcbd", + "skipType" : "PASS", + "coordinate" : "320,240;390,240" + } ] + }, { + "nodeType" : 1, + "nodeCode" : "fdcae93b-b69c-498a-b231-09255e74bcbd", + "nodeName" : "申请人", + "nodeRatio" : 0.000, + "coordinate" : "440,240|440,240", + "skipAnyNode" : "N", + "formCustom" : "N", + "skipList" : [ { + "nowNodeCode" : "fdcae93b-b69c-498a-b231-09255e74bcbd", + "nextNodeCode" : "7b8c7ead-7dc8-4951-a7f3-f0c41995909e", + "skipType" : "PASS", + "coordinate" : "490,240;535,240" + } ] + }, { + "nodeType" : 3, + "nodeCode" : "7b8c7ead-7dc8-4951-a7f3-f0c41995909e", + "nodeRatio" : 0.000, + "coordinate" : "560,240", + "skipAnyNode" : "N", + "formCustom" : "N", + "skipList" : [ { + "nowNodeCode" : "7b8c7ead-7dc8-4951-a7f3-f0c41995909e", + "nextNodeCode" : "b3528155-dcb7-4445-bbdf-3d00e3499e86", + "skipType" : "PASS", + "skipCondition" : "le@@leaveDays|2", + "coordinate" : "560,265;560,320;670,320" + }, { + "nowNodeCode" : "7b8c7ead-7dc8-4951-a7f3-f0c41995909e", + "nextNodeCode" : "5ed2362b-fc0c-4d52-831f-95208b830605", + "skipName" : "大于两天", + "skipType" : "PASS", + "skipCondition" : "gt@@leaveDays|2", + "coordinate" : "560,215;560,160;670,160|560,187" + } ] + }, { + "nodeType" : 1, + "nodeCode" : "b3528155-dcb7-4445-bbdf-3d00e3499e86", + "nodeName" : "组长", + "permissionFlag" : "3,4", + "nodeRatio" : 0.000, + "coordinate" : "720,320|720,320", + "skipAnyNode" : "N", + "formCustom" : "N", + "skipList" : [ { + "nowNodeCode" : "b3528155-dcb7-4445-bbdf-3d00e3499e86", + "nextNodeCode" : "c9fa6d7d-2a74-4e78-b947-0cad8a6af869", + "skipType" : "PASS", + "coordinate" : "770,320;860,320;860,280" + } ] + }, { + "nodeType" : 1, + "nodeCode" : "c9fa6d7d-2a74-4e78-b947-0cad8a6af869", + "nodeName" : "总经理", + "permissionFlag" : "role:1", + "nodeRatio" : 0.000, + "coordinate" : "860,240|860,240", + "skipAnyNode" : "N", + "formCustom" : "N", + "skipList" : [ { + "nowNodeCode" : "c9fa6d7d-2a74-4e78-b947-0cad8a6af869", + "nextNodeCode" : "40aa65fd-0712-4d23-b6f7-d0432b920fd1", + "skipType" : "PASS", + "coordinate" : "910,240;980,240" + } ] + }, { + "nodeType" : 2, + "nodeCode" : "40aa65fd-0712-4d23-b6f7-d0432b920fd1", + "nodeName" : "结束", + "nodeRatio" : 0.000, + "coordinate" : "1000,240|1000,240", + "skipAnyNode" : "N", + "formCustom" : "N" + }, { + "nodeType" : 1, + "nodeCode" : "5ed2362b-fc0c-4d52-831f-95208b830605", + "nodeName" : "部门领导", + "permissionFlag" : "role:1", + "nodeRatio" : 0.000, + "coordinate" : "720,160|720,160", + "skipAnyNode" : "N", + "formCustom" : "N", + "skipList" : [ { + "nowNodeCode" : "5ed2362b-fc0c-4d52-831f-95208b830605", + "nextNodeCode" : "c9fa6d7d-2a74-4e78-b947-0cad8a6af869", + "skipType" : "PASS", + "coordinate" : "770,160;860,160;860,200" + } ] + } ] +} diff --git a/script/bpmn/leave2.xml b/script/bpmn/leave2.xml deleted file mode 100644 index 35d270fda..000000000 --- a/script/bpmn/leave2.xml +++ /dev/null @@ -1,24 +0,0 @@ - - - - - fdcae93b-b69c-498a-b231-09255e74bcbd - - - 7b8c7ead-7dc8-4951-a7f3-f0c41995909e - - - b3528155-dcb7-4445-bbdf-3d00e3499e86 - 5ed2362b-fc0c-4d52-831f-95208b830605 - - - c9fa6d7d-2a74-4e78-b947-0cad8a6af869 - - - 40aa65fd-0712-4d23-b6f7-d0432b920fd1 - - - - c9fa6d7d-2a74-4e78-b947-0cad8a6af869 - - diff --git a/script/bpmn/leave3.json b/script/bpmn/leave3.json new file mode 100644 index 000000000..08daae4bf --- /dev/null +++ b/script/bpmn/leave3.json @@ -0,0 +1,121 @@ +{ + "flowCode" : "leave3", + "flowName" : "请假申请-并行网关", + "category" : "1", + "version" : "1", + "formCustom" : "N", + "formPath" : "/workflow/leaveEdit/index", + "nodeList" : [ { + "nodeType" : 0, + "nodeCode" : "a80ecf9f-f465-4ae5-a429-e30ec5d0f957", + "nodeName" : "开始", + "nodeRatio" : 0.000, + "coordinate" : "380,220|380,220", + "skipAnyNode" : "N", + "formCustom" : "N", + "skipList" : [ { + "nowNodeCode" : "a80ecf9f-f465-4ae5-a429-e30ec5d0f957", + "nextNodeCode" : "b7bbb571-06de-455c-8083-f83c07bf0b99", + "skipType" : "PASS", + "coordinate" : "400,220;470,220" + } ] + }, { + "nodeType" : 1, + "nodeCode" : "b7bbb571-06de-455c-8083-f83c07bf0b99", + "nodeName" : "申请人", + "nodeRatio" : 0.000, + "coordinate" : "520,220|520,220", + "skipAnyNode" : "N", + "formCustom" : "N", + "skipList" : [ { + "nowNodeCode" : "b7bbb571-06de-455c-8083-f83c07bf0b99", + "nextNodeCode" : "84d7ed24-bb44-4ba1-bf1f-e6f5092d3f0a", + "skipType" : "PASS", + "coordinate" : "570,220;655,220" + } ] + }, { + "nodeType" : 4, + "nodeCode" : "84d7ed24-bb44-4ba1-bf1f-e6f5092d3f0a", + "nodeRatio" : 0.000, + "coordinate" : "680,220", + "skipAnyNode" : "N", + "formCustom" : "N", + "skipList" : [ { + "nowNodeCode" : "84d7ed24-bb44-4ba1-bf1f-e6f5092d3f0a", + "nextNodeCode" : "4b7743cd-940c-431b-926f-e7b614fbf1fe", + "skipType" : "PASS", + "coordinate" : "680,195;680,140;750,140" + }, { + "nowNodeCode" : "84d7ed24-bb44-4ba1-bf1f-e6f5092d3f0a", + "nextNodeCode" : "762cb975-37d8-4276-b6db-79a4c3606394", + "skipType" : "PASS", + "coordinate" : "680,245;680,300;750,300" + } ] + }, { + "nodeType" : 1, + "nodeCode" : "4b7743cd-940c-431b-926f-e7b614fbf1fe", + "nodeName" : "市场部", + "permissionFlag" : "role:1", + "nodeRatio" : 0.000, + "coordinate" : "800,140|800,140", + "skipAnyNode" : "N", + "formCustom" : "N", + "skipList" : [ { + "nowNodeCode" : "4b7743cd-940c-431b-926f-e7b614fbf1fe", + "nextNodeCode" : "b66b6563-f9fe-41cc-a782-f7837bb6f3d2", + "skipType" : "PASS", + "coordinate" : "850,140;920,140;920,195" + } ] + }, { + "nodeType" : 4, + "nodeCode" : "b66b6563-f9fe-41cc-a782-f7837bb6f3d2", + "nodeRatio" : 0.000, + "coordinate" : "920,220", + "skipAnyNode" : "N", + "formCustom" : "N", + "skipList" : [ { + "nowNodeCode" : "b66b6563-f9fe-41cc-a782-f7837bb6f3d2", + "nextNodeCode" : "23e7429e-2b47-4431-b93e-40db7c431ce6", + "skipType" : "PASS", + "coordinate" : "945,220;975,220;975,220;960,220;960,220;990,220" + } ] + }, { + "nodeType" : 1, + "nodeCode" : "23e7429e-2b47-4431-b93e-40db7c431ce6", + "nodeName" : "CEO", + "permissionFlag" : "1", + "nodeRatio" : 0.000, + "coordinate" : "1040,220|1040,220", + "skipAnyNode" : "N", + "formCustom" : "N", + "skipList" : [ { + "nowNodeCode" : "23e7429e-2b47-4431-b93e-40db7c431ce6", + "nextNodeCode" : "f5ace37f-5a5e-4e64-a6f6-913ab9a71cd1", + "skipType" : "PASS", + "coordinate" : "1090,220;1140,220" + } ] + }, { + "nodeType" : 2, + "nodeCode" : "f5ace37f-5a5e-4e64-a6f6-913ab9a71cd1", + "nodeName" : "结束", + "nodeRatio" : 0.000, + "coordinate" : "1160,220|1160,220", + "skipAnyNode" : "N", + "formCustom" : "N" + }, { + "nodeType" : 1, + "nodeCode" : "762cb975-37d8-4276-b6db-79a4c3606394", + "nodeName" : "综合部", + "permissionFlag" : "role:3,role:4", + "nodeRatio" : 0.000, + "coordinate" : "800,300|800,300", + "skipAnyNode" : "N", + "formCustom" : "N", + "skipList" : [ { + "nowNodeCode" : "762cb975-37d8-4276-b6db-79a4c3606394", + "nextNodeCode" : "b66b6563-f9fe-41cc-a782-f7837bb6f3d2", + "skipType" : "PASS", + "coordinate" : "850,300;920,300;920,245" + } ] + } ] +} \ No newline at end of file diff --git a/script/bpmn/leave3.xml b/script/bpmn/leave3.xml deleted file mode 100644 index ffb8d9505..000000000 --- a/script/bpmn/leave3.xml +++ /dev/null @@ -1,27 +0,0 @@ - - - - - b7bbb571-06de-455c-8083-f83c07bf0b99 - - - 84d7ed24-bb44-4ba1-bf1f-e6f5092d3f0a - - - 4b7743cd-940c-431b-926f-e7b614fbf1fe - 762cb975-37d8-4276-b6db-79a4c3606394 - - - b66b6563-f9fe-41cc-a782-f7837bb6f3d2 - - - 23e7429e-2b47-4431-b93e-40db7c431ce6 - - - f5ace37f-5a5e-4e64-a6f6-913ab9a71cd1 - - - - b66b6563-f9fe-41cc-a782-f7837bb6f3d2 - - diff --git a/script/bpmn/leave4.json b/script/bpmn/leave4.json new file mode 100644 index 000000000..f8f440812 --- /dev/null +++ b/script/bpmn/leave4.json @@ -0,0 +1,90 @@ +{ + "flowCode" : "leave4", + "flowName" : "请假申请-会签", + "category" : "1", + "version" : "1", + "formCustom" : "N", + "formPath" : "/workflow/leaveEdit/index", + "nodeList" : [ { + "nodeType" : 0, + "nodeCode" : "9ce8bf00-f25b-4fc6-91b8-827082fc4876", + "nodeName" : "开始", + "nodeRatio" : 0.000, + "coordinate" : "320,240|320,240", + "skipAnyNode" : "N", + "formCustom" : "N", + "skipList" : [ { + "nowNodeCode" : "9ce8bf00-f25b-4fc6-91b8-827082fc4876", + "nextNodeCode" : "e90b98ef-35b4-410c-a663-bae8b7624b9f", + "skipType" : "PASS", + "coordinate" : "340,240;410,240" + } ] + }, { + "nodeType" : 1, + "nodeCode" : "e90b98ef-35b4-410c-a663-bae8b7624b9f", + "nodeName" : "申请人", + "nodeRatio" : 0.000, + "coordinate" : "460,240|460,240", + "skipAnyNode" : "N", + "formCustom" : "N", + "skipList" : [ { + "nowNodeCode" : "e90b98ef-35b4-410c-a663-bae8b7624b9f", + "nextNodeCode" : "768b5b1a-6726-4d67-8853-4cc70d5b1045", + "skipType" : "PASS", + "coordinate" : "510,240;590,240" + } ] + }, { + "nodeType" : 1, + "nodeCode" : "768b5b1a-6726-4d67-8853-4cc70d5b1045", + "nodeName" : "百分之60通过", + "permissionFlag" : "${userList}", + "nodeRatio" : 60.000, + "coordinate" : "640,240|640,240", + "skipAnyNode" : "N", + "formCustom" : "N", + "skipList" : [ { + "nowNodeCode" : "768b5b1a-6726-4d67-8853-4cc70d5b1045", + "nextNodeCode" : "2f9f2e21-9bcf-42a3-a07c-13037aad22d1", + "skipType" : "PASS", + "coordinate" : "690,240;770,240" + } ] + }, { + "nodeType" : 1, + "nodeCode" : "2f9f2e21-9bcf-42a3-a07c-13037aad22d1", + "nodeName" : "全部审批通过", + "permissionFlag" : "role:1,role:3", + "nodeRatio" : 100.000, + "coordinate" : "820,240|820,240", + "skipAnyNode" : "N", + "formCustom" : "N", + "skipList" : [ { + "nowNodeCode" : "2f9f2e21-9bcf-42a3-a07c-13037aad22d1", + "nextNodeCode" : "27461e01-3d9f-4530-8fe3-bd5ec7f9571f", + "skipType" : "PASS", + "coordinate" : "870,240;950,240" + } ] + }, { + "nodeType" : 1, + "nodeCode" : "27461e01-3d9f-4530-8fe3-bd5ec7f9571f", + "nodeName" : "CEO", + "permissionFlag" : "1", + "nodeRatio" : 0.000, + "coordinate" : "1000,240|1000,240", + "skipAnyNode" : "N", + "formCustom" : "N", + "skipList" : [ { + "nowNodeCode" : "27461e01-3d9f-4530-8fe3-bd5ec7f9571f", + "nextNodeCode" : "b62b88c3-8d8d-4969-911e-2aaea219e7fc", + "skipType" : "PASS", + "coordinate" : "1050,240;1080,240;1080,240;1070,240;1070,240;1100,240" + } ] + }, { + "nodeType" : 2, + "nodeCode" : "b62b88c3-8d8d-4969-911e-2aaea219e7fc", + "nodeName" : "结束", + "nodeRatio" : 0.000, + "coordinate" : "1120,240|1120,240", + "skipAnyNode" : "N", + "formCustom" : "N" + } ] +} \ No newline at end of file diff --git a/script/bpmn/leave4.xml b/script/bpmn/leave4.xml deleted file mode 100644 index 578be560f..000000000 --- a/script/bpmn/leave4.xml +++ /dev/null @@ -1,20 +0,0 @@ - - - - - e90b98ef-35b4-410c-a663-bae8b7624b9f - - - 768b5b1a-6726-4d67-8853-4cc70d5b1045 - - - 2f9f2e21-9bcf-42a3-a07c-13037aad22d1 - - - 27461e01-3d9f-4530-8fe3-bd5ec7f9571f - - - b62b88c3-8d8d-4969-911e-2aaea219e7fc - - - diff --git a/script/bpmn/leave5.json b/script/bpmn/leave5.json new file mode 100644 index 000000000..dc99494a5 --- /dev/null +++ b/script/bpmn/leave5.json @@ -0,0 +1,121 @@ +{ + "flowCode" : "leave5", + "flowName" : "请假申请-并行会签网关", + "category" : "1", + "version" : "1", + "formCustom" : "N", + "formPath" : "/workflow/leaveEdit/index", + "nodeList" : [ { + "nodeType" : 0, + "nodeCode" : "ebebaf26-9cb6-497e-8119-4c9fed4c597c", + "nodeName" : "开始", + "nodeRatio" : 0.000, + "coordinate" : "300,220|300,220", + "skipAnyNode" : "N", + "formCustom" : "N", + "skipList" : [ { + "nowNodeCode" : "ebebaf26-9cb6-497e-8119-4c9fed4c597c", + "nextNodeCode" : "e1b04e96-dc81-4858-a309-2fe945d2f374", + "skipType" : "PASS", + "coordinate" : "320,220;350,220;350,220;340,220;340,220;370,220" + } ] + }, { + "nodeType" : 1, + "nodeCode" : "e1b04e96-dc81-4858-a309-2fe945d2f374", + "nodeName" : "申请人", + "nodeRatio" : 0.000, + "coordinate" : "420,220|420,220", + "skipAnyNode" : "N", + "formCustom" : "N", + "skipList" : [ { + "nowNodeCode" : "e1b04e96-dc81-4858-a309-2fe945d2f374", + "nextNodeCode" : "3e743f4f-51ca-41d4-8e94-21f5dd9b59c9", + "skipType" : "PASS", + "coordinate" : "470,220;535,220" + } ] + }, { + "nodeType" : 4, + "nodeCode" : "3e743f4f-51ca-41d4-8e94-21f5dd9b59c9", + "nodeRatio" : 0.000, + "coordinate" : "560,220", + "skipAnyNode" : "N", + "formCustom" : "N", + "skipList" : [ { + "nowNodeCode" : "3e743f4f-51ca-41d4-8e94-21f5dd9b59c9", + "nextNodeCode" : "c80f273e-1f17-4bd8-9ad1-04a4a94ea862", + "skipType" : "PASS", + "coordinate" : "560,245;560,320;650,320" + }, { + "nowNodeCode" : "3e743f4f-51ca-41d4-8e94-21f5dd9b59c9", + "nextNodeCode" : "1e3e8d3b-18ae-4d6c-a814-ce0d724adfa4", + "skipType" : "PASS", + "coordinate" : "560,195;560,120;650,120" + } ] + }, { + "nodeType" : 1, + "nodeCode" : "c80f273e-1f17-4bd8-9ad1-04a4a94ea862", + "nodeName" : "会签", + "permissionFlag" : "role:1,role:3", + "nodeRatio" : 100.000, + "coordinate" : "700,320|700,320", + "skipAnyNode" : "N", + "formCustom" : "N", + "skipList" : [ { + "nowNodeCode" : "c80f273e-1f17-4bd8-9ad1-04a4a94ea862", + "nextNodeCode" : "1a20169e-3d82-4926-a151-e2daad28de1b", + "skipType" : "PASS", + "coordinate" : "750,320;860,320;860,245" + } ] + }, { + "nodeType" : 4, + "nodeCode" : "1a20169e-3d82-4926-a151-e2daad28de1b", + "nodeRatio" : 0.000, + "coordinate" : "860,220", + "skipAnyNode" : "N", + "formCustom" : "N", + "skipList" : [ { + "nowNodeCode" : "1a20169e-3d82-4926-a151-e2daad28de1b", + "nextNodeCode" : "7a8f0473-e409-442e-a843-5c2b813d00e9", + "skipType" : "PASS", + "coordinate" : "885,220;950,220" + } ] + }, { + "nodeType" : 1, + "nodeCode" : "7a8f0473-e409-442e-a843-5c2b813d00e9", + "nodeName" : "CEO", + "permissionFlag" : "1", + "nodeRatio" : 0.000, + "coordinate" : "1000,220|1000,220", + "skipAnyNode" : "N", + "formCustom" : "N", + "skipList" : [ { + "nowNodeCode" : "7a8f0473-e409-442e-a843-5c2b813d00e9", + "nextNodeCode" : "03c4d2bc-58b5-4408-a2e4-65afb046f169", + "skipType" : "PASS", + "coordinate" : "1050,220;1120,220" + } ] + }, { + "nodeType" : 2, + "nodeCode" : "03c4d2bc-58b5-4408-a2e4-65afb046f169", + "nodeName" : "结束", + "nodeRatio" : 0.000, + "coordinate" : "1140,220|1140,220", + "skipAnyNode" : "N", + "formCustom" : "N" + }, { + "nodeType" : 1, + "nodeCode" : "1e3e8d3b-18ae-4d6c-a814-ce0d724adfa4", + "nodeName" : "百分之60票签", + "permissionFlag" : "${userList}", + "nodeRatio" : 60.000, + "coordinate" : "700,120|700,120", + "skipAnyNode" : "N", + "formCustom" : "N", + "skipList" : [ { + "nowNodeCode" : "1e3e8d3b-18ae-4d6c-a814-ce0d724adfa4", + "nextNodeCode" : "1a20169e-3d82-4926-a151-e2daad28de1b", + "skipType" : "PASS", + "coordinate" : "750,120;860,120;860,195" + } ] + } ] +} \ No newline at end of file diff --git a/script/bpmn/leave5.xml b/script/bpmn/leave5.xml deleted file mode 100644 index a5fc2d2c2..000000000 --- a/script/bpmn/leave5.xml +++ /dev/null @@ -1,27 +0,0 @@ - - - - - e1b04e96-dc81-4858-a309-2fe945d2f374 - - - 3e743f4f-51ca-41d4-8e94-21f5dd9b59c9 - - - c80f273e-1f17-4bd8-9ad1-04a4a94ea862 - 1e3e8d3b-18ae-4d6c-a814-ce0d724adfa4 - - - 1a20169e-3d82-4926-a151-e2daad28de1b - - - 7a8f0473-e409-442e-a843-5c2b813d00e9 - - - 03c4d2bc-58b5-4408-a2e4-65afb046f169 - - - - 1a20169e-3d82-4926-a151-e2daad28de1b - - -- Gitee From ece1dee990ecf7bc7b7b7350b8cd8b604b00a27f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Wed, 15 Jan 2025 17:41:57 +0800 Subject: [PATCH 373/540] =?UTF-8?q?update=20=E5=B0=86=E9=83=A8=E7=BD=B2?= =?UTF-8?q?=E6=96=87=E4=BB=B6=E8=BF=81=E7=A7=BB=E5=88=B0=E6=9B=B4=E9=80=82?= =?UTF-8?q?=E5=90=88=E7=9A=84=E6=96=87=E4=BB=B6=E5=A4=B9=E4=B8=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- script/{bpmn => leave}/leave1.json | 0 script/{bpmn => leave}/leave2.json | 0 script/{bpmn => leave}/leave3.json | 0 script/{bpmn => leave}/leave4.json | 0 script/{bpmn => leave}/leave5.json | 0 5 files changed, 0 insertions(+), 0 deletions(-) rename script/{bpmn => leave}/leave1.json (100%) rename script/{bpmn => leave}/leave2.json (100%) rename script/{bpmn => leave}/leave3.json (100%) rename script/{bpmn => leave}/leave4.json (100%) rename script/{bpmn => leave}/leave5.json (100%) diff --git a/script/bpmn/leave1.json b/script/leave/leave1.json similarity index 100% rename from script/bpmn/leave1.json rename to script/leave/leave1.json diff --git a/script/bpmn/leave2.json b/script/leave/leave2.json similarity index 100% rename from script/bpmn/leave2.json rename to script/leave/leave2.json diff --git a/script/bpmn/leave3.json b/script/leave/leave3.json similarity index 100% rename from script/bpmn/leave3.json rename to script/leave/leave3.json diff --git a/script/bpmn/leave4.json b/script/leave/leave4.json similarity index 100% rename from script/bpmn/leave4.json rename to script/leave/leave4.json diff --git a/script/bpmn/leave5.json b/script/leave/leave5.json similarity index 100% rename from script/bpmn/leave5.json rename to script/leave/leave5.json -- Gitee From 089a79002f697198e9f4cbeb0ca85711d329eb52 Mon Sep 17 00:00:00 2001 From: AprilWind <2100166581@qq.com> Date: Wed, 15 Jan 2025 19:06:42 +0800 Subject: [PATCH 374/540] =?UTF-8?q?update=20=E5=8D=87=E7=BA=A7warm-flow?= =?UTF-8?q?=E7=9A=84sql=E8=AF=AD=E5=8F=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- script/sql/oracle/oracle_ry_workflow.sql | 226 +++++++++--------- script/sql/postgres/postgres_ry_workflow.sql | 184 +++++++------- script/sql/ry_workflow.sql | 186 +++++++------- .../sql/sqlserver/sqlserver_ry_workflow.sql | 2 +- 4 files changed, 303 insertions(+), 295 deletions(-) diff --git a/script/sql/oracle/oracle_ry_workflow.sql b/script/sql/oracle/oracle_ry_workflow.sql index 6a7c5c579..a0f71d0fa 100644 --- a/script/sql/oracle/oracle_ry_workflow.sql +++ b/script/sql/oracle/oracle_ry_workflow.sql @@ -1,22 +1,21 @@ - create table FLOW_DEFINITION ( - ID NUMBER (20) not null, - FLOW_CODE VARCHAR2 (40) not null, - FLOW_NAME VARCHAR2 (100) not null, - CATEGORY VARCHAR2 (100), - VERSION VARCHAR2 (20) not null, - IS_PUBLISH NUMBER (1) default 0 not null, - FORM_CUSTOM VARCHAR2 (1) default 'N', - FORM_PATH VARCHAR2 (100), - ACTIVITY_STATUS NUMBER (1) default 1, - LISTENER_TYPE VARCHAR2 (100), - LISTENER_PATH VARCHAR2 (500), - EXT VARCHAR2 (500), - CREATE_TIME DATE, - UPDATE_TIME DATE, - DEL_FLAG VARCHAR2 (1) default '0', - TENANT_ID VARCHAR2 (40) + ID NUMBER(20) not null, + FLOW_CODE VARCHAR2(40) not null, + FLOW_NAME VARCHAR2(100) not null, + CATEGORY VARCHAR2(100), + VERSION VARCHAR2(20) not null, + IS_PUBLISH NUMBER(1) default 0 not null, + FORM_CUSTOM VARCHAR2(1) default 'N', + FORM_PATH VARCHAR2(100), + ACTIVITY_STATUS NUMBER(1) default 1, + LISTENER_TYPE VARCHAR2(100), + LISTENER_PATH VARCHAR2(500), + EXT VARCHAR2(500), + CREATE_TIME DATE, + UPDATE_TIME DATE, + DEL_FLAG VARCHAR2(1) default '0', + TENANT_ID VARCHAR2(40) ); alter table FLOW_DEFINITION add constraint PK_FLOW_DEFINITION primary key (ID); @@ -41,27 +40,27 @@ comment on column FLOW_DEFINITION.TENANT_ID is '租户id'; create table FLOW_NODE ( - ID NUMBER (20) not null, - NODE_TYPE NUMBER (1) not null, - DEFINITION_ID NUMBER (20) not null, - NODE_CODE VARCHAR2 (100) not null, - NODE_NAME VARCHAR2 (100), - NODE_RATIO NUMBER (6,3), - COORDINATE VARCHAR2 (100), - SKIP_ANY_NODE VARCHAR2 (100) default 'N', - ANY_NODE_SKIP VARCHAR2 (100), - LISTENER_TYPE VARCHAR2 (100), - LISTENER_PATH VARCHAR2 (500), - HANDLER_TYPE VARCHAR2 (100), - HANDLER_PATH VARCHAR2 (400), - FORM_CUSTOM VARCHAR2 (1) default 'N', - FORM_PATH VARCHAR2 (100), - VERSION VARCHAR2 (20), - CREATE_TIME DATE, - UPDATE_TIME DATE, - DEL_FLAG VARCHAR2 (1) default '0', - TENANT_ID VARCHAR2 (40), - PERMISSION_FLAG VARCHAR2 (200) + ID NUMBER(20) not null, + NODE_TYPE NUMBER(1) not null, + DEFINITION_ID NUMBER(20) not null, + NODE_CODE VARCHAR2(100) not null, + NODE_NAME VARCHAR2(100), + NODE_RATIO NUMBER(6, 3), + COORDINATE VARCHAR2(100), + SKIP_ANY_NODE VARCHAR2(100) default 'N', + ANY_NODE_SKIP VARCHAR2(100), + LISTENER_TYPE VARCHAR2(100), + LISTENER_PATH VARCHAR2(500), + HANDLER_TYPE VARCHAR2(100), + HANDLER_PATH VARCHAR2(400), + FORM_CUSTOM VARCHAR2(1) default 'N', + FORM_PATH VARCHAR2(100), + VERSION VARCHAR2(20), + CREATE_TIME DATE, + UPDATE_TIME DATE, + DEL_FLAG VARCHAR2(1) default '0', + TENANT_ID VARCHAR2(40), + PERMISSION_FLAG VARCHAR2(200) ); alter table FLOW_NODE add constraint PK_FLOW_NODE primary key (ID); @@ -91,20 +90,20 @@ comment on column FLOW_NODE.PERMISSION_FLAG is '权限标识(权限类型:权 create table FLOW_SKIP ( - ID NUMBER (20) not null, - DEFINITION_ID NUMBER (20) not null, - NOW_NODE_CODE VARCHAR2 (100) not null, - NOW_NODE_TYPE NUMBER (1), - NEXT_NODE_CODE VARCHAR2 (100) not null, - NEXT_NODE_TYPE NUMBER (1), - SKIP_NAME VARCHAR2 (100), - SKIP_TYPE VARCHAR2 (40), - SKIP_CONDITION VARCHAR2 (200), - COORDINATE VARCHAR2 (100), - CREATE_TIME DATE, - UPDATE_TIME DATE, - DEL_FLAG VARCHAR2 (1) default '0', - TENANT_ID VARCHAR2 (40) + ID NUMBER(20) not null, + DEFINITION_ID NUMBER(20) not null, + NOW_NODE_CODE VARCHAR2(100) not null, + NOW_NODE_TYPE NUMBER(1), + NEXT_NODE_CODE VARCHAR2(100) not null, + NEXT_NODE_TYPE NUMBER(1), + SKIP_NAME VARCHAR2(100), + SKIP_TYPE VARCHAR2(40), + SKIP_CONDITION VARCHAR2(200), + COORDINATE VARCHAR2(100), + CREATE_TIME DATE, + UPDATE_TIME DATE, + DEL_FLAG VARCHAR2(1) default '0', + TENANT_ID VARCHAR2(40) ); alter table FLOW_SKIP add constraint PK_FLOW_SKIP primary key (ID); @@ -127,21 +126,22 @@ comment on column FLOW_SKIP.TENANT_ID is '租户id'; create table FLOW_INSTANCE ( - ID NUMBER not null, - DEFINITION_ID NUMBER not null, - BUSINESS_ID VARCHAR2 (40) not null, - NODE_TYPE NUMBER (1), - NODE_CODE VARCHAR2 (100), - NODE_NAME VARCHAR2 (100), - VARIABLE CLOB, - FLOW_STATUS VARCHAR2 (20), - ACTIVITY_STATUS NUMBER (1) default 1, - CREATE_BY VARCHAR2 (64) default '', - CREATE_TIME DATE, - UPDATE_TIME DATE, - EXT VARCHAR2 (500), - DEL_FLAG VARCHAR2 (1) default '0', - TENANT_ID VARCHAR2 (40) + ID NUMBER not null, + DEFINITION_ID NUMBER not null, + BUSINESS_ID VARCHAR2(40) not null, + NODE_TYPE NUMBER(1), + NODE_CODE VARCHAR2(100), + NODE_NAME VARCHAR2(100), + VARIABLE CLOB, + FLOW_STATUS VARCHAR2(20), + ACTIVITY_STATUS NUMBER(1) default 1, + DEF_JSON CLOB, + CREATE_BY VARCHAR2(64) default '', + CREATE_TIME DATE, + UPDATE_TIME DATE, + EXT VARCHAR2(500), + DEL_FLAG VARCHAR2(1) default '0', + TENANT_ID VARCHAR2(40) ); alter table FLOW_INSTANCE add constraint PK_FLOW_INSTANCE primary key (ID); @@ -156,6 +156,7 @@ comment on column FLOW_INSTANCE.NODE_NAME is '开始节点名称'; comment on column FLOW_INSTANCE.VARIABLE is '任务变量'; comment on column FLOW_INSTANCE.FLOW_STATUS is '流程状态(0待提交 1审批中 2 审批通过 3自动通过 4终止 5作废 6撤销 7取回 8已完成 9已退回 10失效)'; comment on column FLOW_INSTANCE.ACTIVITY_STATUS is '流程激活状态(0挂起 1激活)'; +comment on column FLOW_INSTANCE.DEF_JSON is '流程定义json'; comment on column FLOW_INSTANCE.CREATE_BY is '创建者'; comment on column FLOW_INSTANCE.CREATE_TIME is '创建时间'; comment on column FLOW_INSTANCE.UPDATE_TIME is '更新时间'; @@ -165,18 +166,18 @@ comment on column FLOW_INSTANCE.TENANT_ID is '租户id'; create table FLOW_TASK ( - ID NUMBER (20) not null, - DEFINITION_ID NUMBER (20) not null, - INSTANCE_ID NUMBER (20) not null, - NODE_CODE VARCHAR2 (100), - NODE_NAME VARCHAR2 (100), - NODE_TYPE NUMBER (1), - FORM_CUSTOM VARCHAR2 (1) default 'N', - FORM_PATH VARCHAR2 (100), - CREATE_TIME DATE, - UPDATE_TIME DATE, - DEL_FLAG VARCHAR2 (1) default '0', - TENANT_ID VARCHAR2 (40) + ID NUMBER(20) not null, + DEFINITION_ID NUMBER(20) not null, + INSTANCE_ID NUMBER(20) not null, + NODE_CODE VARCHAR2(100), + NODE_NAME VARCHAR2(100), + NODE_TYPE NUMBER(1), + FORM_CUSTOM VARCHAR2(1) default 'N', + FORM_PATH VARCHAR2(100), + CREATE_TIME DATE, + UPDATE_TIME DATE, + DEL_FLAG VARCHAR2(1) default '0', + TENANT_ID VARCHAR2(40) ); alter table FLOW_TASK add constraint PK_FLOW_TASK primary key (ID); @@ -197,28 +198,30 @@ comment on column FLOW_TASK.TENANT_ID is '租户id'; create table FLOW_HIS_TASK ( - ID NUMBER (20) not null, - DEFINITION_ID NUMBER (20) not null, - INSTANCE_ID NUMBER (20) not null, - TASK_ID NUMBER (20) not null, - NODE_CODE VARCHAR2 (100), - NODE_NAME VARCHAR2 (100), - NODE_TYPE NUMBER (1), - TARGET_NODE_CODE VARCHAR2 (100), - TARGET_NODE_NAME VARCHAR2 (100), - APPROVER VARCHAR2 (40), - COOPERATE_TYPE NUMBER (1) default 0, - COLLABORATOR VARCHAR2 (40), - SKIP_TYPE VARCHAR2 (10), - FLOW_STATUS VARCHAR2 (20), - FORM_CUSTOM VARCHAR2 (1) default 'N', - FORM_PATH VARCHAR2 (100), - MESSAGE VARCHAR2 (500), - EXT VARCHAR2 (500), - CREATE_TIME DATE, - UPDATE_TIME DATE, - DEL_FLAG VARCHAR2 (1) default '0', - TENANT_ID VARCHAR2 (40) + ID NUMBER(20) not null, + DEFINITION_ID NUMBER(20) not null, + INSTANCE_ID NUMBER(20) not null, + TASK_ID NUMBER(20) not null, + NODE_CODE VARCHAR2(100), + NODE_NAME VARCHAR2(100), + NODE_TYPE NUMBER(1), + TARGET_NODE_CODE VARCHAR2(200), + TARGET_NODE_NAME VARCHAR2(200), + APPROVER VARCHAR2(40), + COOPERATE_TYPE NUMBER(1) default 0, + COLLABORATOR VARCHAR2(40), + SKIP_TYPE VARCHAR2(10), + FLOW_STATUS VARCHAR2(20), + FORM_CUSTOM VARCHAR2(1) default 'N', + FORM_PATH VARCHAR2(100), + MESSAGE VARCHAR2(500), + VARIABLE CLOB, + EXT VARCHAR2(500), + CREATE_TIME DATE, + UPDATE_TIME DATE, + DEL_FLAG VARCHAR2(1) default '0', + TENANT_ID VARCHAR2(40) + ); alter table FLOW_HIS_TASK add constraint PK_FLOW_HIS_TASK primary key (ID); @@ -238,6 +241,7 @@ comment on column FLOW_HIS_TASK.FLOW_STATUS is '流程状态(1审批中 2 审 comment on column FLOW_HIS_TASK.FORM_CUSTOM is '审批表单是否自定义 (Y是 N否)'; comment on column FLOW_HIS_TASK.FORM_PATH is '审批表单路径'; comment on column FLOW_HIS_TASK.MESSAGE is '审批意见'; +comment on column FLOW_HIS_TASK.VARIABLE is '任务变量'; comment on column FLOW_HIS_TASK.EXT is '扩展字段,预留给业务系统使用'; comment on column FLOW_HIS_TASK.CREATE_TIME is '任务开始时间'; comment on column FLOW_HIS_TASK.UPDATE_TIME is '审批完成时间'; @@ -249,15 +253,15 @@ comment on column FLOW_HIS_TASK.COLLABORATOR is '协作人'; create table FLOW_USER ( - ID NUMBER (20) not null, - TYPE VARCHAR2 (1) not null, - PROCESSED_BY VARCHAR2 (80), - ASSOCIATED NUMBER (20) not null, - CREATE_TIME DATE, - CREATE_BY VARCHAR2 (80), - UPDATE_TIME DATE, - DEL_FLAG VARCHAR2 (1) default '0', - TENANT_ID VARCHAR2 (40) + ID NUMBER(20) not null, + TYPE VARCHAR2(1) not null, + PROCESSED_BY VARCHAR2(80), + ASSOCIATED NUMBER(20) not null, + CREATE_TIME DATE, + CREATE_BY VARCHAR2(80), + UPDATE_TIME DATE, + DEL_FLAG VARCHAR2(1) default '0', + TENANT_ID VARCHAR2(40) ); alter table FLOW_USER add constraint PK_FLOW_USER primary key (ID); @@ -312,7 +316,7 @@ COMMENT ON COLUMN flow_category.update_time IS '更新时间'; INSERT INTO flow_category VALUES (100, '000000', 0, '0', 'OA审批', 0, '0', 103, 1, SYSDATE, NULL, NULL); INSERT INTO flow_category VALUES (101, '000000', 100, '0,100', '假勤管理', 0, '0', 103, 1, SYSDATE, NULL, NULL); -INSERT INTO flow_category VALUES (102, '000000', 100, '0,100', '人事管理', 0, '0', 103, 1, SYSDATE, NULL, NULL); +INSERT INTO flow_category VALUES (102, '000000', 100, '0,100', '人事管理', 1, '0', 103, 1, SYSDATE, NULL, NULL); INSERT INTO flow_category VALUES (103, '000000', 101, '0,100,101', '请假', 0, '0', 103, 1, SYSDATE, NULL, NULL); INSERT INTO flow_category VALUES (104, '000000', 101, '0,100,101', '出差', 1, '0', 103, 1, SYSDATE, NULL, NULL); INSERT INTO flow_category VALUES (105, '000000', 101, '0,100,101', '加班', 2, '0', 103, 1, SYSDATE, NULL, NULL); diff --git a/script/sql/postgres/postgres_ry_workflow.sql b/script/sql/postgres/postgres_ry_workflow.sql index aacd1453e..337b066a8 100644 --- a/script/sql/postgres/postgres_ry_workflow.sql +++ b/script/sql/postgres/postgres_ry_workflow.sql @@ -3,22 +3,22 @@ -- ---------------------------- CREATE TABLE flow_definition ( - id int8 NOT NULL, -- 主键id - flow_code varchar(40) NOT NULL, -- 流程编码 - flow_name varchar(100) NOT NULL, -- 流程名称 - category varchar(100) NULL, -- 流程类别 - "version" varchar(20) NOT NULL, -- 流程版本 - is_publish int2 NOT NULL DEFAULT 0, -- 是否发布(0未发布 1已发布 9失效) - form_custom bpchar(1) NULL DEFAULT 'N':: character varying, -- 审批表单是否自定义(Y是 N否) - form_path varchar(100) NULL, -- 审批表单路径 - activity_status int2 NOT NULL DEFAULT 1, -- 流程激活状态(0挂起 1激活) - listener_type varchar(100) NULL, -- 监听器类型 - listener_path varchar(400) NULL, -- 监听器路径 - ext varchar(500) NULL, -- 扩展字段,预留给业务系统使用 - create_time timestamp NULL, -- 创建时间 - update_time timestamp NULL, -- 更新时间 - del_flag bpchar(1) NULL DEFAULT '0':: character varying, -- 删除标志 - tenant_id varchar(40) NULL, -- 租户id + id int8 NOT NULL, -- 主键id + flow_code varchar(40) NOT NULL, -- 流程编码 + flow_name varchar(100) NOT NULL, -- 流程名称 + category varchar(100) NULL, -- 流程类别 + "version" varchar(20) NOT NULL, -- 流程版本 + is_publish int2 NOT NULL DEFAULT 0, -- 是否发布(0未发布 1已发布 9失效) + form_custom bpchar(1) NULL DEFAULT 'N':: character varying, -- 审批表单是否自定义(Y是 N否) + form_path varchar(100) NULL, -- 审批表单路径 + activity_status int2 NOT NULL DEFAULT 1, -- 流程激活状态(0挂起 1激活) + listener_type varchar(100) NULL, -- 监听器类型 + listener_path varchar(400) NULL, -- 监听器路径 + ext varchar(500) NULL, -- 扩展字段,预留给业务系统使用 + create_time timestamp NULL, -- 创建时间 + update_time timestamp NULL, -- 更新时间 + del_flag bpchar(1) NULL DEFAULT '0':: character varying, -- 删除标志 + tenant_id varchar(40) NULL, -- 租户id CONSTRAINT flow_definition_pkey PRIMARY KEY (id) ); COMMENT ON TABLE flow_definition IS '流程定义表'; @@ -56,12 +56,12 @@ CREATE TABLE flow_node listener_path varchar(400) NULL, -- 监听器路径 handler_type varchar(100) NULL, -- 处理器类型 handler_path varchar(400) NULL, -- 处理器路径 - form_custom bpchar(1) NULL DEFAULT 'N':: character varying, -- 审批表单是否自定义(Y是 N否) + form_custom bpchar(1) NULL DEFAULT 'N':: character varying, -- 审批表单是否自定义(Y是 N否) form_path varchar(100) NULL, -- 审批表单路径 "version" varchar(20) NOT NULL, -- 版本 create_time timestamp NULL, -- 创建时间 update_time timestamp NULL, -- 更新时间 - del_flag bpchar(1) NULL DEFAULT '0':: character varying, -- 删除标志 + del_flag bpchar(1) NULL DEFAULT '0':: character varying, -- 删除标志 tenant_id varchar(40) NULL, -- 租户id CONSTRAINT flow_node_pkey PRIMARY KEY (id) ); @@ -92,20 +92,20 @@ COMMENT ON COLUMN flow_node.tenant_id IS '租户id'; CREATE TABLE flow_skip ( - id int8 NOT NULL, -- 主键id - definition_id int8 NOT NULL, -- 流程定义id - now_node_code varchar(100) NOT NULL, -- 当前流程节点的编码 - now_node_type int2 NULL, -- 当前节点类型(0开始节点 1中间节点 2结束节点 3互斥网关 4并行网关) - next_node_code varchar(100) NOT NULL, -- 下一个流程节点的编码 - next_node_type int2 NULL, -- 下一个节点类型(0开始节点 1中间节点 2结束节点 3互斥网关 4并行网关) - skip_name varchar(100) NULL, -- 跳转名称 - skip_type varchar(40) NULL, -- 跳转类型(PASS审批通过 REJECT退回) - skip_condition varchar(200) NULL, -- 跳转条件 - coordinate varchar(100) NULL, -- 坐标 - create_time timestamp NULL, -- 创建时间 - update_time timestamp NULL, -- 更新时间 - del_flag bpchar(1) NULL DEFAULT '0':: character varying, -- 删除标志 - tenant_id varchar(40) NULL, -- 租户id + id int8 NOT NULL, -- 主键id + definition_id int8 NOT NULL, -- 流程定义id + now_node_code varchar(100) NOT NULL, -- 当前流程节点的编码 + now_node_type int2 NULL, -- 当前节点类型(0开始节点 1中间节点 2结束节点 3互斥网关 4并行网关) + next_node_code varchar(100) NOT NULL, -- 下一个流程节点的编码 + next_node_type int2 NULL, -- 下一个节点类型(0开始节点 1中间节点 2结束节点 3互斥网关 4并行网关) + skip_name varchar(100) NULL, -- 跳转名称 + skip_type varchar(40) NULL, -- 跳转类型(PASS审批通过 REJECT退回) + skip_condition varchar(200) NULL, -- 跳转条件 + coordinate varchar(100) NULL, -- 坐标 + create_time timestamp NULL, -- 创建时间 + update_time timestamp NULL, -- 更新时间 + del_flag bpchar(1) NULL DEFAULT '0':: character varying, -- 删除标志 + tenant_id varchar(40) NULL, -- 租户id CONSTRAINT flow_skip_pkey PRIMARY KEY (id) ); COMMENT ON TABLE flow_skip IS '节点跳转关联表'; @@ -127,21 +127,21 @@ COMMENT ON COLUMN flow_skip.tenant_id IS '租户id'; CREATE TABLE flow_instance ( - id int8 NOT NULL, -- 主键id - definition_id int8 NOT NULL, -- 对应flow_definition表的id - business_id varchar(40) NOT NULL, -- 业务id - node_type int2 NOT NULL, -- 节点类型(0开始节点 1中间节点 2结束节点 3互斥网关 4并行网关) - node_code varchar(40) NOT NULL, -- 流程节点编码 - node_name varchar(100) NULL, -- 流程节点名称 - variable text NULL, -- 任务变量 - flow_status varchar(20) NOT NULL, -- 流程状态(0待提交 1审批中 2 审批通过 8已完成 9已退回 10失效) - activity_status int2 NOT NULL DEFAULT 1, -- 流程激活状态(0挂起 1激活) - create_by varchar(64) NULL DEFAULT '':: character varying, -- 创建者 - create_time timestamp NULL, -- 创建时间 - update_time timestamp NULL, -- 更新时间 - ext varchar(500) NULL, -- 扩展字段,预留给业务系统使用 - del_flag bpchar(1) NULL DEFAULT '0':: character varying, -- 删除标志 - tenant_id varchar(40) NULL, -- 租户id + id int8 NOT NULL, -- 主键id + definition_id int8 NOT NULL, -- 对应flow_definition表的id + business_id varchar(40) NOT NULL, -- 业务id + node_type int2 NOT NULL, -- 节点类型(0开始节点 1中间节点 2结束节点 3互斥网关 4并行网关) + node_code varchar(40) NOT NULL, -- 流程节点编码 + node_name varchar(100) NULL, -- 流程节点名称 + variable text NULL, -- 任务变量 + flow_status varchar(20) NOT NULL, -- 流程状态(0待提交 1审批中 2 审批通过 8已完成 9已退回 10失效) + activity_status int2 NOT NULL DEFAULT 1, -- 流程激活状态(0挂起 1激活) + create_by varchar(64) NULL DEFAULT '':: character varying, -- 创建者 + create_time timestamp NULL, -- 创建时间 + update_time timestamp NULL, -- 更新时间 + ext varchar(500) NULL, -- 扩展字段,预留给业务系统使用 + del_flag bpchar(1) NULL DEFAULT '0':: character varying, -- 删除标志 + tenant_id varchar(40) NULL, -- 租户id CONSTRAINT flow_instance_pkey PRIMARY KEY (id) ); COMMENT ON TABLE flow_instance IS '流程实例表'; @@ -164,18 +164,18 @@ COMMENT ON COLUMN flow_instance.tenant_id IS '租户id'; CREATE TABLE flow_task ( - id int8 NOT NULL, -- 主键id - definition_id int8 NOT NULL, -- 对应flow_definition表的id - instance_id int8 NOT NULL, -- 对应flow_instance表的id - node_code varchar(100) NOT NULL, -- 节点编码 - node_name varchar(100) NULL, -- 节点名称 - node_type int2 NOT NULL, -- 节点类型(0开始节点 1中间节点 2结束节点 3互斥网关 4并行网关) - form_custom bpchar(1) NULL DEFAULT 'N':: character varying, -- 审批表单是否自定义(Y是 N否) - form_path varchar(100) NULL, -- 审批表单路径 - create_time timestamp NULL, -- 创建时间 - update_time timestamp NULL, -- 更新时间 - del_flag bpchar(1) NULL DEFAULT '0':: character varying, -- 删除标志 - tenant_id varchar(40) NULL, -- 租户id + id int8 NOT NULL, -- 主键id + definition_id int8 NOT NULL, -- 对应flow_definition表的id + instance_id int8 NOT NULL, -- 对应flow_instance表的id + node_code varchar(100) NOT NULL, -- 节点编码 + node_name varchar(100) NULL, -- 节点名称 + node_type int2 NOT NULL, -- 节点类型(0开始节点 1中间节点 2结束节点 3互斥网关 4并行网关) + form_custom bpchar(1) NULL DEFAULT 'N':: character varying, -- 审批表单是否自定义(Y是 N否) + form_path varchar(100) NULL, -- 审批表单路径 + create_time timestamp NULL, -- 创建时间 + update_time timestamp NULL, -- 更新时间 + del_flag bpchar(1) NULL DEFAULT '0':: character varying, -- 删除标志 + tenant_id varchar(40) NULL, -- 租户id CONSTRAINT flow_task_pkey PRIMARY KEY (id) ); COMMENT ON TABLE flow_task IS '待办任务表'; @@ -195,28 +195,29 @@ COMMENT ON COLUMN flow_task.tenant_id IS '租户id'; CREATE TABLE flow_his_task ( - id int8 NOT NULL, -- 主键id - definition_id int8 NOT NULL, -- 对应flow_definition表的id - instance_id int8 NOT NULL, -- 对应flow_instance表的id - task_id int8 NOT NULL, -- 对应flow_task表的id - node_code varchar(100) NULL, -- 开始节点编码 - node_name varchar(100) NULL, -- 开始节点名称 - node_type int2 NULL, -- 开始节点类型(0开始节点 1中间节点 2结束节点 3互斥网关 4并行网关) - target_node_code varchar(100) NULL, -- 目标节点编码 - target_node_name varchar(100) NULL, -- 结束节点名称 - approver varchar(40) NULL, -- 审批者 - cooperate_type int2 NOT NULL DEFAULT 0, -- 协作方式(1审批 2转办 3委派 4会签 5票签 6加签 7减签) - collaborator varchar(40) NULL, -- 协作人(只有转办、会签、票签、委派) - skip_type varchar(10) NULL, -- 流转类型(PASS通过 REJECT退回 NONE无动作) - flow_status varchar(20) NOT NULL, -- 流程状态(0待提交 1审批中 2 审批通过 8已完成 9已退回 10失效) - form_custom bpchar(1) NULL DEFAULT 'N':: character varying, -- 审批表单是否自定义(Y是 N否) - form_path varchar(100) NULL, -- 审批表单路径 - ext varchar(500) NULL, -- 扩展字段,预留给业务系统使用 - message varchar(500) NULL, -- 审批意见 - create_time timestamp NULL, -- 创建时间 - update_time timestamp NULL, -- 更新时间 - del_flag bpchar(1) NULL DEFAULT '0':: character varying, -- 删除标志 - tenant_id varchar(40) NULL, -- 租户id + id int8 NOT NULL, -- 主键id + definition_id int8 NOT NULL, -- 对应flow_definition表的id + instance_id int8 NOT NULL, -- 对应flow_instance表的id + task_id int8 NOT NULL, -- 对应flow_task表的id + node_code varchar(100) NULL, -- 开始节点编码 + node_name varchar(100) NULL, -- 开始节点名称 + node_type int2 NULL, -- 开始节点类型(0开始节点 1中间节点 2结束节点 3互斥网关 4并行网关) + target_node_code varchar(200) NULL, -- 目标节点编码 + target_node_name varchar(200) NULL, -- 结束节点名称 + approver varchar(40) NULL, -- 审批者 + cooperate_type int2 NOT NULL DEFAULT 0, -- 协作方式(1审批 2转办 3委派 4会签 5票签 6加签 7减签) + collaborator varchar(40) NULL, -- 协作人(只有转办、会签、票签、委派) + skip_type varchar(10) NULL, -- 流转类型(PASS通过 REJECT退回 NONE无动作) + flow_status varchar(20) NOT NULL, -- 流程状态(0待提交 1审批中 2 审批通过 8已完成 9已退回 10失效) + form_custom bpchar(1) NULL DEFAULT 'N':: character varying, -- 审批表单是否自定义(Y是 N否) + form_path varchar(100) NULL, -- 审批表单路径 + ext varchar(500) NULL, -- 扩展字段,预留给业务系统使用 + message varchar(500) NULL, -- 审批意见 + variable text NULL, -- 任务变量 + create_time timestamp NULL, -- 创建时间 + update_time timestamp NULL, -- 更新时间 + del_flag bpchar(1) NULL DEFAULT '0':: character varying, -- 删除标志 + tenant_id varchar(40) NULL, -- 租户id CONSTRAINT flow_his_task_pkey PRIMARY KEY (id) ); COMMENT ON TABLE flow_his_task IS '历史任务记录表'; @@ -238,6 +239,7 @@ COMMENT ON COLUMN flow_his_task.flow_status IS '流程状态(1审批中 2 审 COMMENT ON COLUMN flow_his_task.form_custom IS '审批表单是否自定义(Y是 N否)'; COMMENT ON COLUMN flow_his_task.form_path IS '审批表单路径'; COMMENT ON COLUMN flow_his_task.message IS '审批意见'; +COMMENT ON COLUMN flow_his_task.variable IS '任务变量'; COMMENT ON COLUMN flow_his_task.ext IS '扩展字段,预留给业务系统使用'; COMMENT ON COLUMN flow_his_task.create_time IS '任务开始时间'; COMMENT ON COLUMN flow_his_task.update_time IS '审批完成时间'; @@ -246,15 +248,15 @@ COMMENT ON COLUMN flow_his_task.tenant_id IS '租户id'; CREATE TABLE flow_user ( - id int8 NOT NULL, -- 主键id - "type" bpchar(1) NOT NULL, -- 人员类型(1待办任务的审批人权限 2待办任务的转办人权限 3流程实例的抄送人权限 4待办任务的委托人权限) - processed_by varchar(80) NULL, -- 权限人 - associated int8 NOT NULL, -- 任务表id - create_time timestamp NULL, -- 创建时间 - create_by varchar(80) NULL, -- 创建人 - update_time timestamp NULL, -- 更新时间 - del_flag bpchar(1) NULL DEFAULT '0':: character varying, -- 删除标志 - tenant_id varchar(40) NULL, -- 租户id + id int8 NOT NULL, -- 主键id + "type" bpchar(1) NOT NULL, -- 人员类型(1待办任务的审批人权限 2待办任务的转办人权限 3流程实例的抄送人权限 4待办任务的委托人权限) + processed_by varchar(80) NULL, -- 权限人 + associated int8 NOT NULL, -- 任务表id + create_time timestamp NULL, -- 创建时间 + create_by varchar(80) NULL, -- 创建人 + update_time timestamp NULL, -- 更新时间 + del_flag bpchar(1) NULL DEFAULT '0':: character varying, -- 删除标志 + tenant_id varchar(40) NULL, -- 租户id CONSTRAINT flow_user_pk PRIMARY KEY (id) ); CREATE INDEX user_processed_type ON flow_user USING btree (processed_by, type); @@ -306,7 +308,7 @@ COMMENT ON COLUMN flow_category.update_time IS '更新时间'; INSERT INTO flow_category VALUES (100, '000000', 0, '0', 'OA审批', 0, '0', 103, 1, now(), NULL, NULL); INSERT INTO flow_category VALUES (101, '000000', 100, '0,100', '假勤管理', 0, '0', 103, 1, now(), NULL, NULL); -INSERT INTO flow_category VALUES (102, '000000', 100, '0,100', '人事管理', 0, '0', 103, 1, now(), NULL, NULL); +INSERT INTO flow_category VALUES (102, '000000', 100, '0,100', '人事管理', 1, '0', 103, 1, now(), NULL, NULL); INSERT INTO flow_category VALUES (103, '000000', 101, '0,100,101', '请假', 0, '0', 103, 1, now(), NULL, NULL); INSERT INTO flow_category VALUES (104, '000000', 101, '0,100,101', '出差', 1, '0', 103, 1, now(), NULL, NULL); INSERT INTO flow_category VALUES (105, '000000', 101, '0,100,101', '加班', 2, '0', 103, 1, now(), NULL, NULL); diff --git a/script/sql/ry_workflow.sql b/script/sql/ry_workflow.sql index 7b82ef6b2..c5adb64ed 100644 --- a/script/sql/ry_workflow.sql +++ b/script/sql/ry_workflow.sql @@ -3,106 +3,107 @@ -- ---------------------------- CREATE TABLE `flow_definition` ( - `id` bigint unsigned NOT NULL COMMENT '主键id', - `flow_code` varchar(40) NOT NULL COMMENT '流程编码', - `flow_name` varchar(100) NOT NULL COMMENT '流程名称', - `category` varchar(100) DEFAULT NULL COMMENT '流程类别', - `version` varchar(20) NOT NULL COMMENT '流程版本', - `is_publish` tinyint(1) NOT NULL DEFAULT '0' COMMENT '是否发布(0未发布 1已发布 9失效)', - `form_custom` char(1) DEFAULT 'N' COMMENT '审批表单是否自定义(Y是 N否)', - `form_path` varchar(100) DEFAULT NULL COMMENT '审批表单路径', - `activity_status` tinyint(1) NOT NULL DEFAULT '1' COMMENT '流程激活状态(0挂起 1激活)', - `listener_type` varchar(100) DEFAULT NULL COMMENT '监听器类型', - `listener_path` varchar(400) DEFAULT NULL COMMENT '监听器路径', - `ext` varchar(500) DEFAULT NULL COMMENT '业务详情 存业务表对象json字符串', - `create_time` datetime DEFAULT NULL COMMENT '创建时间', - `update_time` datetime DEFAULT NULL COMMENT '更新时间', - `del_flag` char(1) DEFAULT '0' COMMENT '删除标志', - `tenant_id` varchar(40) DEFAULT NULL COMMENT '租户id', + `id` bigint unsigned NOT NULL COMMENT '主键id', + `flow_code` varchar(40) NOT NULL COMMENT '流程编码', + `flow_name` varchar(100) NOT NULL COMMENT '流程名称', + `category` varchar(100) DEFAULT NULL COMMENT '流程类别', + `version` varchar(20) NOT NULL COMMENT '流程版本', + `is_publish` tinyint(1) NOT NULL DEFAULT '0' COMMENT '是否发布(0未发布 1已发布 9失效)', + `form_custom` char(1) DEFAULT 'N' COMMENT '审批表单是否自定义(Y是 N否)', + `form_path` varchar(100) DEFAULT NULL COMMENT '审批表单路径', + `activity_status` tinyint(1) NOT NULL DEFAULT '1' COMMENT '流程激活状态(0挂起 1激活)', + `listener_type` varchar(100) DEFAULT NULL COMMENT '监听器类型', + `listener_path` varchar(400) DEFAULT NULL COMMENT '监听器路径', + `ext` varchar(500) DEFAULT NULL COMMENT '业务详情 存业务表对象json字符串', + `create_time` datetime DEFAULT NULL COMMENT '创建时间', + `update_time` datetime DEFAULT NULL COMMENT '更新时间', + `del_flag` char(1) DEFAULT '0' COMMENT '删除标志', + `tenant_id` varchar(40) DEFAULT NULL COMMENT '租户id', PRIMARY KEY (`id`) USING BTREE -) ENGINE=InnoDB COMMENT='流程定义表'; +) ENGINE = InnoDB COMMENT ='流程定义表'; CREATE TABLE `flow_node` ( `id` bigint unsigned NOT NULL COMMENT '主键id', - `node_type` tinyint(1) NOT NULL COMMENT '节点类型(0开始节点 1中间节点 2结束节点 3互斥网关 4并行网关)', - `definition_id` bigint NOT NULL COMMENT '流程定义id', - `node_code` varchar(100) NOT NULL COMMENT '流程节点编码', - `node_name` varchar(100) DEFAULT NULL COMMENT '流程节点名称', - `permission_flag` varchar(200) DEFAULT NULL COMMENT '权限标识(权限类型:权限标识,可以多个,用逗号隔开)', - `node_ratio` DECIMAL(6,3) DEFAULT NULL COMMENT '流程签署比例值', - `coordinate` varchar(100) DEFAULT NULL COMMENT '坐标', - `skip_any_node` varchar(100) DEFAULT 'N' COMMENT '是否可以退回任意节点(Y是 N否)即将删除', - `any_node_skip` varchar(100) DEFAULT NULL COMMENT '任意结点跳转', - `listener_type` varchar(100) DEFAULT NULL COMMENT '监听器类型', - `listener_path` varchar(400) DEFAULT NULL COMMENT '监听器路径', + `node_type` tinyint(1) NOT NULL COMMENT '节点类型(0开始节点 1中间节点 2结束节点 3互斥网关 4并行网关)', + `definition_id` bigint NOT NULL COMMENT '流程定义id', + `node_code` varchar(100) NOT NULL COMMENT '流程节点编码', + `node_name` varchar(100) DEFAULT NULL COMMENT '流程节点名称', + `permission_flag` varchar(200) DEFAULT NULL COMMENT '权限标识(权限类型:权限标识,可以多个,用逗号隔开)', + `node_ratio` decimal(6, 3) DEFAULT NULL COMMENT '流程签署比例值', + `coordinate` varchar(100) DEFAULT NULL COMMENT '坐标', + `skip_any_node` varchar(100) DEFAULT 'N' COMMENT '是否可以退回任意节点(Y是 N否)即将删除', + `any_node_skip` varchar(100) DEFAULT NULL COMMENT '任意结点跳转', + `listener_type` varchar(100) DEFAULT NULL COMMENT '监听器类型', + `listener_path` varchar(400) DEFAULT NULL COMMENT '监听器路径', `handler_type` varchar(100) DEFAULT NULL COMMENT '处理器类型', `handler_path` varchar(400) DEFAULT NULL COMMENT '处理器路径', - `form_custom` char(1) DEFAULT 'N' COMMENT '审批表单是否自定义(Y是 N否)', - `form_path` varchar(100) DEFAULT NULL COMMENT '审批表单路径', - `version` varchar(20) NOT NULL COMMENT '版本', - `create_time` datetime DEFAULT NULL COMMENT '创建时间', - `update_time` datetime DEFAULT NULL COMMENT '更新时间', - `del_flag` char(1) DEFAULT '0' COMMENT '删除标志', - `tenant_id` varchar(40) DEFAULT NULL COMMENT '租户id', + `form_custom` char(1) DEFAULT 'N' COMMENT '审批表单是否自定义(Y是 N否)', + `form_path` varchar(100) DEFAULT NULL COMMENT '审批表单路径', + `version` varchar(20) NOT NULL COMMENT '版本', + `create_time` datetime DEFAULT NULL COMMENT '创建时间', + `update_time` datetime DEFAULT NULL COMMENT '更新时间', + `del_flag` char(1) DEFAULT '0' COMMENT '删除标志', + `tenant_id` varchar(40) DEFAULT NULL COMMENT '租户id', PRIMARY KEY (`id`) USING BTREE -) ENGINE=InnoDB COMMENT='流程节点表'; +) ENGINE = InnoDB COMMENT ='流程节点表'; CREATE TABLE `flow_skip` ( `id` bigint unsigned NOT NULL COMMENT '主键id', - `definition_id` bigint NOT NULL COMMENT '流程定义id', - `now_node_code` varchar(100) NOT NULL COMMENT '当前流程节点的编码', - `now_node_type` tinyint(1) DEFAULT NULL COMMENT '当前节点类型(0开始节点 1中间节点 2结束节点 3互斥网关 4并行网关)', - `next_node_code` varchar(100) NOT NULL COMMENT '下一个流程节点的编码', - `next_node_type` tinyint(1) DEFAULT NULL COMMENT '下一个节点类型(0开始节点 1中间节点 2结束节点 3互斥网关 4并行网关)', + `definition_id` bigint NOT NULL COMMENT '流程定义id', + `now_node_code` varchar(100) NOT NULL COMMENT '当前流程节点的编码', + `now_node_type` tinyint(1) DEFAULT NULL COMMENT '当前节点类型(0开始节点 1中间节点 2结束节点 3互斥网关 4并行网关)', + `next_node_code` varchar(100) NOT NULL COMMENT '下一个流程节点的编码', + `next_node_type` tinyint(1) DEFAULT NULL COMMENT '下一个节点类型(0开始节点 1中间节点 2结束节点 3互斥网关 4并行网关)', `skip_name` varchar(100) DEFAULT NULL COMMENT '跳转名称', `skip_type` varchar(40) DEFAULT NULL COMMENT '跳转类型(PASS审批通过 REJECT退回)', `skip_condition` varchar(200) DEFAULT NULL COMMENT '跳转条件', `coordinate` varchar(100) DEFAULT NULL COMMENT '坐标', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_time` datetime DEFAULT NULL COMMENT '更新时间', - `del_flag` char(1) DEFAULT '0' COMMENT '删除标志', - `tenant_id` varchar(40) DEFAULT NULL COMMENT '租户id', + `del_flag` char(1) DEFAULT '0' COMMENT '删除标志', + `tenant_id` varchar(40) DEFAULT NULL COMMENT '租户id', PRIMARY KEY (`id`) USING BTREE -) ENGINE=InnoDB COMMENT='节点跳转关联表'; +) ENGINE = InnoDB COMMENT ='节点跳转关联表'; CREATE TABLE `flow_instance` ( - `id` bigint NOT NULL COMMENT '主键id', - `definition_id` bigint NOT NULL COMMENT '对应flow_definition表的id', - `business_id` varchar(40) NOT NULL COMMENT '业务id', - `node_type` tinyint(1) NOT NULL COMMENT '节点类型(0开始节点 1中间节点 2结束节点 3互斥网关 4并行网关)', - `node_code` varchar(40) NOT NULL COMMENT '流程节点编码', - `node_name` varchar(100) DEFAULT NULL COMMENT '流程节点名称', - `variable` text COMMENT '任务变量', - `flow_status` varchar(20) NOT NULL COMMENT '流程状态(0待提交 1审批中 2 审批通过 3自动通过 4终止 5作废 6撤销 7取回 8已完成 9已退回 10失效)', - `activity_status` tinyint(1) NOT NULL DEFAULT '1' COMMENT '流程激活状态(0挂起 1激活)', - `create_by` varchar(64) DEFAULT '' COMMENT '创建者', - `create_time` datetime DEFAULT NULL COMMENT '创建时间', - `update_time` datetime DEFAULT NULL COMMENT '更新时间', - `ext` varchar(500) DEFAULT NULL COMMENT '扩展字段,预留给业务系统使用', - `del_flag` char(1) DEFAULT '0' COMMENT '删除标志', - `tenant_id` varchar(40) DEFAULT NULL COMMENT '租户id', + `id` bigint NOT NULL COMMENT '主键id', + `definition_id` bigint NOT NULL COMMENT '对应flow_definition表的id', + `business_id` varchar(40) NOT NULL COMMENT '业务id', + `node_type` tinyint(1) NOT NULL COMMENT '节点类型(0开始节点 1中间节点 2结束节点 3互斥网关 4并行网关)', + `node_code` varchar(40) NOT NULL COMMENT '流程节点编码', + `node_name` varchar(100) DEFAULT NULL COMMENT '流程节点名称', + `variable` text COMMENT '任务变量', + `flow_status` varchar(20) NOT NULL COMMENT '流程状态(0待提交 1审批中 2 审批通过 3自动通过 4终止 5作废 6撤销 7取回 8已完成 9已退回 10失效)', + `activity_status` tinyint(1) NOT NULL DEFAULT '1' COMMENT '流程激活状态(0挂起 1激活)', + `def_json` text COMMENT '流程定义json', + `create_by` varchar(64) DEFAULT '' COMMENT '创建者', + `create_time` datetime DEFAULT NULL COMMENT '创建时间', + `update_time` datetime DEFAULT NULL COMMENT '更新时间', + `ext` varchar(500) DEFAULT NULL COMMENT '扩展字段,预留给业务系统使用', + `del_flag` char(1) DEFAULT '0' COMMENT '删除标志', + `tenant_id` varchar(40) DEFAULT NULL COMMENT '租户id', PRIMARY KEY (`id`) USING BTREE -) ENGINE=InnoDB COMMENT='流程实例表'; +) ENGINE = InnoDB COMMENT ='流程实例表'; CREATE TABLE `flow_task` ( - `id` bigint NOT NULL COMMENT '主键id', - `definition_id` bigint NOT NULL COMMENT '对应flow_definition表的id', - `instance_id` bigint NOT NULL COMMENT '对应flow_instance表的id', - `node_code` varchar(100) NOT NULL COMMENT '节点编码', - `node_name` varchar(100) DEFAULT NULL COMMENT '节点名称', - `node_type` tinyint(1) NOT NULL COMMENT '节点类型(0开始节点 1中间节点 2结束节点 3互斥网关 4并行网关)', - `form_custom` char(1) DEFAULT 'N' COMMENT '审批表单是否自定义(Y是 N否)', - `form_path` varchar(100) DEFAULT NULL COMMENT '审批表单路径', - `create_time` datetime DEFAULT NULL COMMENT '创建时间', - `update_time` datetime DEFAULT NULL COMMENT '更新时间', - `del_flag` char(1) DEFAULT '0' COMMENT '删除标志', - `tenant_id` varchar(40) DEFAULT NULL COMMENT '租户id', + `id` bigint NOT NULL COMMENT '主键id', + `definition_id` bigint NOT NULL COMMENT '对应flow_definition表的id', + `instance_id` bigint NOT NULL COMMENT '对应flow_instance表的id', + `node_code` varchar(100) NOT NULL COMMENT '节点编码', + `node_name` varchar(100) DEFAULT NULL COMMENT '节点名称', + `node_type` tinyint(1) NOT NULL COMMENT '节点类型(0开始节点 1中间节点 2结束节点 3互斥网关 4并行网关)', + `form_custom` char(1) DEFAULT 'N' COMMENT '审批表单是否自定义(Y是 N否)', + `form_path` varchar(100) DEFAULT NULL COMMENT '审批表单路径', + `create_time` datetime DEFAULT NULL COMMENT '创建时间', + `update_time` datetime DEFAULT NULL COMMENT '更新时间', + `del_flag` char(1) DEFAULT '0' COMMENT '删除标志', + `tenant_id` varchar(40) DEFAULT NULL COMMENT '租户id', PRIMARY KEY (`id`) USING BTREE -) ENGINE=InnoDB COMMENT='待办任务表'; +) ENGINE = InnoDB COMMENT ='待办任务表'; CREATE TABLE `flow_his_task` ( @@ -113,39 +114,40 @@ CREATE TABLE `flow_his_task` `node_code` varchar(100) DEFAULT NULL COMMENT '开始节点编码', `node_name` varchar(100) DEFAULT NULL COMMENT '开始节点名称', `node_type` tinyint(1) DEFAULT NULL COMMENT '开始节点类型(0开始节点 1中间节点 2结束节点 3互斥网关 4并行网关)', - `target_node_code` varchar(100) DEFAULT NULL COMMENT '目标节点编码', - `target_node_name` varchar(100) DEFAULT NULL COMMENT '结束节点名称', + `target_node_code` varchar(200) DEFAULT NULL COMMENT '目标节点编码', + `target_node_name` varchar(200) DEFAULT NULL COMMENT '结束节点名称', `approver` varchar(40) DEFAULT NULL COMMENT '审批者', `cooperate_type` tinyint(1) NOT NULL DEFAULT '0' COMMENT '协作方式(1审批 2转办 3委派 4会签 5票签 6加签 7减签)', `collaborator` varchar(40) DEFAULT NULL COMMENT '协作人', - `skip_type` varchar(10) NOT NULL COMMENT '流转类型(PASS通过 REJECT退回 NONE无动作)', - `flow_status` varchar(20) NOT NULL COMMENT '流程状态(1审批中 2 审批通过 9已退回 10失效)', - `form_custom` char(1) DEFAULT 'N' COMMENT '审批表单是否自定义(Y是 N否)', - `form_path` varchar(100) DEFAULT NULL COMMENT '审批表单路径', + `skip_type` varchar(10) NOT NULL COMMENT '流转类型(PASS通过 REJECT退回 NONE无动作)', + `flow_status` varchar(20) NOT NULL COMMENT '流程状态(1审批中 2 审批通过 9已退回 10失效)', + `form_custom` char(1) DEFAULT 'N' COMMENT '审批表单是否自定义(Y是 N否)', + `form_path` varchar(100) DEFAULT NULL COMMENT '审批表单路径', `message` varchar(500) DEFAULT NULL COMMENT '审批意见', + `variable` TEXT DEFAULT NULL COMMENT '任务变量', `ext` varchar(500) DEFAULT NULL COMMENT '业务详情 存业务表对象json字符串', `create_time` datetime DEFAULT NULL COMMENT '任务开始时间', `update_time` datetime DEFAULT NULL COMMENT '审批完成时间', `del_flag` char(1) DEFAULT '0' COMMENT '删除标志', `tenant_id` varchar(40) DEFAULT NULL COMMENT '租户id', PRIMARY KEY (`id`) USING BTREE -) ENGINE = InnoDB COMMENT ='历史任务记录表'; +) ENGINE = InnoDB COMMENT ='历史任务记录表'; CREATE TABLE `flow_user` ( - `id` bigint unsigned NOT NULL COMMENT '主键id', - `type` char(1) NOT NULL COMMENT '人员类型(1待办任务的审批人权限 2待办任务的转办人权限 3待办任务的委托人权限)', - `processed_by` varchar(80) DEFAULT NULL COMMENT '权限人', - `associated` bigint NOT NULL COMMENT '任务表id', - `create_time` datetime DEFAULT NULL COMMENT '创建时间', - `create_by` varchar(80) DEFAULT NULL COMMENT '创建人', - `update_time` datetime DEFAULT NULL COMMENT '更新时间', - `del_flag` char(1) DEFAULT '0' COMMENT '删除标志', - `tenant_id` varchar(40) DEFAULT NULL COMMENT '租户id', + `id` bigint unsigned NOT NULL COMMENT '主键id', + `type` char(1) NOT NULL COMMENT '人员类型(1待办任务的审批人权限 2待办任务的转办人权限 3待办任务的委托人权限)', + `processed_by` varchar(80) DEFAULT NULL COMMENT '权限人', + `associated` bigint NOT NULL COMMENT '任务表id', + `create_time` datetime DEFAULT NULL COMMENT '创建时间', + `create_by` varchar(80) DEFAULT NULL COMMENT '创建人', + `update_time` datetime DEFAULT NULL COMMENT '更新时间', + `del_flag` char(1) DEFAULT '0' COMMENT '删除标志', + `tenant_id` varchar(40) DEFAULT NULL COMMENT '租户id', PRIMARY KEY (`id`) USING BTREE, - KEY `user_processed_type` (`processed_by`,`type`) -) ENGINE=InnoDB COMMENT='流程用户表'; + KEY `user_processed_type` (`processed_by`, `type`) +) ENGINE = InnoDB COMMENT ='流程用户表'; -- ---------------------------- -- 流程分类表 @@ -169,7 +171,7 @@ create table flow_category INSERT INTO flow_category values (100, '000000', 0, '0', 'OA审批', 0, '0', 103, 1, sysdate(), null, null); INSERT INTO flow_category values (101, '000000', 100, '0,100', '假勤管理', 0, '0', 103, 1, sysdate(), null, null); -INSERT INTO flow_category values (102, '000000', 100, '0,100', '人事管理', 0, '0', 103, 1, sysdate(), null, null); +INSERT INTO flow_category values (102, '000000', 100, '0,100', '人事管理', 1, '0', 103, 1, sysdate(), null, null); INSERT INTO flow_category values (103, '000000', 101, '0,100,101', '请假', 0, '0', 103, 1, sysdate(), null, null); INSERT INTO flow_category values (104, '000000', 101, '0,100,101', '出差', 1, '0', 103, 1, sysdate(), null, null); INSERT INTO flow_category values (105, '000000', 101, '0,100,101', '加班', 2, '0', 103, 1, sysdate(), null, null); diff --git a/script/sql/sqlserver/sqlserver_ry_workflow.sql b/script/sql/sqlserver/sqlserver_ry_workflow.sql index dc5c6b210..2ccb6faec 100644 --- a/script/sql/sqlserver/sqlserver_ry_workflow.sql +++ b/script/sql/sqlserver/sqlserver_ry_workflow.sql @@ -1086,7 +1086,7 @@ INSERT flow_category VALUES (100, N'000000', 0, N'0', N'OA审批', 0, N'0', 103, GO INSERT flow_category VALUES (101, N'000000', 100, N'0,100', N'假勤管理', 0, N'0', 103, 1, getdate(), NULL, NULL); GO -INSERT flow_category VALUES (102, N'000000', 100, N'0,100', N'人事管理', 0, N'0', 103, 1, getdate(), NULL, NULL); +INSERT flow_category VALUES (102, N'000000', 100, N'0,100', N'人事管理', 1, N'0', 103, 1, getdate(), NULL, NULL); GO INSERT flow_category VALUES (103, N'000000', 101, N'0,100,101', N'请假', 0, N'0', 103, 1, getdate(), NULL, NULL); GO -- Gitee From 8f21e9e2fde6f1e5acc5355f3a9a4c8dbfbeba47 Mon Sep 17 00:00:00 2001 From: AprilWind <2100166581@qq.com> Date: Wed, 15 Jan 2025 20:46:11 +0800 Subject: [PATCH 375/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=E4=BB=A3?= =?UTF-8?q?=E7=A0=81=E4=BB=A5=E5=8F=8A=E6=B3=A8=E9=87=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dromara/common/core/constant/Constants.java | 2 +- .../common/core/constant/SystemConstants.java | 7 ++++++- .../java/org/dromara/system/domain/SysClient.java | 2 +- .../java/org/dromara/system/domain/SysDept.java | 2 +- .../java/org/dromara/system/domain/SysRole.java | 2 +- .../java/org/dromara/system/domain/SysTenant.java | 2 +- .../dromara/system/domain/SysTenantPackage.java | 8 +++++++- .../java/org/dromara/system/domain/SysUser.java | 2 +- .../org/dromara/workflow/domain/FlowCategory.java | 2 +- script/sql/oracle/oracle_ry_vue_5.X.sql | 14 +++++++------- script/sql/oracle/oracle_ry_workflow.sql | 2 +- script/sql/postgres/postgres_ry_vue_5.X.sql | 14 +++++++------- script/sql/postgres/postgres_ry_workflow.sql | 2 +- script/sql/ry_vue_5.X.sql | 14 +++++++------- script/sql/ry_workflow.sql | 2 +- script/sql/sqlserver/sqlserver_ry_vue_5.X.sql | 14 +++++++------- script/sql/sqlserver/sqlserver_ry_workflow.sql | 2 +- script/sql/update/oracle/update_5.0-5.1.sql | 4 ++-- script/sql/update/postgres/update_5.0-5.1.sql | 4 ++-- script/sql/update/sqlserver/update_5.0-5.1.sql | 4 ++-- script/sql/update/update_5.0-5.1.sql | 4 ++-- 21 files changed, 60 insertions(+), 49 deletions(-) diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/Constants.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/Constants.java index d031921bd..273c7344a 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/Constants.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/Constants.java @@ -68,7 +68,7 @@ public interface Constants { Integer CAPTCHA_EXPIRATION = 2; /** - * 顶级部门id + * 顶级父级id */ Long TOP_PARENT_ID = 0L; diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/SystemConstants.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/SystemConstants.java index 79afb951f..55240bbf8 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/SystemConstants.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/SystemConstants.java @@ -1,7 +1,7 @@ package org.dromara.common.core.constant; /** - * 用户常量信息 + * 系统常量信息 * * @author Lion Li */ @@ -22,6 +22,11 @@ public interface SystemConstants { */ String YES = "Y"; + /** + * 是否为系统默认(否) + */ + String NO = "N"; + /** * 是否菜单外链(是) */ diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysClient.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysClient.java index 0f681be08..ee2475d08 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysClient.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysClient.java @@ -68,7 +68,7 @@ public class SysClient extends BaseEntity { private String status; /** - * 删除标志(0代表存在 2代表删除) + * 删除标志(0代表存在 1代表删除) */ @TableLogic private String delFlag; diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysDept.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysDept.java index 48ca6821b..b94fd8a31 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysDept.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysDept.java @@ -70,7 +70,7 @@ public class SysDept extends TenantEntity { private String status; /** - * 删除标志(0代表存在 2代表删除) + * 删除标志(0代表存在 1代表删除) */ @TableLogic private String delFlag; diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysRole.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysRole.java index 2b4246404..a7c0ad5a0 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysRole.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysRole.java @@ -62,7 +62,7 @@ public class SysRole extends TenantEntity { private String status; /** - * 删除标志(0代表存在 2代表删除) + * 删除标志(0代表存在 1代表删除) */ @TableLogic private String delFlag; diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysTenant.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysTenant.java index a564a40c5..9800c3075 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysTenant.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysTenant.java @@ -95,7 +95,7 @@ public class SysTenant extends BaseEntity { private String status; /** - * 删除标志(0代表存在 2代表删除) + * 删除标志(0代表存在 1代表删除) */ @TableLogic private String delFlag; diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysTenantPackage.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysTenantPackage.java index f7e423f0f..5f58e3eca 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysTenantPackage.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysTenantPackage.java @@ -25,28 +25,34 @@ public class SysTenantPackage extends BaseEntity { */ @TableId(value = "package_id") private Long packageId; + /** * 套餐名称 */ private String packageName; + /** * 关联菜单id */ private String menuIds; + /** * 备注 */ private String remark; + /** * 菜单树选择项是否关联显示( 0:父子不互相关联显示 1:父子互相关联显示) */ private Boolean menuCheckStrictly; + /** * 状态(0正常 1停用) */ private String status; + /** - * 删除标志(0代表存在 2代表删除) + * 删除标志(0代表存在 1代表删除) */ @TableLogic private String delFlag; diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysUser.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysUser.java index 4e603e551..3712f805f 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysUser.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysUser.java @@ -83,7 +83,7 @@ public class SysUser extends TenantEntity { private String status; /** - * 删除标志(0代表存在 2代表删除) + * 删除标志(0代表存在 1代表删除) */ @TableLogic private String delFlag; diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/FlowCategory.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/FlowCategory.java index 2ec297c5a..86ac1ac32 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/FlowCategory.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/FlowCategory.java @@ -50,7 +50,7 @@ public class FlowCategory extends TenantEntity { private Long orderNum; /** - * 删除标志(0代表存在 2代表删除) + * 删除标志(0代表存在 1代表删除) */ @TableLogic private String delFlag; diff --git a/script/sql/oracle/oracle_ry_vue_5.X.sql b/script/sql/oracle/oracle_ry_vue_5.X.sql index 6171b8d31..2dd8198ff 100644 --- a/script/sql/oracle/oracle_ry_vue_5.X.sql +++ b/script/sql/oracle/oracle_ry_vue_5.X.sql @@ -65,7 +65,7 @@ comment on column sys_social.create_by is '创建者'; comment on column sys_social.create_time is '创建时间'; comment on column sys_social.update_by is '更新者'; comment on column sys_social.update_time is '更新时间'; -comment on column sys_social.del_flag is '删除标志(0代表存在 2代表删除)'; +comment on column sys_social.del_flag is '删除标志(0代表存在 1代表删除)'; -- ---------------------------- -- 租户表 @@ -108,7 +108,7 @@ comment on column sys_tenant.package_id is '租户套餐编号'; comment on column sys_tenant.expire_time is '过期时间'; comment on column sys_tenant.account_count is '用户数量(-1不限制)'; comment on column sys_tenant.status is '租户状态(0正常 1停用)'; -comment on column sys_tenant.del_flag is '删除标志(0代表存在 2代表删除)'; +comment on column sys_tenant.del_flag is '删除标志(0代表存在 1代表删除)'; comment on column sys_tenant.create_dept is '创建部门'; comment on column sys_tenant.create_by is '创建者'; comment on column sys_tenant.create_time is '创建时间'; @@ -148,7 +148,7 @@ comment on column sys_tenant_package.package_name is '套餐名称'; comment on column sys_tenant_package.menu_ids is '关联菜单id'; comment on column sys_tenant_package.remark is '备注'; comment on column sys_tenant_package.status is '状态(0正常 1停用)'; -comment on column sys_tenant_package.del_flag is '删除标志(0代表存在 2代表删除)'; +comment on column sys_tenant_package.del_flag is '删除标志(0代表存在 1代表删除)'; comment on column sys_tenant_package.create_dept is '创建部门'; comment on column sys_tenant_package.create_by is '创建者'; comment on column sys_tenant_package.create_time is '创建时间'; @@ -193,7 +193,7 @@ comment on column sys_dept.leader is '负责人'; comment on column sys_dept.phone is '联系电话'; comment on column sys_dept.email is '邮箱'; comment on column sys_dept.status is '部门状态(0正常 1停用)'; -comment on column sys_dept.del_flag is '删除标志(0代表存在 2代表删除)'; +comment on column sys_dept.del_flag is '删除标志(0代表存在 1代表删除)'; comment on column sys_dept.create_dept is '创建部门'; comment on column sys_dept.create_by is '创建者'; comment on column sys_dept.create_time is '创建时间'; @@ -258,7 +258,7 @@ comment on column sys_user.sex is '用户性别(0男 1女 2未知)' comment on column sys_user.avatar is '头像路径'; comment on column sys_user.password is '密码'; comment on column sys_user.status is '帐号状态(0正常 1停用)'; -comment on column sys_user.del_flag is '删除标志(0代表存在 2代表删除)'; +comment on column sys_user.del_flag is '删除标志(0代表存在 1代表删除)'; comment on column sys_user.login_ip is '最后登录IP'; comment on column sys_user.login_date is '最后登录时间'; comment on column sys_user.create_dept is '创建部门'; @@ -356,7 +356,7 @@ comment on column sys_role.data_scope is '数据范围(1:全部 comment on column sys_role.menu_check_strictly is '菜单树选择项是否关联显示'; comment on column sys_role.dept_check_strictly is '部门树选择项是否关联显示'; comment on column sys_role.status is '角色状态(0正常 1停用)'; -comment on column sys_role.del_flag is '删除标志(0代表存在 2代表删除)'; +comment on column sys_role.del_flag is '删除标志(0代表存在 1代表删除)'; comment on column sys_role.create_dept is '创建部门'; comment on column sys_role.create_by is '创建者'; comment on column sys_role.create_time is '创建时间'; @@ -1245,7 +1245,7 @@ comment on column sys_client.device_type is '设备类型'; comment on column sys_client.active_timeout is 'token活跃超时时间'; comment on column sys_client.timeout is 'token固定超时'; comment on column sys_client.status is '状态(0正常 1停用)'; -comment on column sys_client.del_flag is '删除标志(0代表存在 2代表删除)'; +comment on column sys_client.del_flag is '删除标志(0代表存在 1代表删除)'; comment on column sys_client.create_dept is '创建部门'; comment on column sys_client.create_by is '创建者'; comment on column sys_client.create_time is '创建时间'; diff --git a/script/sql/oracle/oracle_ry_workflow.sql b/script/sql/oracle/oracle_ry_workflow.sql index a0f71d0fa..b515b78ff 100644 --- a/script/sql/oracle/oracle_ry_workflow.sql +++ b/script/sql/oracle/oracle_ry_workflow.sql @@ -307,7 +307,7 @@ COMMENT ON COLUMN flow_category.parent_id IS '父流程分类id'; COMMENT ON COLUMN flow_category.ancestors IS '祖级列表'; COMMENT ON COLUMN flow_category.category_name IS '流程分类名称'; COMMENT ON COLUMN flow_category.order_num IS '显示顺序'; -COMMENT ON COLUMN flow_category.del_flag IS '删除标志(0代表存在 2代表删除)'; +COMMENT ON COLUMN flow_category.del_flag IS '删除标志(0代表存在 1代表删除)'; COMMENT ON COLUMN flow_category.create_dept IS '创建部门'; COMMENT ON COLUMN flow_category.create_by IS '创建者'; COMMENT ON COLUMN flow_category.create_time IS '创建时间'; diff --git a/script/sql/postgres/postgres_ry_vue_5.X.sql b/script/sql/postgres/postgres_ry_vue_5.X.sql index af97ac7dc..b3499e89f 100644 --- a/script/sql/postgres/postgres_ry_vue_5.X.sql +++ b/script/sql/postgres/postgres_ry_vue_5.X.sql @@ -64,7 +64,7 @@ comment on column sys_social.create_by is '创建者'; comment on column sys_social.create_time is '创建时间'; comment on column sys_social.update_by is '更新者'; comment on column sys_social.update_time is '更新时间'; -comment on column sys_social.del_flag is '删除标志(0代表存在 2代表删除)'; +comment on column sys_social.del_flag is '删除标志(0代表存在 1代表删除)'; -- ---------------------------- -- 租户表 @@ -109,7 +109,7 @@ comment on column sys_tenant.package_id is '租户套餐编号'; comment on column sys_tenant.expire_time is '过期时间'; comment on column sys_tenant.account_count is '用户数量(-1不限制)'; comment on column sys_tenant.status is '租户状态(0正常 1停用)'; -comment on column sys_tenant.del_flag is '删除标志(0代表存在 2代表删除)'; +comment on column sys_tenant.del_flag is '删除标志(0代表存在 1代表删除)'; comment on column sys_tenant.create_dept is '创建部门'; comment on column sys_tenant.create_by is '创建者'; comment on column sys_tenant.create_time is '创建时间'; @@ -151,7 +151,7 @@ comment on column sys_tenant_package.package_name is '套餐名称'; comment on column sys_tenant_package.menu_ids is '关联菜单id'; comment on column sys_tenant_package.remark is '备注'; comment on column sys_tenant_package.status is '状态(0正常 1停用)'; -comment on column sys_tenant_package.del_flag is '删除标志(0代表存在 2代表删除)'; +comment on column sys_tenant_package.del_flag is '删除标志(0代表存在 1代表删除)'; comment on column sys_tenant_package.create_dept is '创建部门'; comment on column sys_tenant_package.create_by is '创建者'; comment on column sys_tenant_package.create_time is '创建时间'; @@ -196,7 +196,7 @@ comment on column sys_dept.leader is '负责人'; comment on column sys_dept.phone is '联系电话'; comment on column sys_dept.email is '邮箱'; comment on column sys_dept.status is '部门状态(0正常 1停用)'; -comment on column sys_dept.del_flag is '删除标志(0代表存在 2代表删除)'; +comment on column sys_dept.del_flag is '删除标志(0代表存在 1代表删除)'; comment on column sys_dept.create_dept is '创建部门'; comment on column sys_dept.create_by is '创建者'; comment on column sys_dept.create_time is '创建时间'; @@ -259,7 +259,7 @@ comment on column sys_user.sex is '用户性别(0男 1女 2未知)' comment on column sys_user.avatar is '头像地址'; comment on column sys_user.password is '密码'; comment on column sys_user.status is '帐号状态(0正常 1停用)'; -comment on column sys_user.del_flag is '删除标志(0代表存在 2代表删除)'; +comment on column sys_user.del_flag is '删除标志(0代表存在 1代表删除)'; comment on column sys_user.login_ip is '最后登陆IP'; comment on column sys_user.login_date is '最后登陆时间'; comment on column sys_user.create_dept is '创建部门'; @@ -357,7 +357,7 @@ comment on column sys_role.data_scope is '数据范围(1:全部数 comment on column sys_role.menu_check_strictly is '菜单树选择项是否关联显示'; comment on column sys_role.dept_check_strictly is '部门树选择项是否关联显示'; comment on column sys_role.status is '角色状态(0正常 1停用)'; -comment on column sys_role.del_flag is '删除标志(0代表存在 2代表删除)'; +comment on column sys_role.del_flag is '删除标志(0代表存在 1代表删除)'; comment on column sys_role.create_dept is '创建部门'; comment on column sys_role.create_by is '创建者'; comment on column sys_role.create_time is '创建时间'; @@ -1244,7 +1244,7 @@ comment on column sys_client.device_type is '设备类型'; comment on column sys_client.active_timeout is 'token活跃超时时间'; comment on column sys_client.timeout is 'token固定超时'; comment on column sys_client.status is '状态(0正常 1停用)'; -comment on column sys_client.del_flag is '删除标志(0代表存在 2代表删除)'; +comment on column sys_client.del_flag is '删除标志(0代表存在 1代表删除)'; comment on column sys_client.create_dept is '创建部门'; comment on column sys_client.create_by is '创建者'; comment on column sys_client.create_time is '创建时间'; diff --git a/script/sql/postgres/postgres_ry_workflow.sql b/script/sql/postgres/postgres_ry_workflow.sql index 337b066a8..9bcf2cf17 100644 --- a/script/sql/postgres/postgres_ry_workflow.sql +++ b/script/sql/postgres/postgres_ry_workflow.sql @@ -299,7 +299,7 @@ COMMENT ON COLUMN flow_category.parent_id IS '父流程分类id'; COMMENT ON COLUMN flow_category.ancestors IS '祖级列表'; COMMENT ON COLUMN flow_category.category_name IS '流程分类名称'; COMMENT ON COLUMN flow_category.order_num IS '显示顺序'; -COMMENT ON COLUMN flow_category.del_flag IS '删除标志(0代表存在 2代表删除)'; +COMMENT ON COLUMN flow_category.del_flag IS '删除标志(0代表存在 1代表删除)'; COMMENT ON COLUMN flow_category.create_dept IS '创建部门'; COMMENT ON COLUMN flow_category.create_by IS '创建者'; COMMENT ON COLUMN flow_category.create_time IS '创建时间'; diff --git a/script/sql/ry_vue_5.X.sql b/script/sql/ry_vue_5.X.sql index d73369617..9e6244ddb 100644 --- a/script/sql/ry_vue_5.X.sql +++ b/script/sql/ry_vue_5.X.sql @@ -31,7 +31,7 @@ create table sys_social create_time datetime comment '创建时间', update_by bigint(20) comment '更新者', update_time datetime comment '更新时间', - del_flag char(1) default '0' comment '删除标志(0代表存在 2代表删除)', + del_flag char(1) default '0' comment '删除标志(0代表存在 1代表删除)', PRIMARY KEY (id) ) engine=innodb comment = '社会化关系表'; @@ -55,7 +55,7 @@ create table sys_tenant expire_time datetime comment '过期时间', account_count int default -1 comment '用户数量(-1不限制)', status char(1) default '0' comment '租户状态(0正常 1停用)', - del_flag char(1) default '0' comment '删除标志(0代表存在 2代表删除)', + del_flag char(1) default '0' comment '删除标志(0代表存在 1代表删除)', create_dept bigint(20) comment '创建部门', create_by bigint(20) comment '创建者', create_time datetime comment '创建时间', @@ -82,7 +82,7 @@ create table sys_tenant_package ( remark varchar(200) comment '备注', menu_check_strictly tinyint(1) default 1 comment '菜单树选择项是否关联显示', status char(1) default '0' comment '状态(0正常 1停用)', - del_flag char(1) default '0' comment '删除标志(0代表存在 2代表删除)', + del_flag char(1) default '0' comment '删除标志(0代表存在 1代表删除)', create_dept bigint(20) comment '创建部门', create_by bigint(20) comment '创建者', create_time datetime comment '创建时间', @@ -107,7 +107,7 @@ create table sys_dept ( phone varchar(11) default null comment '联系电话', email varchar(50) default null comment '邮箱', status char(1) default '0' comment '部门状态(0正常 1停用)', - del_flag char(1) default '0' comment '删除标志(0代表存在 2代表删除)', + del_flag char(1) default '0' comment '删除标志(0代表存在 1代表删除)', create_dept bigint(20) default null comment '创建部门', create_by bigint(20) default null comment '创建者', create_time datetime comment '创建时间', @@ -149,7 +149,7 @@ create table sys_user ( avatar bigint(20) comment '头像地址', password varchar(100) default '' comment '密码', status char(1) default '0' comment '帐号状态(0正常 1停用)', - del_flag char(1) default '0' comment '删除标志(0代表存在 2代表删除)', + del_flag char(1) default '0' comment '删除标志(0代表存在 1代表删除)', login_ip varchar(128) default '' comment '最后登录IP', login_date datetime comment '最后登录时间', create_dept bigint(20) default null comment '创建部门', @@ -212,7 +212,7 @@ create table sys_role ( menu_check_strictly tinyint(1) default 1 comment '菜单树选择项是否关联显示', dept_check_strictly tinyint(1) default 1 comment '部门树选择项是否关联显示', status char(1) not null comment '角色状态(0正常 1停用)', - del_flag char(1) default '0' comment '删除标志(0代表存在 2代表删除)', + del_flag char(1) default '0' comment '删除标志(0代表存在 1代表删除)', create_dept bigint(20) default null comment '创建部门', create_by bigint(20) default null comment '创建者', create_time datetime comment '创建时间', @@ -856,7 +856,7 @@ create table sys_client ( active_timeout int(11) default 1800 comment 'token活跃超时时间', timeout int(11) default 604800 comment 'token固定超时', status char(1) default '0' comment '状态(0正常 1停用)', - del_flag char(1) default '0' comment '删除标志(0代表存在 2代表删除)', + del_flag char(1) default '0' comment '删除标志(0代表存在 1代表删除)', create_dept bigint(20) default null comment '创建部门', create_by bigint(20) default null comment '创建者', create_time datetime default null comment '创建时间', diff --git a/script/sql/ry_workflow.sql b/script/sql/ry_workflow.sql index c5adb64ed..9455636a0 100644 --- a/script/sql/ry_workflow.sql +++ b/script/sql/ry_workflow.sql @@ -160,7 +160,7 @@ create table flow_category ancestors varchar(500) default '' comment '祖级列表', category_name varchar(30) not null comment '流程分类名称', order_num int(4) default 0 comment '显示顺序', - del_flag char(1) default '0' comment '删除标志(0代表存在 2代表删除)', + del_flag char(1) default '0' comment '删除标志(0代表存在 1代表删除)', create_dept bigint(20) null comment '创建部门', create_by bigint(20) null comment '创建者', create_time datetime null comment '创建时间', diff --git a/script/sql/sqlserver/sqlserver_ry_vue_5.X.sql b/script/sql/sqlserver/sqlserver_ry_vue_5.X.sql index bc0da269a..4607fb246 100644 --- a/script/sql/sqlserver/sqlserver_ry_vue_5.X.sql +++ b/script/sql/sqlserver/sqlserver_ry_vue_5.X.sql @@ -175,7 +175,7 @@ EXEC sys.sp_addextendedproperty 'COLUMN', N'oauth_token_secret' GO EXEC sys.sp_addextendedproperty - 'MS_Description', N'删除标志(0代表存在 2代表删除)' , + 'MS_Description', N'删除标志(0代表存在 1代表删除)' , 'SCHEMA', N'dbo', 'TABLE', N'sys_social', 'COLUMN', N'del_flag' @@ -330,7 +330,7 @@ EXEC sys.sp_addextendedproperty 'COLUMN', N'status' GO EXEC sys.sp_addextendedproperty - 'MS_Description', N'删除标志(0代表存在 2代表删除)' , + 'MS_Description', N'删除标志(0代表存在 1代表删除)' , 'SCHEMA', N'dbo', 'TABLE', N'sys_tenant', 'COLUMN', N'del_flag' @@ -427,7 +427,7 @@ EXEC sys.sp_addextendedproperty 'COLUMN', N'status' GO EXEC sys.sp_addextendedproperty - 'MS_Description', N'删除标志(0代表存在 2代表删除)' , + 'MS_Description', N'删除标志(0代表存在 1代表删除)' , 'SCHEMA', N'dbo', 'TABLE', N'sys_tenant_package', 'COLUMN', N'del_flag' @@ -1017,7 +1017,7 @@ EXEC sys.sp_addextendedproperty 'COLUMN', N'status' GO EXEC sys.sp_addextendedproperty - 'MS_Description', N'删除标志(0代表存在 2代表删除)' , + 'MS_Description', N'删除标志(0代表存在 1代表删除)' , 'SCHEMA', N'dbo', 'TABLE', N'sys_dept', 'COLUMN', N'del_flag' @@ -2342,7 +2342,7 @@ EXEC sys.sp_addextendedproperty 'COLUMN', N'status' GO EXEC sys.sp_addextendedproperty - 'MS_Description', N'删除标志(0代表存在 2代表删除)' , + 'MS_Description', N'删除标志(0代表存在 1代表删除)' , 'SCHEMA', N'dbo', 'TABLE', N'sys_role', 'COLUMN', N'del_flag' @@ -2727,7 +2727,7 @@ EXEC sys.sp_addextendedproperty 'COLUMN', N'status' GO EXEC sys.sp_addextendedproperty - 'MS_Description', N'删除标志(0代表存在 2代表删除)' , + 'MS_Description', N'删除标志(0代表存在 1代表删除)' , 'SCHEMA', N'dbo', 'TABLE', N'sys_user', 'COLUMN', N'del_flag' @@ -3206,7 +3206,7 @@ EXEC sp_addextendedproperty 'COLUMN', N'status' GO EXEC sp_addextendedproperty - 'MS_Description', N'删除标志(0代表存在 2代表删除)', + 'MS_Description', N'删除标志(0代表存在 1代表删除)', 'SCHEMA', N'dbo', 'TABLE', N'sys_client', 'COLUMN', N'del_flag' diff --git a/script/sql/sqlserver/sqlserver_ry_workflow.sql b/script/sql/sqlserver/sqlserver_ry_workflow.sql index 2ccb6faec..478dc869b 100644 --- a/script/sql/sqlserver/sqlserver_ry_workflow.sql +++ b/script/sql/sqlserver/sqlserver_ry_workflow.sql @@ -1035,7 +1035,7 @@ EXEC sp_addextendedproperty GO EXEC sp_addextendedproperty -'MS_Description', N'删除标志(0代表存在 2代表删除)', +'MS_Description', N'删除标志(0代表存在 1代表删除)', 'SCHEMA', N'dbo', 'TABLE', N'flow_category', 'COLUMN', N'del_flag' diff --git a/script/sql/update/oracle/update_5.0-5.1.sql b/script/sql/update/oracle/update_5.0-5.1.sql index 09cfae825..5341fecf9 100644 --- a/script/sql/update/oracle/update_5.0-5.1.sql +++ b/script/sql/update/oracle/update_5.0-5.1.sql @@ -71,7 +71,7 @@ comment on column sys_social.create_by is '创建者'; comment on column sys_social.create_time is '创建时间'; comment on column sys_social.update_by is '更新者'; comment on column sys_social.update_time is '更新时间'; -comment on column sys_social.del_flag is '删除标志(0代表存在 2代表删除)'; +comment on column sys_social.del_flag is '删除标志(0代表存在 1代表删除)'; -- ---------------------------- @@ -107,7 +107,7 @@ comment on column sys_client.device_type is '设备类型'; comment on column sys_client.active_timeout is 'token活跃超时时间'; comment on column sys_client.timeout is 'token固定超时'; comment on column sys_client.status is '状态(0正常 1停用)'; -comment on column sys_client.del_flag is '删除标志(0代表存在 2代表删除)'; +comment on column sys_client.del_flag is '删除标志(0代表存在 1代表删除)'; comment on column sys_client.create_dept is '创建部门'; comment on column sys_client.create_by is '创建者'; comment on column sys_client.create_time is '创建时间'; diff --git a/script/sql/update/postgres/update_5.0-5.1.sql b/script/sql/update/postgres/update_5.0-5.1.sql index f5f0a5c7a..14d7eb693 100644 --- a/script/sql/update/postgres/update_5.0-5.1.sql +++ b/script/sql/update/postgres/update_5.0-5.1.sql @@ -70,7 +70,7 @@ comment on column sys_social.create_by is '创建者'; comment on column sys_social.create_time is '创建时间'; comment on column sys_social.update_by is '更新者'; comment on column sys_social.update_time is '更新时间'; -comment on column sys_social.del_flag is '删除标志(0代表存在 2代表删除)'; +comment on column sys_social.del_flag is '删除标志(0代表存在 1代表删除)'; -- ---------------------------- @@ -106,7 +106,7 @@ comment on column sys_client.device_type is '设备类型'; comment on column sys_client.active_timeout is 'token活跃超时时间'; comment on column sys_client.timeout is 'token固定超时'; comment on column sys_client.status is '状态(0正常 1停用)'; -comment on column sys_client.del_flag is '删除标志(0代表存在 2代表删除)'; +comment on column sys_client.del_flag is '删除标志(0代表存在 1代表删除)'; comment on column sys_client.create_dept is '创建部门'; comment on column sys_client.create_by is '创建者'; comment on column sys_client.create_time is '创建时间'; diff --git a/script/sql/update/sqlserver/update_5.0-5.1.sql b/script/sql/update/sqlserver/update_5.0-5.1.sql index bde3813ac..81434a394 100644 --- a/script/sql/update/sqlserver/update_5.0-5.1.sql +++ b/script/sql/update/sqlserver/update_5.0-5.1.sql @@ -188,7 +188,7 @@ EXEC sys.sp_addextendedproperty 'COLUMN', N'oauth_token_secret' GO EXEC sys.sp_addextendedproperty - 'MS_Description', N'删除标志(0代表存在 2代表删除)' , + 'MS_Description', N'删除标志(0代表存在 1代表删除)' , 'SCHEMA', N'dbo', 'TABLE', N'sys_social', 'COLUMN', N'del_flag' @@ -304,7 +304,7 @@ EXEC sp_addextendedproperty 'COLUMN', N'status' GO EXEC sp_addextendedproperty -'MS_Description', N'删除标志(0代表存在 2代表删除)', +'MS_Description', N'删除标志(0代表存在 1代表删除)', 'SCHEMA', N'dbo', 'TABLE', N'sys_client', 'COLUMN', N'del_flag' diff --git a/script/sql/update/update_5.0-5.1.sql b/script/sql/update/update_5.0-5.1.sql index 871bda38f..4ebd71cde 100644 --- a/script/sql/update/update_5.0-5.1.sql +++ b/script/sql/update/update_5.0-5.1.sql @@ -36,7 +36,7 @@ create table sys_social create_time datetime comment '创建时间', update_by bigint(20) comment '更新者', update_time datetime comment '更新时间', - del_flag char(1) default '0' comment '删除标志(0代表存在 2代表删除)', + del_flag char(1) default '0' comment '删除标志(0代表存在 1代表删除)', PRIMARY KEY (id) ) engine=innodb comment = '社会化关系表'; @@ -55,7 +55,7 @@ create table sys_client ( active_timeout int(11) default 1800 comment 'token活跃超时时间', timeout int(11) default 604800 comment 'token固定超时', status char(1) default '0' comment '状态(0正常 1停用)', - del_flag char(1) default '0' comment '删除标志(0代表存在 2代表删除)', + del_flag char(1) default '0' comment '删除标志(0代表存在 1代表删除)', create_dept bigint(20) default null comment '创建部门', create_by bigint(20) default null comment '创建者', create_time datetime default null comment '创建时间', -- Gitee From 197253717689a5868d3cef3b79d67842b1987e98 Mon Sep 17 00:00:00 2001 From: AprilWind <2100166581@qq.com> Date: Wed, 15 Jan 2025 20:50:56 +0800 Subject: [PATCH 376/540] =?UTF-8?q?update=20=E5=9B=9E=E9=80=80update.sql?= =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- script/sql/update/oracle/update_5.0-5.1.sql | 4 ++-- script/sql/update/postgres/update_5.0-5.1.sql | 4 ++-- script/sql/update/sqlserver/update_5.0-5.1.sql | 4 ++-- script/sql/update/update_5.0-5.1.sql | 4 ++-- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/script/sql/update/oracle/update_5.0-5.1.sql b/script/sql/update/oracle/update_5.0-5.1.sql index 5341fecf9..09cfae825 100644 --- a/script/sql/update/oracle/update_5.0-5.1.sql +++ b/script/sql/update/oracle/update_5.0-5.1.sql @@ -71,7 +71,7 @@ comment on column sys_social.create_by is '创建者'; comment on column sys_social.create_time is '创建时间'; comment on column sys_social.update_by is '更新者'; comment on column sys_social.update_time is '更新时间'; -comment on column sys_social.del_flag is '删除标志(0代表存在 1代表删除)'; +comment on column sys_social.del_flag is '删除标志(0代表存在 2代表删除)'; -- ---------------------------- @@ -107,7 +107,7 @@ comment on column sys_client.device_type is '设备类型'; comment on column sys_client.active_timeout is 'token活跃超时时间'; comment on column sys_client.timeout is 'token固定超时'; comment on column sys_client.status is '状态(0正常 1停用)'; -comment on column sys_client.del_flag is '删除标志(0代表存在 1代表删除)'; +comment on column sys_client.del_flag is '删除标志(0代表存在 2代表删除)'; comment on column sys_client.create_dept is '创建部门'; comment on column sys_client.create_by is '创建者'; comment on column sys_client.create_time is '创建时间'; diff --git a/script/sql/update/postgres/update_5.0-5.1.sql b/script/sql/update/postgres/update_5.0-5.1.sql index 14d7eb693..f5f0a5c7a 100644 --- a/script/sql/update/postgres/update_5.0-5.1.sql +++ b/script/sql/update/postgres/update_5.0-5.1.sql @@ -70,7 +70,7 @@ comment on column sys_social.create_by is '创建者'; comment on column sys_social.create_time is '创建时间'; comment on column sys_social.update_by is '更新者'; comment on column sys_social.update_time is '更新时间'; -comment on column sys_social.del_flag is '删除标志(0代表存在 1代表删除)'; +comment on column sys_social.del_flag is '删除标志(0代表存在 2代表删除)'; -- ---------------------------- @@ -106,7 +106,7 @@ comment on column sys_client.device_type is '设备类型'; comment on column sys_client.active_timeout is 'token活跃超时时间'; comment on column sys_client.timeout is 'token固定超时'; comment on column sys_client.status is '状态(0正常 1停用)'; -comment on column sys_client.del_flag is '删除标志(0代表存在 1代表删除)'; +comment on column sys_client.del_flag is '删除标志(0代表存在 2代表删除)'; comment on column sys_client.create_dept is '创建部门'; comment on column sys_client.create_by is '创建者'; comment on column sys_client.create_time is '创建时间'; diff --git a/script/sql/update/sqlserver/update_5.0-5.1.sql b/script/sql/update/sqlserver/update_5.0-5.1.sql index 81434a394..bde3813ac 100644 --- a/script/sql/update/sqlserver/update_5.0-5.1.sql +++ b/script/sql/update/sqlserver/update_5.0-5.1.sql @@ -188,7 +188,7 @@ EXEC sys.sp_addextendedproperty 'COLUMN', N'oauth_token_secret' GO EXEC sys.sp_addextendedproperty - 'MS_Description', N'删除标志(0代表存在 1代表删除)' , + 'MS_Description', N'删除标志(0代表存在 2代表删除)' , 'SCHEMA', N'dbo', 'TABLE', N'sys_social', 'COLUMN', N'del_flag' @@ -304,7 +304,7 @@ EXEC sp_addextendedproperty 'COLUMN', N'status' GO EXEC sp_addextendedproperty -'MS_Description', N'删除标志(0代表存在 1代表删除)', +'MS_Description', N'删除标志(0代表存在 2代表删除)', 'SCHEMA', N'dbo', 'TABLE', N'sys_client', 'COLUMN', N'del_flag' diff --git a/script/sql/update/update_5.0-5.1.sql b/script/sql/update/update_5.0-5.1.sql index 4ebd71cde..871bda38f 100644 --- a/script/sql/update/update_5.0-5.1.sql +++ b/script/sql/update/update_5.0-5.1.sql @@ -36,7 +36,7 @@ create table sys_social create_time datetime comment '创建时间', update_by bigint(20) comment '更新者', update_time datetime comment '更新时间', - del_flag char(1) default '0' comment '删除标志(0代表存在 1代表删除)', + del_flag char(1) default '0' comment '删除标志(0代表存在 2代表删除)', PRIMARY KEY (id) ) engine=innodb comment = '社会化关系表'; @@ -55,7 +55,7 @@ create table sys_client ( active_timeout int(11) default 1800 comment 'token活跃超时时间', timeout int(11) default 604800 comment 'token固定超时', status char(1) default '0' comment '状态(0正常 1停用)', - del_flag char(1) default '0' comment '删除标志(0代表存在 1代表删除)', + del_flag char(1) default '0' comment '删除标志(0代表存在 2代表删除)', create_dept bigint(20) default null comment '创建部门', create_by bigint(20) default null comment '创建者', create_time datetime default null comment '创建时间', -- Gitee From fe5a1f358d1e8cd200d1b76df6fecba8610209af Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 16 Jan 2025 09:34:25 +0800 Subject: [PATCH 377/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E6=9B=B4?= =?UTF-8?q?=E6=AD=A3=E7=B1=BB=E5=91=BD=E5=90=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/dromara/common/social/topiam/AuthTopIamRequest.java | 2 +- .../topiam/{AuthTopiamSource.java => AuthTopIamSource.java} | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) rename ruoyi-common/ruoyi-common-social/src/main/java/org/dromara/common/social/topiam/{AuthTopiamSource.java => AuthTopIamSource.java} (95%) diff --git a/ruoyi-common/ruoyi-common-social/src/main/java/org/dromara/common/social/topiam/AuthTopIamRequest.java b/ruoyi-common/ruoyi-common-social/src/main/java/org/dromara/common/social/topiam/AuthTopIamRequest.java index 31bb955d4..080c97a93 100644 --- a/ruoyi-common/ruoyi-common-social/src/main/java/org/dromara/common/social/topiam/AuthTopIamRequest.java +++ b/ruoyi-common/ruoyi-common-social/src/main/java/org/dromara/common/social/topiam/AuthTopIamRequest.java @@ -19,7 +19,7 @@ import me.zhyd.oauth.utils.UrlBuilder; import org.dromara.common.core.utils.SpringUtils; import org.dromara.common.json.utils.JsonUtils; -import static org.dromara.common.social.topiam.AuthTopiamSource.TOPIAM; +import static org.dromara.common.social.topiam.AuthTopIamSource.TOPIAM; /** * TopIAM 认证请求 diff --git a/ruoyi-common/ruoyi-common-social/src/main/java/org/dromara/common/social/topiam/AuthTopiamSource.java b/ruoyi-common/ruoyi-common-social/src/main/java/org/dromara/common/social/topiam/AuthTopIamSource.java similarity index 95% rename from ruoyi-common/ruoyi-common-social/src/main/java/org/dromara/common/social/topiam/AuthTopiamSource.java rename to ruoyi-common/ruoyi-common-social/src/main/java/org/dromara/common/social/topiam/AuthTopIamSource.java index e47d6c640..852d7f5cc 100644 --- a/ruoyi-common/ruoyi-common-social/src/main/java/org/dromara/common/social/topiam/AuthTopiamSource.java +++ b/ruoyi-common/ruoyi-common-social/src/main/java/org/dromara/common/social/topiam/AuthTopIamSource.java @@ -9,7 +9,7 @@ import me.zhyd.oauth.request.AuthDefaultRequest; * @author xlsea * @since 2024-01-06 */ -public enum AuthTopiamSource implements AuthSource { +public enum AuthTopIamSource implements AuthSource { /** * 测试 -- Gitee From 6bc2d9d4a761191d149a9902c6ea6fafd7030c85 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 16 Jan 2025 10:23:55 +0800 Subject: [PATCH 378/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E5=8D=87?= =?UTF-8?q?=E7=BA=A7sqlserver=20warmflow=20sql=E8=84=9A=E6=9C=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sql/sqlserver/sqlserver_ry_workflow.sql | 20 +++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/script/sql/sqlserver/sqlserver_ry_workflow.sql b/script/sql/sqlserver/sqlserver_ry_workflow.sql index 478dc869b..ea4b7205a 100644 --- a/script/sql/sqlserver/sqlserver_ry_workflow.sql +++ b/script/sql/sqlserver/sqlserver_ry_workflow.sql @@ -458,6 +458,7 @@ CREATE TABLE flow_instance ( variable nvarchar(max) NULL, flow_status nvarchar(20) NOT NULL, activity_status tinyint DEFAULT('1') NULL, + def_json nvarchar(max) NULL, create_by nvarchar(64) NULL, create_time datetime2(7) NULL, update_time datetime2(7) NULL, @@ -535,6 +536,13 @@ EXEC sp_addextendedproperty 'COLUMN', N'activity_status' GO +EXEC sp_addextendedproperty +'MS_Description', N'流程定义json', +'SCHEMA', N'dbo', +'TABLE', N'flow_instance', +'COLUMN', N'def_json' +GO + EXEC sp_addextendedproperty 'MS_Description', N'创建者', 'SCHEMA', N'dbo', @@ -698,8 +706,8 @@ CREATE TABLE flow_his_task ( definition_id bigint NOT NULL, instance_id bigint NOT NULL, task_id bigint NOT NULL, - node_code nvarchar(100) NULL, - node_name nvarchar(100) NULL, + node_code nvarchar(200) NULL, + node_name nvarchar(200) NULL, node_type tinyint NULL, target_node_code nvarchar(100) NULL, target_node_name nvarchar(100) NULL, @@ -711,6 +719,7 @@ CREATE TABLE flow_his_task ( form_custom nchar(1) DEFAULT('N') NULL, form_path nvarchar(100) NULL, message nvarchar(500) NULL, + variable nvarchar(max) NULL, ext nvarchar(500) NULL, create_time datetime2(7) NULL, update_time datetime2(7) NULL, @@ -842,6 +851,13 @@ EXEC sp_addextendedproperty 'COLUMN', N'message' GO +EXEC sp_addextendedproperty +'MS_Description', N'任务变量', +'SCHEMA', N'dbo', +'TABLE', N'flow_his_task', +'COLUMN', N'variable' +GO + EXEC sp_addextendedproperty 'MS_Description', N'业务详情 存业务表对象json字符串', 'SCHEMA', N'dbo', -- Gitee From 875c9fa77ca33b9ad864e6a865114d847515faad Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 16 Jan 2025 11:00:38 +0800 Subject: [PATCH 379/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20=E5=8D=87?= =?UTF-8?q?=E7=BA=A7=E4=B9=8B=E5=90=8E=E9=83=A8=E7=BD=B2=E5=BC=82=E5=B8=B8?= =?UTF-8?q?=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/org/dromara/workflow/utils/WorkflowUtils.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/utils/WorkflowUtils.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/utils/WorkflowUtils.java index 0bf8f429b..e48ffc820 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/utils/WorkflowUtils.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/utils/WorkflowUtils.java @@ -187,7 +187,7 @@ public class WorkflowUtils { AssertUtil.isTrue(CollUtil.isEmpty(flowNodes), ExceptionCons.NOT_PUBLISH_NODE); Node startNode = flowNodes.stream().filter(t -> NodeType.isStart(t.getNodeType())).findFirst().orElse(null); AssertUtil.isNull(startNode, ExceptionCons.LOST_START_NODE); - Node nextNode = NODE_SERVICE.getNextNode(definitionId, startNode.getNodeCode(), null, SkipType.NONE.getKey()); + Node nextNode = NODE_SERVICE.getNextNode(definitionId, startNode.getNodeCode(), null, SkipType.PASS.getKey()); return nextNode.getNodeCode(); } -- Gitee From 9d8b9fabbea813e980d7f8e67ee633a55d205955 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 16 Jan 2025 11:50:19 +0800 Subject: [PATCH 380/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20ws?= =?UTF-8?q?=E6=A8=A1=E5=9D=97=E6=9B=BF=E6=8D=A2session=E7=9A=84=E6=97=B6?= =?UTF-8?q?=E5=80=99=E5=85=B3=E9=97=ADsession=E8=BF=9E=E6=8E=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/websocket/holder/WebSocketSessionHolder.java | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/ruoyi-common/ruoyi-common-websocket/src/main/java/org/dromara/common/websocket/holder/WebSocketSessionHolder.java b/ruoyi-common/ruoyi-common-websocket/src/main/java/org/dromara/common/websocket/holder/WebSocketSessionHolder.java index 368801c3d..9c2372b85 100644 --- a/ruoyi-common/ruoyi-common-websocket/src/main/java/org/dromara/common/websocket/holder/WebSocketSessionHolder.java +++ b/ruoyi-common/ruoyi-common-websocket/src/main/java/org/dromara/common/websocket/holder/WebSocketSessionHolder.java @@ -2,6 +2,7 @@ package org.dromara.common.websocket.holder; import lombok.AccessLevel; import lombok.NoArgsConstructor; +import org.springframework.web.socket.CloseStatus; import org.springframework.web.socket.WebSocketSession; import java.util.Map; @@ -25,6 +26,7 @@ public class WebSocketSessionHolder { * @param session 要添加的WebSocket会话 */ public static void addSession(Long sessionKey, WebSocketSession session) { + removeSession(sessionKey); USER_SESSION_MAP.put(sessionKey, session); } @@ -34,8 +36,10 @@ public class WebSocketSessionHolder { * @param sessionKey 要移除的会话键 */ public static void removeSession(Long sessionKey) { - if (USER_SESSION_MAP.containsKey(sessionKey)) { - USER_SESSION_MAP.remove(sessionKey); + WebSocketSession session = USER_SESSION_MAP.remove(sessionKey); + try { + session.close(CloseStatus.BAD_DATA); + } catch (Exception ignored) { } } -- Gitee From 69b95b3e7a3a1438abb03c1c5981f6cc19c22663 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 16 Jan 2025 17:56:29 +0800 Subject: [PATCH 381/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E9=BB=98?= =?UTF-8?q?=E8=AE=A4=E6=B3=A8=E9=87=8A=E6=8E=89slave=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E6=BA=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/resources/application-dev.yml | 16 ++++++++-------- .../src/main/resources/application-prod.yml | 16 ++++++++-------- 2 files changed, 16 insertions(+), 16 deletions(-) diff --git a/ruoyi-admin/src/main/resources/application-dev.yml b/ruoyi-admin/src/main/resources/application-dev.yml index 6a804a947..63b76e951 100644 --- a/ruoyi-admin/src/main/resources/application-dev.yml +++ b/ruoyi-admin/src/main/resources/application-dev.yml @@ -52,14 +52,14 @@ spring: url: jdbc:mysql://localhost:3306/ry-vue?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&autoReconnect=true&rewriteBatchedStatements=true&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true username: root password: root - # 从库数据源 - slave: - lazy: true - type: ${spring.datasource.type} - driverClassName: com.mysql.cj.jdbc.Driver - url: jdbc:mysql://localhost:3306/ry-vue?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&autoReconnect=true&rewriteBatchedStatements=true&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true - username: - password: +# # 从库数据源 +# slave: +# lazy: true +# type: ${spring.datasource.type} +# driverClassName: com.mysql.cj.jdbc.Driver +# url: jdbc:mysql://localhost:3306/ry-vue?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&autoReconnect=true&rewriteBatchedStatements=true&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true +# username: +# password: # oracle: # type: ${spring.datasource.type} # driverClassName: oracle.jdbc.OracleDriver diff --git a/ruoyi-admin/src/main/resources/application-prod.yml b/ruoyi-admin/src/main/resources/application-prod.yml index 15f2c5243..3e41f84c0 100644 --- a/ruoyi-admin/src/main/resources/application-prod.yml +++ b/ruoyi-admin/src/main/resources/application-prod.yml @@ -55,14 +55,14 @@ spring: url: jdbc:mysql://localhost:3306/ry-vue?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&autoReconnect=true&rewriteBatchedStatements=true&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true username: root password: root - # 从库数据源 - slave: - lazy: true - type: ${spring.datasource.type} - driverClassName: com.mysql.cj.jdbc.Driver - url: jdbc:mysql://localhost:3306/ry-vue?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&autoReconnect=true&rewriteBatchedStatements=true&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true - username: - password: +# # 从库数据源 +# slave: +# lazy: true +# type: ${spring.datasource.type} +# driverClassName: com.mysql.cj.jdbc.Driver +# url: jdbc:mysql://localhost:3306/ry-vue?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&autoReconnect=true&rewriteBatchedStatements=true&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true +# username: +# password: # oracle: # type: ${spring.datasource.type} # driverClassName: oracle.jdbc.OracleDriver -- Gitee From 79ec3fd2c9e871b1c7314d1819d450c52faaff93 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 17 Jan 2025 09:29:22 +0800 Subject: [PATCH 382/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E5=8D=87?= =?UTF-8?q?=E7=BA=A7warmflow=201.6.0-m5=20=E8=A7=A3=E5=86=B3=E7=9B=91?= =?UTF-8?q?=E5=90=AC=E5=99=A8=E9=94=99=E8=AF=AF=E8=A7=A6=E5=8F=91=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 82ed3a855..1d6b01767 100644 --- a/pom.xml +++ b/pom.xml @@ -50,7 +50,7 @@ 8.7.2-20241022 - 1.6.0-m4 + 1.6.0-m5 3.2.2 -- Gitee From 0ae521a7dc948e3589104f8b48ad49b77ff9d066 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 17 Jan 2025 10:42:31 +0800 Subject: [PATCH 383/540] update springboot 3.3.5 => 3.4.1 update springdoc 2.7.0 => 2.8.3 update mybatis-plus 3.5.9 => 3.5.10 update hutool 5.8.31 => 5.8.35 update springboot-admin 3.3.4 => 3.4.1 update redisson 3.39.0 => 3.43.0 update mapstruct-plus 1.4.5 => 1.4.6 update lombok 1.18.34 => 1.18.36 update anyline 20241022 => 20250101 update snailjob beta1 => beta1.1 --- pom.xml | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/pom.xml b/pom.xml index 1d6b01767..32ea9a496 100644 --- a/pom.xml +++ b/pom.xml @@ -14,27 +14,27 @@ 5.2.3 - 3.3.5 + 3.4.1 UTF-8 UTF-8 17 3.5.16 - 2.7.0 + 2.8.3 0.15.0 4.0.3 2.3 1.39.0 - 3.5.9 + 3.5.10 3.9.1 - 5.8.31 - 3.3.4 - 3.39.0 + 5.8.35 + 3.4.1 + 3.43.0 2.2.7 4.3.1 - 1.3.0-beta1 - 1.4.5 + 1.3.0-beta1.1 + 1.4.6 0.2.0 - 1.18.34 + 1.18.36 1.76 1.16.7 @@ -48,7 +48,7 @@ 1.2.83 - 8.7.2-20241022 + 8.7.2-20250101 1.6.0-m5 -- Gitee From 8c57d694c50388f792ac020ca85674aa064b2ee6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 17 Jan 2025 10:49:32 +0800 Subject: [PATCH 384/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E7=BC=96?= =?UTF-8?q?=E8=AF=91=E8=AD=A6=E5=91=8A=E9=97=AE=E9=A2=98=20=E6=9B=BF?= =?UTF-8?q?=E6=8D=A2=E8=BF=87=E6=9C=9F=E6=96=B9=E6=B3=95=E4=B8=8E=E7=B1=BB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/org/dromara/common/core/utils/DateUtils.java | 7 ++++--- .../java/org/dromara/common/core/utils/StringUtils.java | 7 ++++--- .../main/java/org/dromara/common/log/aspect/LogAspect.java | 3 +-- .../java/org/dromara/common/social/utils/SocialUtils.java | 2 +- .../web/interceptor/PlusWebInvokeTimeInterceptor.java | 2 +- 5 files changed, 11 insertions(+), 10 deletions(-) diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/DateUtils.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/DateUtils.java index 88cdbbc72..41d0f6c25 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/DateUtils.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/DateUtils.java @@ -1,7 +1,5 @@ package org.dromara.common.core.utils; -import lombok.AccessLevel; -import lombok.NoArgsConstructor; import org.apache.commons.lang3.time.DateFormatUtils; import org.dromara.common.core.enums.FormatsType; import org.dromara.common.core.exception.ServiceException; @@ -18,13 +16,16 @@ import java.util.concurrent.TimeUnit; * * @author ruoyi */ -@NoArgsConstructor(access = AccessLevel.PRIVATE) public class DateUtils extends org.apache.commons.lang3.time.DateUtils { private static final String[] PARSE_PATTERNS = { "yyyy-MM-dd", "yyyy-MM-dd HH:mm:ss", "yyyy-MM-dd HH:mm", "yyyy-MM", "yyyy/MM/dd", "yyyy/MM/dd HH:mm:ss", "yyyy/MM/dd HH:mm", "yyyy/MM", "yyyy.MM.dd", "yyyy.MM.dd HH:mm:ss", "yyyy.MM.dd HH:mm", "yyyy.MM"}; + @Deprecated + private DateUtils() { + } + /** * 获取当前日期和时间 * diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/StringUtils.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/StringUtils.java index 897ab920a..506bf08d5 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/StringUtils.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/StringUtils.java @@ -4,8 +4,6 @@ import cn.hutool.core.collection.CollUtil; import cn.hutool.core.convert.Convert; import cn.hutool.core.lang.Validator; import cn.hutool.core.util.StrUtil; -import lombok.AccessLevel; -import lombok.NoArgsConstructor; import org.springframework.util.AntPathMatcher; import java.util.*; @@ -17,13 +15,16 @@ import java.util.stream.Collectors; * * @author Lion Li */ -@NoArgsConstructor(access = AccessLevel.PRIVATE) public class StringUtils extends org.apache.commons.lang3.StringUtils { public static final String SEPARATOR = ","; public static final String SLASH = "/"; + @Deprecated + private StringUtils() { + } + /** * 获取参数不为空值 * diff --git a/ruoyi-common/ruoyi-common-log/src/main/java/org/dromara/common/log/aspect/LogAspect.java b/ruoyi-common/ruoyi-common-log/src/main/java/org/dromara/common/log/aspect/LogAspect.java index 71b3790b7..8ab2719e1 100644 --- a/ruoyi-common/ruoyi-common-log/src/main/java/org/dromara/common/log/aspect/LogAspect.java +++ b/ruoyi-common/ruoyi-common-log/src/main/java/org/dromara/common/log/aspect/LogAspect.java @@ -113,13 +113,12 @@ public class LogAspect { // 设置消耗时间 StopWatch stopWatch = KEY_CACHE.get(); stopWatch.stop(); - operLog.setCostTime(stopWatch.getTime()); + operLog.setCostTime(stopWatch.getDuration().toMillis()); // 发布事件保存数据库 SpringUtils.context().publishEvent(operLog); } catch (Exception exp) { // 记录本地异常日志 log.error("异常信息:{}", exp.getMessage()); - exp.printStackTrace(); } finally { KEY_CACHE.remove(); } diff --git a/ruoyi-common/ruoyi-common-social/src/main/java/org/dromara/common/social/utils/SocialUtils.java b/ruoyi-common/ruoyi-common-social/src/main/java/org/dromara/common/social/utils/SocialUtils.java index 357256d52..db696e515 100644 --- a/ruoyi-common/ruoyi-common-social/src/main/java/org/dromara/common/social/utils/SocialUtils.java +++ b/ruoyi-common/ruoyi-common-social/src/main/java/org/dromara/common/social/utils/SocialUtils.java @@ -59,7 +59,7 @@ public class SocialUtils { case "microsoft" -> new AuthMicrosoftRequest(builder.build(), STATE_CACHE); case "renren" -> new AuthRenrenRequest(builder.build(), STATE_CACHE); case "stack_overflow" -> new AuthStackOverflowRequest(builder.stackOverflowKey(obj.getStackOverflowKey()).build(), STATE_CACHE); - case "huawei" -> new AuthHuaweiRequest(builder.build(), STATE_CACHE); + case "huawei" -> new AuthHuaweiV3Request(builder.build(), STATE_CACHE); case "wechat_enterprise" -> new AuthWeChatEnterpriseQrcodeRequest(builder.agentId(obj.getAgentId()).build(), STATE_CACHE); case "gitlab" -> new AuthGitlabRequest(builder.build(), STATE_CACHE); case "wechat_mp" -> new AuthWeChatMpRequest(builder.build(), STATE_CACHE); diff --git a/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/interceptor/PlusWebInvokeTimeInterceptor.java b/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/interceptor/PlusWebInvokeTimeInterceptor.java index 7cb6b7877..f25601572 100644 --- a/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/interceptor/PlusWebInvokeTimeInterceptor.java +++ b/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/interceptor/PlusWebInvokeTimeInterceptor.java @@ -67,7 +67,7 @@ public class PlusWebInvokeTimeInterceptor implements HandlerInterceptor { StopWatch stopWatch = KEY_CACHE.get(); if (ObjectUtil.isNotNull(stopWatch)) { stopWatch.stop(); - log.info("[PLUS]结束请求 => URL[{}],耗时:[{}]毫秒", request.getMethod() + " " + request.getRequestURI(), stopWatch.getTime()); + log.info("[PLUS]结束请求 => URL[{}],耗时:[{}]毫秒", request.getMethod() + " " + request.getRequestURI(), stopWatch.getDuration().toMillis()); KEY_CACHE.remove(); } } -- Gitee From a2714fb9f7ffb84d850d01a2f9acd1cb27c58fdb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=A7=8B=E8=BE=9E=E6=9C=AA=E5=AF=92?= <545073804@qq.com> Date: Fri, 17 Jan 2025 07:55:17 +0000 Subject: [PATCH 385/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20OSS?= =?UTF-8?q?=E7=A7=81=E6=9C=89=E6=A1=B6=E7=9A=84=E4=B8=B4=E6=97=B6URL?= =?UTF-8?q?=E8=8E=B7=E5=8F=96=E6=96=B9=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 秋辞未寒 <545073804@qq.com> --- .../main/java/org/dromara/common/oss/core/OssClient.java | 8 ++++---- .../dromara/system/service/impl/SysOssServiceImpl.java | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java b/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java index 1261b4777..59c599bd0 100644 --- a/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java +++ b/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java @@ -284,13 +284,13 @@ public class OssClient { /** * 获取私有URL链接 * - * @param objectKey 对象KEY - * @param second 授权时间 + * @param objectKey 对象KEY + * @param expiredTime 链接授权到期时间 */ - public String getPrivateUrl(String objectKey, Integer second) { + public String getPrivateUrl(String objectKey, Duration expiredTime) { // 使用 AWS S3 预签名 URL 的生成器 获取对象的预签名 URL URL url = presigner.presignGetObject( - x -> x.signatureDuration(Duration.ofSeconds(second)) + x -> x.signatureDuration(expiredTime) .getObjectRequest( y -> y.bucket(properties.getBucketName()) .key(objectKey) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssServiceImpl.java index f58f06166..496113742 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssServiceImpl.java @@ -262,7 +262,7 @@ public class SysOssServiceImpl implements ISysOssService, OssService { OssClient storage = OssFactory.instance(oss.getService()); // 仅修改桶类型为 private 的URL,临时URL时长为120s if (AccessPolicyType.PRIVATE == storage.getAccessPolicy()) { - oss.setUrl(storage.getPrivateUrl(oss.getFileName(), 120)); + oss.setUrl(storage.getPrivateUrl(oss.getFileName(), Duration.ofSeconds(120))); } return oss; } -- Gitee From b38ca837d621c8f340794d737aa54b549e1fbfdf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 17 Jan 2025 15:29:51 +0800 Subject: [PATCH 386/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E7=BB=91?= =?UTF-8?q?=E5=AE=9A=E4=B8=89=E6=96=B9=E4=B8=8E=E8=A7=A3=E7=BB=91=E4=B8=89?= =?UTF-8?q?=E6=96=B9=E6=A0=A1=E9=AA=8Ctoken=E6=98=AF=E5=90=A6=E5=AD=98?= =?UTF-8?q?=E5=9C=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/dromara/web/controller/AuthController.java | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/ruoyi-admin/src/main/java/org/dromara/web/controller/AuthController.java b/ruoyi-admin/src/main/java/org/dromara/web/controller/AuthController.java index c1ffef3d3..7fbc57f95 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/controller/AuthController.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/controller/AuthController.java @@ -2,6 +2,7 @@ package org.dromara.web.controller; import cn.dev33.satoken.annotation.SaIgnore; import cn.dev33.satoken.exception.NotLoginException; +import cn.dev33.satoken.stp.StpUtil; import cn.hutool.core.codec.Base64; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.util.ObjectUtil; @@ -111,7 +112,7 @@ public class AuthController { } /** - * 第三方登录请求 + * 获取跳转URL * * @param source 登录来源 * @return 结果 @@ -133,13 +134,15 @@ public class AuthController { } /** - * 第三方登录回调业务处理 绑定授权 + * 前端回调绑定授权(需要token) * * @param loginBody 请求体 * @return 结果 */ @PostMapping("/social/callback") public R socialCallback(@RequestBody SocialLoginBody loginBody) { + // 校验token + StpUtil.checkLogin(); // 获取第三方登录信息 AuthResponse response = SocialUtils.loginAuth( loginBody.getSource(), loginBody.getSocialCode(), @@ -155,12 +158,14 @@ public class AuthController { /** - * 取消授权 + * 取消授权(需要token) * * @param socialId socialId */ @DeleteMapping(value = "/unlock/{socialId}") public R unlockSocial(@PathVariable Long socialId) { + // 校验token + StpUtil.checkLogin(); Boolean rows = socialUserService.deleteWithValidById(socialId); return rows ? R.ok() : R.fail("取消授权失败"); } -- Gitee From ce7f5121b0adb5140631d7efae45da50d0f5b6ef Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 17 Jan 2025 15:30:08 +0800 Subject: [PATCH 387/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E6=9F=A5?= =?UTF-8?q?=E8=AF=A2oss=E5=9B=BE=E7=89=87url=E6=8E=A5=E5=8F=A3=E6=94=B9?= =?UTF-8?q?=E4=B8=BAquery=E6=A0=87=E8=AF=86=E7=AC=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/dromara/system/controller/system/SysOssController.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysOssController.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysOssController.java index 73ada3b84..81200c115 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysOssController.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysOssController.java @@ -53,7 +53,7 @@ public class SysOssController extends BaseController { * * @param ossIds OSS对象ID串 */ - @SaCheckPermission("system:oss:list") + @SaCheckPermission("system:oss:query") @GetMapping("/listByIds/{ossIds}") public R> listByIds(@NotEmpty(message = "主键不能为空") @PathVariable Long[] ossIds) { -- Gitee From a6fc47b4f6078571093c957f2ea02a30b080f4bb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 17 Jan 2025 15:59:43 +0800 Subject: [PATCH 388/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20=E9=83=A8?= =?UTF-8?q?=E7=BD=B2=E5=B7=A5=E4=BD=9C=E6=B5=81=E7=BC=BA=E5=B0=91=E5=AD=97?= =?UTF-8?q?=E4=BD=93=E6=96=87=E4=BB=B6=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ruoyi-admin/Dockerfile | 2 ++ ruoyi-admin/zhFonts/.uuid | 1 + ruoyi-admin/zhFonts/SIMSUN.TTC | Bin 0 -> 18008680 bytes ruoyi-admin/zhFonts/fonts.dir | 4 ++++ ruoyi-admin/zhFonts/fonts.scale | 4 ++++ 5 files changed, 11 insertions(+) create mode 100644 ruoyi-admin/zhFonts/.uuid create mode 100644 ruoyi-admin/zhFonts/SIMSUN.TTC create mode 100644 ruoyi-admin/zhFonts/fonts.dir create mode 100644 ruoyi-admin/zhFonts/fonts.scale diff --git a/ruoyi-admin/Dockerfile b/ruoyi-admin/Dockerfile index e0be8aeef..b489ab57c 100644 --- a/ruoyi-admin/Dockerfile +++ b/ruoyi-admin/Dockerfile @@ -16,6 +16,8 @@ ENV SERVER_PORT=8080 LANG=C.UTF-8 LC_ALL=C.UTF-8 JAVA_OPTS="" EXPOSE ${SERVER_PORT} ADD ./target/ruoyi-admin.jar ./app.jar +# 工作流字体文件 +ADD ./zhFonts/ /usr/share/fonts/zhFonts/ SHELL ["/bin/bash", "-c"] diff --git a/ruoyi-admin/zhFonts/.uuid b/ruoyi-admin/zhFonts/.uuid new file mode 100644 index 000000000..cee5cdd7c --- /dev/null +++ b/ruoyi-admin/zhFonts/.uuid @@ -0,0 +1 @@ +3f2ee348-0303-40ca-bf03-03f48d2d2141 \ No newline at end of file diff --git a/ruoyi-admin/zhFonts/SIMSUN.TTC b/ruoyi-admin/zhFonts/SIMSUN.TTC new file mode 100644 index 0000000000000000000000000000000000000000..6ca8de3dab297b4a66a6cf57e1992148d768191a GIT binary patch literal 18008680 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

k(n<*+CMg;C|WZwB8v_vWAFJ|5v|QWpFNPM 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

kn;ISH!aHI7HdY5F9T@}3b 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¨C6 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

-+4M=ANO1Cz;Od&) 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

Cw#IP^W^9<7zJwZR~X5YWD)*t5W9? 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Μ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∋yS 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

T%3PbriKB0>IyX7~ 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%0A{C?NQn&VI$))qnFh-G|<} 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

4@i$8lp4)6HSo6jveOD%j)+9&sp6< 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

#{$nxw~lzy(##ZA+%1j>CUH4c-PU7 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�gSHMO~%di+C1 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

Hi?1WXS^{9T}N8U<%0o!K$r^~#&l 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 z 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 z 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%0A7s3$mHGkv0eJ$TmFK3aMhIKt+s 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 z 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 KkOP&|mn1(_LM2 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%0A_b#%yNHNOqpU8cqxzpg#4! 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

M|mZ>^!{ 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

}; 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
$NV2iLpImc-R<4ZK!yaocY?S%PQ;2<6kB^kga@F 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�yZfVK2fv;+-V^QE- z9d9A?+Wu-9b`2Ec?v`zeybz31c`s9efLdDl?C6=q6GLj@4djlh7B{2n#-74kF@qpT~T!)7Lh!q?M84@B|RCt{XdE7`b!P z%Mmx;Pf^W>xkq(YMP7JeD0q{cW1uo$`8sUnjE8w*#6WPC3pu3~K%I(G$AqQ;rAhsN zuq4nNXzOy(l$%AJv)VWfa`X$ol--SF&lXG%VV`LWmlK>YnsQ}VN*4A*#F1UCmzxZ7ExKSu$D!s zqmUQge_-k7%{C_>o4~9H_&FtfLRN?>I5`{<*#_?_YJ19Lu-n=Q`ZFGK)QTk1yB4p2 zLF;v?S2Vwvsj&q+ZVJ@om(x2VKBZN9KMr8mZqm>zIh>1{?c?F431DPIZT0C0tav`X zDoIuwpj)aX#2@M1QSis%PSMuTb_;dSWfOQ_T5CQxD&$HPII}kTP?xb-Dz}aOGWZhh zat40`u+HGE^tMR9GB1{w=;pQwN|WA0zj)8x8Md#UG+__j)8bNErDs1VG^oADLO%R;X9C;erCmf-r3ptNGkW(rp{S@SeE4+Ww3j2p3*6_aqBwBD>OBn}NK zl&I#m5Aq8wuh6$9fATr{+Ea*KXHy?;iRvV)cK;Vtzkt2W?0@dM6g(ICY{a{;w12;$ zrEOC9+WuDzzd9}1H=3kFlagJzr?b?$1XJ*m)g7E4;(sarvi&LchdjBa~sJtf9XzT z*0*neDB$0Sy0pC-fSzJdW~enI~(X# ze{$CtBU_#(Hg6^Nzp{!fViD@nlf$i|IkSWKV8w9IY6vXLtsP)jt?4Iy1=N<{Kdt=j zee)Tw1Svrpk5;+P8xx!@YbD(GnQjXb8@Eh-M?;+chBB}8i08)JIn=-4%(fb(tDCz++dM)Cyn{KiUjuGxK!-+NgB_oK?sxZW`*=H!7jk`d+lUr z?t0EpQra@%k=_fh_|>JC47IPe)|e6dePYP1x5@HaljJo;sWXu-(N)>^BhNjlwbJGb zt=QR8Wqn9NKLs_F51G3IX@~;KN482Kg?Jf>^O6`=I{Le$5wL04CZF6$9*;CigB>&i z9fgFqEyL|ESl1_2xFX~wa=VgSEhG-3gq;*yqDV;YiURv~yR~{UW*IcMc*=VJ=y~?F zwR(`6IlNC>S-F)`QKSZam)dw!MSmTIFzpdPhJk-ii;&h3cwgAfA5fp>q}}$ipIB%GwYolGq8+*wqriS>x0HxDsb|1mci${8_bHSvUU9txH@=)2kr8tI(Y0edMEG8zTBl>YQ~I3 z1IR*0ST6W5{m01|*tJku8d6%(6ie{<)|4Kz0ap#V(F6;vM&v@^rWvS^!@o#E7^VB- zfw{t4yL(^nZR#~2`B_WARd{dD&I);T(yx2V)8qAZ80yP{|GV%-2n)%zF8-~?oSsH5 z1UcsFWSOmF(^QkIy!tgm(50^(+L;wqodyNr%P#|2GEmFM&C*>n-7naMmM*PiR8)pY z9rS~2Bbj*drmt5rp@%1Gq*yd9b$L>_L(k5m=Kb(dx*4sI3iZVNxYa5Kz;Du?Gj(>> zu5T*eew2Pvw__7<pPT5L87zsOkmCV0lIHOx5-** z3_UZUtJoE^!!gfk)iU!EBd(i1W{cHG=84MykOi^KNy_VF26Dw ztSpK-__(qq9;K++|JL`GK6;`%fc@+yi*p6xx+jJ_u0OmX+qGoEc-@@g&<8ew`OiL& z_+e0Wb@u=9^)BFTlvn=nNFK){CB!p|j01lfkH!*~&BYae1X_p# zq=mwM+m?kTfD_4zjAe(#lCTM(`D0tL8{5zX_}bl&Ch-LWfn}S^lBN4?mpG}@TJ=k@!ZIq!LI=lss^m?GPHIhE%_$w*m>51rynR?;2>ms+Tf z?WwQHIc>Js`j4?66Y1$u5hXf6g&FUx9t+2l0<1&_P z{PM79@RfoKD|M3VQ1EpBhf-f+kZi(OJla$^gk)AvrQYS}>6|c$qi<87x>HM|`z0d4391vZb%*lylb^Gg!WBvRa9I$RtxT8d!I-8T4(H z)Vg?&W(ryBM!LBwa}`Ok7FtS+j-Z4ST-QXOZr$2*AJr)PYBqi>O(VcevC*&P$Ceoii}w&lyC z&7B2XDhbF{e@XuKr!M*rRYjQ@VxuTE)7ALpXJB0g*3}*FvrfJL_IZaR@}ViyO7llN z7u2s#9|O|t`AW|1>fLd1MPDzxj2wt|eas;0IjcDv5_v)GDG@y~v~~ zNcIt%<9&*C7yndXwY|smu6i`x7tO|vrI)|e$l-@n7Cr7H3Y(YJVKL6&!?;La&pE0k#(8-vpGximzo;}U+itpeXp9gv&@oUZ6i=z$p&v4j& z%u9WVxU}g>mTYMv)RpCgDcYb?YSotVjvBL!Okd{3Lr)o9$aUDiumV)!LWRfRZLSV4e5>)g%g{J`~Yk`kA1N4Sx2Wk=}M@XVF ziNoKBT9AGVu-REKmN^f~Ii9t9`D6tzBQ8#`94~lVWGZzgjv>DFu@8HxmJYA?kU#`* zkKnX|r3KR`lYnU~?vC)K2bprt`;Qd?89gaR)mz)jS2(jaW;kPvc~i)Q>?9(U=qidn zG^9CyPON#j0ZDikF-@}N3y8x&+TjW*rr8@}ggt>xd2a4RbS9J_T7jxEo)IaO#q7hv zr&FDpy+-e*N&p(8n~`Knn#%n(6mG!juB29yroge2nqvYr4`?b)g#Ypt4WL@!&TOO$q>hsdln+SoRrvIA-D}R0I z_npe$oUVZnpn$tmKuM*n2Qa+x9;-|@Jr0Z|eoQ%QK(9USHv!p|Hc-(=ZwSa{r-D)& zt64YIT04;aedDH*DM%h7jQs%Of;LyY;@dky;4DweB)a8Hd1psd`NJ?!8W)%A8mM?N zFO0IZz29r849XIqEcWUBHRZiEk9zB+zMzGw=_zP5D6$L@@tA^^Ls__Ouvx8A?)Fne z(U_L7R-pJtYIcT0tj*u=?kw%qF_kenh`K11{(*usYE(kfHP!V5#F~fcfEfZ`3FJfm1tK6axM5Ae(ISJRMUtIB_D$m{Yz+*dz0W3( zTr%IS6ofZgYM5nGPn#0})Qyjq%e@>H*Oe@9L>lm;kXuw+!u|+JP*<(MjMxA+U~!T8 z{a$xvpUgGWTi`6~a@%`C*~N{qb>t@}Xs+Bd5IBfqVce({Ne}YXs_aKQTIEfjXH|BC zSDcwRO0k9c;jQI2IS0LP$EO+gClrQJBA7FMj>q13d0atgw}g~J`AM&I=CX)#%Afxl z!S=^wDBCDYq&6X}Ku%Sg74}O_-#Ks5nAmEkEM0>Rt*|AfbwKBh`L!_(v!%zgmV7#QkBg-A7Z(8q`=|)@IoIkeaj;h{#jqKHq26hV7sv&ftv2$c9ijHX<$sqLPrs!6xTJEexDRxX??}0#%AO zC!RAYBfsQEB+=iHkK7le=A<_l#FY5Faq!#CFPNxIC2r|0UdEF#@>@yI)!V1X8=WbQ!7g>B!hIIY+V7(TDAN92G!mZI87b0WpUY( z$+>b1!1|~4E(RjW{Bv~C7#`adKsrupbTc+}Yq`bQ?$czoO6}OVvwMw|*rsN5g--o& zO+N1I-bP7TDY?WIFWLh*5aw&D?Y$C025{;0IT#I_YJ~bA`sNySWUmm0@Y!AECr{&c zqV)z2BxEUe75k{KoOEUY@pJYkHe$WW1ElPnxcA$IFfKaT_6LiX6@JPpTU12ypo}0c z#;_xx$`IJwWm}~$gzP};5=BQy*dHw}*HmSc7F0&@W)|Z7Ogro>@%+J3x%1oZ6;BCW z*omBepL8-qE>0mE1lyGN)4zZA~i5$^-!`QH5)oB>jA-h{-n$2o;BLM@iLUX|>};DCZ=l^2IB~ z;QM!=dLyo@#JEhX2PE1}#+fJHuksq_jEkyp$Zm(3hJUbeZr{or^jD~hCDQeP%25x< z%SvLU;x=R0-Nd=Z263sN)K)tcDMvk^dI^`uLrJ;ipEzffsc0bMbRS;oa;M`E<$8uiH|sg)t=!NIAFme%lcFQ4v9qtyn1!&Xww6 zAIg_nGwft+K<8Tc{3u^w7kJ{nq}&umkw;vB?Q~dt4bBVCvupUmrcTBZ~evxzajgQ!);S<^VAV3{3YW2J&Rp-=qxn`3gPZ zn4ZMn+_96l8;JxzsnpCM{I45)UON9p!dpB}Rg3$Z!K*#kNO&(!=uP&~FpNuEpYaCqY${;JmK(ff6@Bu+ z#aLNc^{`lHj3Xqb4OY-m3-?a`yv+Ux?xjh&a7l4npYz#1`yT+eic-!5_9CE&_EA5Sng!`3D1K$NH$dRRQsD^%#Mq7?LT2Q6a%LVWGTH}3 z4&}xDV5R88rfcI~nPn^O$90jEFP?vX@OA404fK)`?ZbhlWAq^%VT0EwD0j$;2GT;w zfIz8@2D~icIf$C~AbUA%3HECuCc=v&Hr-M2S6r)EfAi4?4wVYO4ZuCg@vd=D3J}SG zv@sCyxqzsEEgB#z;7VGOfcJsu)bw#R#*FoeVk7wPEh3C7_rLZ4*JF15ve$7pLAtzI z5MTny)lG6I)edgFFxz!tj!WEW*&VVP>xspS=iXLYV%unhqttA`uPO({dC+H4P^i@{ zy^IO`ic!Cm zEv+PiwXoY}TuVcyW~#lT=RnYcI;gDAm|TBFUXbt3^&J7xwO_v&~M8@GUp;CIXFrKKg) zwuaQL9iVP;hISZjsHqydBjObPd9T$Os(&v%cPXxX0`YzEn@C#BjR%%8m2E41pC

  • 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�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

    `Ik@f_-?t&ZC2sC_MjIytFBdxo=w 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

    I0vY)`FIoH1UWECCO4$rWE)uDWekSF! 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%0DHT^>{N6Zf@<2r4$P5mp# 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

  • 9+Ff;96AHyVS2!>@LwPc{`-5mi8%_7gJ- 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Μ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Ζ#qXF1dp9$z5UeaZt; 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

    W=NsB#!Fho;vc!om^5vwY8=ppp1JPn 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\^Z`b2D6-QPmpAj)pff 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

    @+@q6`PLC}i)wq*=5Z04P;0iq)h+CC95nt__B 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 z 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

    o3;UShcv?RW25H?~qS5I7Fc(?oN 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%0A`Po@)v#5as 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

    7r3czW;YYp<<7Uj2A^!H#WGRY!F-YUZ%Tcsl*E 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 z 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%0Ak{EG_fqp< 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%0A?>>%=(6ijsJW!oWLGJ~ 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%0A) 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%0Dxt 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

    7i@QbrECi&@ZZDN&v2tr8sz^5R^zETiTP8! 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

    pHBMn`(Ah5Q2{S;Dj}rN-xV>{3)v+^W)_ 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 h z*&pfLoBD@3%Cp~|`OysjqgC!li`-0cb+Iz1D07v?)#8k7CYh&UOno5ho49fXEF@R1 z;KT)=?EOez!TwMnj%yZXrL4DwIUJldsEJ~&5yI0g49!!p&coHGXUWCVf+9|OiU_&vHEry z_-y&h5XJNV2o+zL>FH^@d87jTW8Az5s*2&fKBDu|_T;3szO{uAx6!bc*Ve4w($biP z%40yW)jv=JKSWlCRsUD{!Np?_&72M3wGC#B>J28}c~co=IKBNT%eL(Ia|sDF`yI?x zoH_z7Dc~Z?9we`-jywn48K7yMZ7OYyPs&5DXy&?u)(!rIQK zanw*Qj2FS5o69ccx)ZTK`wC0*6F-+mSR4AQu)aZ)&6Oc5gcwBIkI@Jip(=Fgs<1%S zkzy`a#oS_|niyJ-!CHh@kJjYYWIb>@;mK&Qq`eFr!k#u6ZeM7m@$s7+Hwj|8hzJU2 zpnXcv^qmBFKEcOQXlMWz?nSRep#&C*STjM+?~H~{{DXpyWjN>Ryrw~|FQQ!-oyZu1 zU0Fl+YR8sMLONQOQ++E(7ccWOz*Funio)V|ic;aH(1)z_BePZN4MdmhX{~EcFL%4b z{L+$uFimJoPZxy3(5i%s5jZDiedy5RX@e7ypx`7x)FfC{1H~K(Kd|eI2JL*hP(Kez zZH=qPd?BvHCyE~FAB##h31?NGt8wMo_HQ891Bnw%j%~BFXEy!_7`;BJot=;Iqf`x@k^Lk~aXmBMwvnIPetpk_t=Z8ok4X0Tn7`k-qLfZ1-| zFIS|-T|%1g8xvf%o8^I0R5LdFALamKY+Y2TK@R zq35#8n^kC8l-HLO31Xj00>6a=KoJ_f?G5G=a$r)1NW2lt;Kv9!^s$HNg-Xvu6yAOe;R=Keza)Dp zA*XWg7iIUCHmtQ`sZ`D9>&4<4gn%K!QGqlh2LkO#i8R6o&l6Y9vjMDC4VVu`Nf9nZcOUVQ5&cioO0RH%ZUj|T^$wGc~I)q z-T}3cExnz^t^fVd2wsWAohWBcVqQpV%Z9DaTAUw`Vjf&b%z<1;8KZYyK^}p>2(@H` zS=j9n?6Rvd2wZ>JiD+^p75qU+b*|K9RwhmI#HfZ^=1i*&)jLAXKi*uv4xA)H=RRE0o^+JZNvGNYCcGerkrPSqmCYn#rgWj zGAT62L1b4haMn@EcaF;T{YU9_;y40|hb-tIiJK%Vg9&tL6I1Ori0Jca9fOn+a7`uO zKIY+MNyUWkI40b8jf$g7S{>#>Th61vvZ0%C}bd zmGw6kzO}$FEWgqIR-11(=I7rKzJ<{w`A4%H|L!dJ?)s0``FEGUz5JtP!I)iNmgVL3 zSwj>}k&aV8E<;pyjp8zp!x2l|?k}pQ2a6I^IB;nYlZ3dizzI<}4Cq4QE{+Fti03Tt zh0CV@vTQyjyBVMrFqUa2QbN|&Q$ifNE3rS}tODa%E`s8nUeY&;=oI`e^~t{G)XFC6 zVi<~RCHPt;TH%wiOxe2er8rn;q<0`w>`C8&Asrpt&;rDY3Pn#E?uKGv zx?ez#8+h~V@4cU(=%etJ40WYKb7bZd3Z@jzO6-2Hq5c{Y(8s9p@^J)!iV`_*NSfThL-9-~|3jOG%rA)D$LdAt@j{kso<_Cjynx|^ZB;eLqrxwGr39Jt^x!-}(7^WHwkSfdbhIM7YT^ zlcS>d>}t>vVJBnIv_pY2MkCX=PD>~yx%DdC=$mew}cPym9pEG<+QtE;OeOiXu6Ax1o~ zOoP+4_Y%@?(*4_Y?6;}b47z|p3WdEQ_8gX5$M7d91SEr2rO2%XL>X2Yh{2Zm(_=mG zo{oaw6U9CN&8SdeHI1=r&ELl9f)T>6UjQw&A^*Gsl&17tvpJKC8*&l+6&pFxoQq4n zj3LMFft8}##yAF7Sf%14*ll7p4c4a5*LH`dPJA=M$hzP=w051%W)E_srjd z_hPmFILDl}Ine1Ry_uyM{jbdUZYkxWB27>TPr!zehH0xynm!!~wrU zJ?Y9(@Xd75n1`y6ug@lYOumUwZF-la7bYho#U#XhM0XN8qF|y?Mv~woARXAS`&dS- zxdPMy;>@kYs$DcQKC+M%#04t|309DWG*?1?rD5B>n~~ow7YUb$eMIa{!0SE_ffO95 za21nyz&ZvcaEI9IMMp_Nmby3V8e{GG=E?ic!o(x75a`8w98Q zGQ^dfKVUugx#{T?D1RZXnd00?GO0zh_BZ835m~Kf78CipF1VA$!!~gIRwNhPx_^&b z_h-0u6X>J_N@l2*8p-7N!IhP9D430_S*~6mNBliLv$i%4Rn_7+)W!GIvzRd&*rHwQ z)8GH$JZvxeBrrGd{&y+qy?PuoS~1;|kxP(3Qv$$IIosh1Nt1JE0_d1x{S`ipvPyEB zz5d|PA#vG@DA$mI#XJ}C&zygMdbH^Pn%u03QfwQ{lFt9sdcHw&F`XI^ z^heB?;6?dge;>>p;068{alpFy;KWQ#jjybni7hfF0`L)-#xJQU;J&|tksJ*jX^@$I zHJKI)Jri*dAyi1YBw*JgJzc~H@)1!i9XNcrw6%YKX?=6El&>yls?DZQ3gMw-O@PWIC+YdVTsua1e92meXtwUAd5pWVj>vn?A!SNnX~SLvGCA*i6VC9 z@)GZBqX>eILC!;!&zSZ#$BUtimGvqf)WTiML3u|>dFliA-$$==JAkS{8SZ4-bRr2L zc_2lI;-Q$pq*2s?{<;;-c)siMQA48(1vNpV5Oa$r8jtxZpo-Zn#negUAH!!SP>)2s zxVXK%ObECx4o`OzJm#5JtBV8F#o<})uHNQK4X@eW^&CBm@Pm&CC7xhtR+n@g5G2~CdYg!Ka*D_ro&<4M*Sz$LqqSrO$xkQ z#RQj16;a%RIDDk&Kya@!1MEj}vDt&@b}?63sWcjx=IgIb{}_d*>DDt9`h4<1^mdyI z6$X`iBkF$3fd*z+{CR{h-;ck9M}LfZ2=?PR3)3i}PMiLzrs*9xX!|tq^d#dGnT49E z1xFu863>1;p4-g8>qv*=5ljCY8TDdK_JM=~zMUx6pt6umo4i*}5Nm22IoSV)`bX%O z4pFy?@C-O6xvkoI2xK@^+}{T>%;iD_96BK3YV7^=?zU#{BH&)hXf;rifnq@1ELsD0 z1zG-a23S0@|9V|}7h4eD?0>GGzm5DOkDw$A)(1;=nyn3QLCY>!n+LEA zeyPak>Y&hoW;WH&HnCo#hO@tFI14sfFnDCi%&5Qd1`uMF6niI0MWAqXl8@Qa#0Fw2 zA-xnVMKY&L81lw)wc3ivsm^o*@v?^-MJfs5jhY`hPBnJbby@mwU~7GyB@gv%c4DHG z7#TTIIx@64yB2wHjrL{?dwo@b2kN_Tp5dBg46@qD4)*3rt6`4}ucNX8^N`fWjwu2D++(Ercan@7iWUU!0c@73G)_p0jE zzHdNb-wHbc5&%IG02hGZzK9e_Nt7(_ifvhzoJ5Lj%Zt2pYd>(*$H^qa?sS|^ z_c=2@)167u^WV&zlXGS!qnvcc)7|kT|IPgF_o@m7h@_`Tpb7(M!-XrkSq}OGg=YxKmyP(=rzlS{C!uAP?(hPi^xBM98a9E>!@TLFBnEP zJ7hftesWHWIQOHaEqXwLTkvf5DaHCGxQjk-I=`z}$H8Vc%ul*=2(}o8QSvr%vSz;+K6J>2LZG0jbREAdw(%E zIa<<7hjghclpgcc#_QHFi3t_K6$*WJHz&n~iynYrKylvd-g=uMFEx0KaPDFQ2Jr5D z#qwAABsP$N9#7aXXDz0ho)Sp?{P5NQU&8LNpJ7TN3Q|Hp@P%TDn*-I)be34t^gs~|cGGPclY@OC7D#n!|T_Rd@AzB*Fl z7r_N+(p&(mv5iE9EU2uN&$+7TDY##mn&IX9lS-M7#?fXk4ONfK=1RiXFollVl4d$qT3oSg>f2>Cfdv0jY%lB&H zfxO3i{)~Zy--7rVyqBvOx^c(bhXKIc`UiJKx`^yxj-ox?jpwz znC^;LO>+*`D~h~2RH+rP#tS9hw=$%F$zO?qUb^EmgG4GC<4cpeTs!`<7OqfeOEDp)xN7==FFXlmk?qIJ&kjk`OMBB zU@f2$)g)aXilRn2Vp`7J4?d4&FSZy1v=%WaZs_13#>DPrQ6SEaPA2&5>&b>=w%K+!isw6J*-v0uxm}u{?Jrc%Rr;6^>)|NXvIq5C}M27s%9n5B3 z_)cVZA52{l@z*{;k59qwzaOL~ob`c^f#O!v!ATWauytix+KB0L zQFCfo*ts6nrE1c4BFO-yqjXG~gl@+^b_gu8DVA>|E6JN1lvK?)PQVN4Dj9#*paIjO| zK&<{~8$}}f1ug(luTw5@^(J;jp#|`+X))FL4XhHUa${DuCqRmq z%jplInzE(4=hXDIjk*P^RK>GESs(%=8?p&UP+XH_cnvy#JzVWA;lku|3Q2bg?Csvs@`E zXr}&Rr}M2??|cb+gkZT}E#fB$wa(fA%gY}{!N29p=!Ky4&1;J@H7()~RfG@B#UvlQ zVUA*lImMhbEl7;J9Xnm_8-#>_AnR-R75iuh8v=r{4nE{~?)YQ02f;bR@;<3Hi~oAy zTTwq^ohQPOv1=F#g~^L*O`!1ubf8pAQszr8%VH5iEj=)8TUxO+I+S27CIPSp31mX* zU}g&Tcn_0KBYC@IB+>vLk69_SLNL<$4GSZ?e;CSUV&Yk_(qlW96ydPPQZ}Oh%m9J0 z7@4U8GvP#LE12hxgnPqV26vW}{V4~SZYyh--f91^D8n=1+G>6!eGr?WWEgU~y z;(CM4{pg7T0rFa?t})0MMFfObZ9x!ZgC1Et+SijqRg~T^^DREdVF85@S$fIxE=SG& zY1N1s$z*0nGXy`S3cy5(BW17xrPD6h`n7_bHuWd%3; z+m{w%s49dt24RgsSY!R%1dzvL5EsTl1_#wKwXI5BdG+{ux@9CehRJNFwNsSrg0buX z90GPJ6jP^TE61QuPmtU@4F$&5jHuXOi{&N_UdU){gPAMFJVI#JFinIZOXnp!#(x%H z*IA#b&K`d}j`eOYqX|h1JOn|0Ic~*Wbbo9tcdb|hV(b$M85kVHo4M;ulwZsK5`3Q> zd6P(;zXRLEJYZO>qqUw=c=OsPk4`ldw`y2-E^)9B94ATM10A~A{Gr*^Iz+}~w_JG!BJTEJx zZX`?zd=$ijvf2h zydyX3f;xi1dq-1_8{P;_tkMkcyG&A4`6e_Y?e2jMKT@5^jYcB5%g2xB_AXt@ojZR% zmo8d~VzrvvI(yd3c|CTjS3F&F9?B+k`5|&^s*7_Bli#ojUXHadYZwiX{|g01WL&)^ zUb6QTNwq(IDj9ku=A^iI%;eN;f%j52uRt{Yh!c*R&M6FF%a-jL1(kyZN+=-4jaZk% z#K@|JV?`0jvaA=D}~m0AUL(@F)WKfq%dMdw~N@=??FZTsl5x8pFeV> z#@Bk~x?juMe??kHmp7d3IG{lLmCfKW?>`}y_$HQH7c6hNZu=jB6pt|O98`ugwzoK7 zM_5x$LVWa){noHq(DCPQ1@x$uI28$t(*swSvKRTK&c8DIjDhIK= z=k?EsB)aajYXgaiKGvc;N#o@Q<{c;<>SoqjJFBU~=3fCN3@CNA{? z1rei>m5tHtcV911AQAgomI4WM8DQGS$1hj@1)yG*{C%)?5g!a(<9GkvuVCh(S_)9L z5@Um)!L%SMnwlg8%YK)kib&!NWqplEbGaBvFQYoTjM~-m;<347$B!=~DP2Zobac5F zRY9_8YY!6>y~ZEr1-jSjkTsj=Ho&Q{M`b;_k_T()U0tI-R#M_M04TS!a%N?1Ee9M>4mhA(rclTM1avZYvgaoDs#RNrEFkO1@1UM^ zOcXtLH0e+%!a`MwQ66_wfeJ%)nUK6jSi#8vB=@YTTf2tM7f~Qa03w_PbAKM(MV1vu zB|c}k^8=>$NeFaHGNxj+!IA# zr=6;7^&nQPLWVRCLg<1Hg8Mc&j$h~lSGbCi#OKD&j)AWlikI8F`|RD3ksK5+cdd50 z_Vm-a+r^vYEdXfQ%x(6_vMs;%(;=m7zk5(8yU|7)cekHXvhalopA{k~AE1evI7;{( zUF?K=sOz^d*cOH{>@(Ks!krKYRiQ)=behcq2A4Rq^kE?62MuQfTP8HlY;fEHfDFJo ztFEtz3+7SYA=ps?)@!xl~J4C`PlJ^#yNz-gXqnoY8#U`}63A}hy0LXc09K@;lW@jP; z_TW)Qliq9h0+`ort2Zmnw%uF3ruDkb$Rd-?{z>o>B=P$)$L~qLd zEH8hT^`ko&&phrnEaI{3+S&x}^~9Nlg-m7wLYRO6CZ-F830&*r6OT)6}az(TwmPADB;TT;O>3SgzNs$vXL#dahSwS8~O zwIaUih@&-3`Yd=7MuGelxL(%=f!#RV0%3;!w(mdnR1kA*&kNlFZOcq%ad8H2cjiPo zJ%iMJ=Gex@OcDQsKzsMk^!ME5$7v7lFT4VY;}NPuY6O{un#Ib7Ez~`_E$Rat0#UKL8FvITE{$;D?!+xd-Cr9n$G?bLswDwW4I}tR z@Vd~du`#f~d`OC+lmB&~k5we6qM&@U?g`Q9;Fl4o#6{;k^|)oRT&8#~f%uqqOm%Yj z1+Y$|`h(nk{_6VrJft)a3C)9EdLGECmHCw?Nax8@9-%}!=Bh`*I{FpRm=F}{V1gFv zUZ{2ixhl&TcCx}Lz&$~q0zZ3hKFMWfyqSmy<~q<$M!?R(+i7qFdG+Z!H@KQu5*1$v zzvcRb#qu;sodxfD?28!bF=gagj{Ch3VLUqeQIPW4k%1calMm-m=SQvve4cKiz1c{Z zuf|I$MKFho*oq)yZ8_R%CMs^VsD(zA?n0(fwxgV80YW~QepCSd`{mEQS$K0>cMBe8kjE#g zMp$3NY?~o{dO!xyw@surF|qc&IB@cR1bSfOtA;mVcoW1>Iss}!bdza^;NP$cr+`^& z>LODXcx!ov%kA}@JHL6h?w&YttZC{a%ehx`{E-~D+{Yd1<9^b|70z32!d}%bl31q^q^xden3}^J@B{ziny0D zgls=X5Ww%6OzD#2Wjw6+!(K-a31LDGZAsIrGUN=TOxU}BfF(%)of%FJUZhUz-lo*>OIBck1ZA*#B9&LZ;0@q9JCjbvyWG3oYdeFXzB+lWcGPwi~% zRIA%?e)HRppYiBOlr%J~jy*0f3M-COqM#@estY~=7}r>KcZd&{`@-;^#^% z5(4hCNu{u+WEHVp4)8RrwjAV!bmxc?^*viQJS=>Z(rAn2%1#88MRkEA&dB3IB#J#8 zYT9sq4>=?YlkR@Q7Cm1C#2T|Q$pCeG0~{Oas1?nXu&@LRf-=Q?qZ%l{Q&$i}CIXa! zJPVTm_&Jta9%L^XM2+zpRjKFF6Ty&u_UhF%yj_=z5MHj7?k&f5g~p;r65W&i9I7}p z`3_GO21k?oSGgW$L*XUwq3{YvUt6p-0-P=S8gO$|xendjkvL-ZYMf7%aYhR) z61={Rq$q)vpnfcxV00C}MFOFQtyA&z^tWPIuBUtx`=4X~sssIdLsM?1hAW!jPF0fz zYL?fcNR?i74r~CCsE{#7$7-2t#f?fIx*hjpq0dkNBn?#cPHp++G-^= z`zlN8>y_A;H)a?WOhZ=Eg9%y{K0P~IDb{mP)5_-5lwIj<9=-R9lc+oIGC4yHQMjN5 zxTJ_Z*P4{CNB2lW*^mu=>IUfutq!I8uOzVik>hw(121A&ZM2|vBg9(236QpyO`6Vf z7I3eA)A@4-vP72OW^^$B+yR_Gi%5a-E0drxNBL(6r8L}U*Ny-uFla@GO#kPhw}|k^ z#_oM3fZj^!Uk2Wvwt3Pl(tl-$ZDRWDuzp~=ZKC3s;QcVsVKW1)v^FtOYJy121oMZ9 zts#I%Kf*wUvTB=1T<1=mqg|8j4Nuu@M7U5dyu#E8c*5-8t7~gjzAhRf^pN&hV}HG5 zRZ+4Zu!~Vgi6?zAy7nEE$N*NRpx>&~0|~{7wYw2e>;t(Z1OKV@F&tk7PEp5mHaf}2LB0Nfc>}$Fp1^Z$_X2_GRB>TP?TuX z`b&=t(tk!ROkU#a0q!0sQY7?F!U;%RP6AQFu*tDdbPS6EO9q4>V_X2eVwlfZxj3NP zCw$YmCL}5!iil;&F`G&@#kry#vqihYl@tval$K&zKm2q;LP5uQJD_RW5F^319SYwTDSRIjh`^HIO z>9Mn63buOgr!>-E-*s6(V-zCEIpAv@tCVb*9j3u zCo=0svilCQYl<)u(u39U?NHeOP&YS6y&HnVCaW;!>ZwI6^n4)exYK3zV3HE8-r#^$uDB5w%u`( zpOrOaEAS5g0i4@k0e_n@{VSqKCS&5%bBv!W0oLK>t&z9sg(}hGSrMk zYi--ze(H6cA@-7m2<=#y#kAf0`C!Gh8w|6UxC>u}ma>1L69?1tFN)%{DuyO z(z0eNmy4HApJwBj1A8ayXgaa6%+ZyhmGkFk7r;@20jYDd=ML#-k1V^caov5H#J;NxUxzTKjx0L@g#!(BpElNZlDYr|+5!_OD_fwb zGc?bOd0+4*;9hOb;q&kvCDX51k~NToNqDnbZB{C%>UdzxBQ%c)-mn^*iz8N~U8;%= z51g=eYkd}9J2E&}1BF_xH8)p7JEbN$mZjFzwphDKMOQgV!1%-Z?6~!42jluu@K%=T z2GjgkI|QjqZTol7Nc3vsBYyfv=w!amxg|acmJRt2O!rk|&_!`uHOopV0ctT3h>WXb zNUx~Y2d~m&%j$PoJXg`N!7-?5&!35F(wwm9ZoHp@!!@LwTM%cE<23cIdv_C3uu`%x@X z+blZi&7AYxjT^z;XP*r=HaCM?ckTpOgB9#O_0()Idq_dMf}~KSBTQIQc-Z#EW!|JK zywD^DtrqapEU*hrCm!^3^;bNO4GODFoFoi;~Muh^!En}N;r ziLur6@)#nau|lIUhQi!fCZ8WeL^L)zJe*FC!M!bv9l+wgSJ@Ap(LqI~_FqStI~G7@ zmCH6nf?W?fkdBAzFd2n`Q`g6-)?%F=lRG;*&9bsXsbB?N>msPF$f3E;OqB}V{QT7<{NZ3o-kg7=Wsx!x?&^)XjU7DY-LVnfJLZJ%zRl&$p z#mQGevpHVvWoJI1+axwv4g;U`4D~F&`05#31GU>IB*5PU-@nI25l&%r<5? zQTheWI!QgU4aL5B^5n_kFkzwjoSV9{0BFPpCnw*cFhKmQkC@DU`noCNx zh};U4@9DQEuy`vEkdm7>ykQHGlh3A?{sNQiof+e0Y>!0m@Yw0oQmfgN&{2_Y?OeZd zMZ&a&gk=Ph&H;ZTm4=7+q|T}qCZGdq){Z>e!eT`*+-sJ{(OoV{s0(8LgopzsTPSn& z<|(lQ)x=I`@i4L!g>?KQ)9n}m(tB|f)>Lq0xdlO(nxMRo({S4*RX|GuY`~Cbho*4g zwC-v8QL zaB`>>dlcCJE_4(vTzp1D`*~AHxpC}I5jlT*Vi2&*L8OJK1yd*De`i=`wQmi&xP{8Y zQ`n~dEVcr!{>D9yzqfm;@}R<1j!ize&E39h9)ED0JAShK;0AZ&mY;f%;!=*d{@^lq z`TDo+a=Vjv%eU6AUthmfzB{=q$7g`qL@lygi5#KIEtMfVW!pn9ZV*!+pk$#zmJtH% z=g=_AbhAT?K(E@ZMv^my7Olzdd>KxVECrg2PvYqMq=_Yb81dnCU&N#WL7rD_WZ1f1 zVxYXnD8>{c5lu}bB_TrTxYJDWLBq%@#>vJ-ssA{NAmkQHsyV|Z9R5da;+9d`e>s-c z5IK}AO8`HmDTCM9tl(hk7RvBg8it5sQBKHyax^ml;Q277Vo#UL{guknOG(s1Tsi+n zhURFIdg26uKch}Mp<4cj9@|UX;}8p%~r_)30Lyz%`-P=LF5!ZtC)o~6_uo@)Yu32DZje{}VA+rLrVS@7>Y97u|&#c{f z-gJ+l%RkpN+}9xZZ3d|V6V0=%<%UnPB_%(HArM>o3|dXr??4u4Jq{1QFg$!&NAJ>Q zOZk8lY6#cCiUC$^cO1l>WI5vCfB$Ju$7mFDHM>;lJrnF^CxTYC+H9i9mL0{oIS8B~ zu`Gm@rQTY$lb`k))?T@U0R*J;c(V|e(7NJ*0i{R{;RcxmiX}qzrVxTfZdAi;e-qYK zGpXNgh6Z+rKxVqLIBYn-6jin|QRSZD^9E>FWUIiTSdKNa8;YJ1z$_UtY_LMPeDF3c zl91juCDW3rMhOcrJna8`!cgAO-D%zBm1$nt&Lo8RL{5{7*oYPZq);kEO%d~QfOD5T zK0WVtJpSLK!)<{F7EF^}j5_weF4rrI>+9xNJZ@scjS0$A6XWaV)Xa?84<@M1$w^ah zpc$2TjMnuEm}wnkdeGZN_lHf7|{FrFe}ji+|eb~9LE?3e~~Wh1&W(6 z$ETb9Yo{+>y!b=b&qO`ApBx!VDGyT)O|;oH7l4630cS+MC8us;YRQ!DV!@{_^Z%w+ zJBy+0Z1xT`64D(Sy77`5lUz?qd==0G&E8J$(uR>?zoUQ`axnFCIO53Wswl zw|jN>!i7`l37tX^yLf8xkW#lT1nF_lOZxJ?THT|(E$H*UPwNdMuw#+>@pMY$-Vl#< ztOs`UvBCu6;OVIe{C)=zN5>Nm3V%j3~hkfV4Me zPM_XbXtg#V?v3U7`3=Zm-liTO z8R4)gRu-Irq1&QdocOZ{WrDwe(!yeX<}h z9`|#V`O4JPeTeP;X%r0C*Y87W_hCV1?jL3f=~2h_%b#UI_GwQsea!4F_(7nIFwQ7B zkSeydk}L#sXi#C;ldi33+m<@3U&kRmnf5_;0^BVulCNNHs4RnA4bUPZkSZw2B9JoB zbBv?#uB*ec!$+ix>%{R8MJYr_>?2lLyS ztOMsY41y7~II&Si8rpEB(&ACE+;3nrVHV_(rmKPY&fVo*ED^&Xu8FmkLg2%=V@3iy zGN@Bb?B{>hwGjP%rzw8ONsaYF0Zz?i_M6Q1>5)y``38clMhz5pjl+Gp9{G0_mbw64 z*lXzXo{*DK0)oqqG@_>;#|}fn+c=Tw7ES`QBt|0?be$ew=geDBUF#{u+TyUjPPOZC zg+;p-XL4Th)~&!abX9VHm9R|Gmr0bgB8GK4?tYuK*Q4LT<{ft|@2E;nbD}PTkJ#RP zOf1h1BnrR#dWF~&XmbMb1^g9uuF(9^7Vh?WVAv5MT-2^)r?ipm&hg{%)922`bKs2E zwD_s*?YN(GlG$v0>Ey|HAB-t1C5fj;T0Jj2MH`Y@H^$!&IQQj4LV}xXLtsHG)zwKj zyvGM@%x$)UuW`{48}YqLnE+d&H;?vu(e##wZEsDlAbrBziO4O1?hPdCyegle_BwT# z@|MLq>~DLZa8vwbd95)b3*IdFI93HU~=$tU3pR$9;?xML3jsl`2>1=2*p~{==vcB+i!u&tl0;L)tW%H7$u1P^QaU4 z8@v!TS(1pb8YhAZIC?geTTxJkh)xhu{TEbaJX?ioC^^NMCcBq_yZ!^m+$w#uioK*1{BZ`mv$bAWmLVF$c-$4;R|BmF>44^QcG z%840HJeENE0s4$;vQiD?_jy4?lcilD1MnH35NRPDwRK$*V!yT9|JYjvSdl zxUf61+jAy#5Z%!Ez!y}12u~~Q`5ekRdgHT>X$kEwnH)M#_Ac4pPQ&uRYh-vho9X>S ztJTlKHq$5qJmEZxBkp1+IgUl;b^FsG69vOFW^2`aObfKcMfQ2!);ur6_b=5jOp2PZ z@4WL_h9ytE#YzJmi0;jpqsmyCB;6xg+;bRR@6UP>E#lT}cXKAq3 zY1qnoQ2&dl<&x#TgbEO1vlirj_QKAUv8gLVLuVoQvzPbg&z(Dq6@q6W`Lhss_3Wee z<~>5{gyeaGltU8}P_O~$_&8#X7+Z3|qK)n$B)*;c!P`E=_I@#qw2ugH znJ1ipR6h!MrG-#J92%Eq@ONJJ_Iz4S_>$}t6-=xaV(BWj3y)`C3DGbizL)rK_iN>4 zbb~JTy+YXV+b_Pzc9KD+=~L6w=?~w$$vVJQ6v-jgo%BwR8h3++wukI|{bY%D$4@D4 zC_!E{oLeJX0`2TNMHZ-aA~-6i!J@Pdk~W0H&=Md&UDgJ6Ocy#Dtr($3Z-Fb3dKg;n zss@9hM6?@JNCzvhC(F77WGlx@vMB&QjW@8lRhFD`nadWCSSXUf$F&4z6looTng;z2 z$eqx!5UlTpFc@<$YKFgGEae9YE(MH2mEjs@~d5ISp$W%0o%2*N-* zC#8mlu!M7{nLP^Z+|dtVVMEk$06^m0_fuD2T-JcgLZ><8Q2j^v*-n3B95!j4O2USO3XFc@xn-(LhD-gTF>#3H=vX2TB6SR^?2PU+>DO>386z| ze^`e!c!Z6S@g5GFjL#t_jV>3vF#)-l{ZZ`pRLd@sca+>0hfVhraLC7K8mQh}}D2`*E8#}oz0CMCwn9Y2U zG8H_mvq`ZI3Uvm1J19GS7vQmBuNqaH3~QP!t_^N&RWG$$C+9C-tdgy&?e0!iCwq>j zdlH@4bN`HfM%I4lz?j_IgYd05EK@gcZ(Azh3CLj8+nxnoD9S1=)S4EVH~2hfo}@Q6 zz=CFK+dx@}5zFDQFTJFSqGvQlx&AtcNJ?=&nUs7NMd-8`MZe{pHz{V6QeOp(&Z6-m zmIu9W3KS=xUjp<-HFx0UU2znM6dko}MM}DN$~(_&jg%%i-`~Op^sRGydt1v3Gcy|-TSw-%TP%32L`Uft6nW`ZC!=7u3lYzlBRZz%Fo1; z2|eK_^pt3@n7a0)NmBbH@XQWq-#yg#UtVnMESi6z&T5{oKzwId#p4Xem-r~a$%C4` zq?Hnu97D@Q0V_r^Ef%FzFn7j}3ZOOO1g#Pk!=}sk-tzMPjjcw zMQaahT&p2G^o#JTL==qBom7E}E0DysG_ zs&Gc3+uV9jw+n9|nOzD`2hB!^{&A-MG4CI|HnHB!V$r~)4rg9B{a3IAQ^$@84N>}7 z$#Ad3woei$2FMpRX*g3Q%X>c=eXwq*cX6CK2BitX;&HDyeapkt!i~iN?KcACuyMny zqL)aBn9DIwl>@^AoRncqo7qnlWgs~|hcwH5fRkjI7A$rYh?xJ}_dhXg-~ci#bPkxs zzP~&%erbJO6Guli;DI%mX>A%|X^_jM)7shHU9I93y?9*PJaYzIt99&}Thcm-Y>z+f zdHDz@3)|C!BCj8md zQRy)$e>6*E!sk>&wB_%92^{j^1N?ZuhL8wyhTW%WZk^3H(2Q~?e#x;ZhfBcDywLZd zzGs)m-{*f|_gVkW?oIzPCA7QK;DoPKc42^a7q;`W+v)V~*3lzJc43KjsiL*pIAn#G zRi|XC<2*Yr>AC&q$+ayq=Akq@wZ(m;Vh<8*o>F2uAhQ1CJXv59>>DJcS7DPlpp;lb z`3qHAo$8G2aRpOofG-({DSRy=5F%lmPGg43i_?(;axY1#U;CmD2G}N=;edi0ZVD|SGB~f?$(RN zc?_kxoCtJ?p=13M=+i;hjA?)%&BS-i@Dk4 zy$$A`)#?h!T8mdUZr|36dizkq!`MHI&Y5(5?PGE-M1u@Z+g{B4o~ok6q7{b9YaNVj za8$j~4g0zEm)ow?`IzE-`Q?{i{&+kU1;*aMDoVRQib-08Ngl2fJ*i0qT^4EJCPwMB{j5 zw*n^D=dg7SGZ<{>1=G~ueZ!FzTXO#eYCQ~azzjFHWsCl5F0TpRXl6-JGjUxm7~X0s zVF;M_ET0x^&yg%s$@+YJ&|Gs%t|l7j{27KG116ky<&Y2Fw?$2O;TyS60S*!*@HRy}WgM{S zIN0IA<%n&5f^OxwGIW0xu6Nk5PjKJ)qD@UA_g4`%GWIxBen&>0)?AghU@#;Ek_8sC z!(nF~-W!CzJD4xFuxJT+tDQtvTl&o=*2&m5=nPGN)?{6yzh~G74Je-X_kFnU=lWhI zl!$zpySe!Bd-rY*%+1~W=*K>Gb1#|QN!IH(KlqW4-1N51hE!3qOa1 zyOQsUokUN5mE@0@e!tE|#)27Yipuw+Os3KJ8Uunb>Fpv9^Rler336Mo+p-EnCnumh z7j}j{Az*#H^L>sF1ZwgK<2-Lb=2{vBl=VntQMc#xila->q?FV&mFlCSC3t~YQ^$xf zk`vJq)yHFYjB`&Lgo(_y7U{Yqg3IL^BJ2t|3k;g}`ZMj~)4AP_) z;-}V;^dOcvw=iR|-P-Q)+MQY_-5WZ>{R8d1#zFSPNMxiA*{^_nHa_TE^jv3r12`<^ zMW_jd^FH*cTdD{P79|E#g-b5t3Yi7j>Q5PoC48L3DBW5LZ0wrlmk>KuUBekt!23`( ziEBe$tl(1~GX?7RkRh=8&%L*zlHthJ*D`RXbwY29&{hr!W1vL>*IHmj70bHYZ(!8R zt5Sek6>zY$C8x7JvJ)ZAqvm-GlLhDceqniQdhNj)w>I}6!6l59u?J(^*y_{+)MbOE z!3RhcmPa2roa3KvJ^&x$;sfL|_B)H*J2p3GOa-IjeP~P(42_9o~Sb0@B{xDd2lDjDM6=?LgL$~@Pos| z-tsrDH~jKh^jOYfOy~llo(u2>7Zl&WaASA(?AZ&KuV24#Y+ZwU2 z=ylJZj#eL(Y9~{onPrkF1(M`z304s{x9YG)6mr(;utOMgM%7GaRtPrfpjV(XIPpBV z{GDes;@Nl}kJr&`6U zs*uZV3!VuXHU$mb&hJczb&R$ZB1`nYaP}@0aCQ~v`LbEr#fQf=x$FRknFV4Yd(Ci$ z`Hv#o0uwOOEzJxe-~a7G6a@t!k6}J6j;=(5jMH~=%Y#ic3kDF#8{TQ<-!jx881xDF zB|xpA`a?q`Lz;G@8Jdm_nZbm@nRegg_2un{FdyR4jfWfD#*x{FWIlGb9&T}4wc&?k zKCWDPc!|4oc5^cOFw12xUwo*8Y32vB+z*C1aW)wCH!s@u#Z7-Wm=%@QLW?xMx46(_ zJ-Vjj@QWw62AE?GeQHPC?HU|>cNm@?Q1Uu(MlFUj!lX`&DnvU#yprULiaoC7zPw{|wXRY-25q zd$ai|4E>w(F;`Tb7>2?yN-ZXq<1(-czuvGE?9WqKzsvM5mSQLglq6PxW0hf=UHyyp zrcbizU@=2X|Fz|7(~A!lA7ZKH+yfj0zjgi?Z2QA8er&mxoqBNM;R*i4=7Y6|Yy8@V z=00#Ay1ZLRSONByKg8zpsQTc_!z=ui)o-2W=FU%TZdmH-s%mX)PMx1q_zV1@1L{4W z?zxb`-#7Wp(m%G`vu~B!Gd-|E-6)jV{H|-o$?Q)dz!4P~PT$1?6e8?S20r z><){x5&f&}TF?!uimpt+v|KxR(gcv-oEsiCFI~NAqAFzajQ-v{v%5QOK4v>f*ZQ}u z4q1NKh#G7PB87h1t;EzS)L7eK#F^c{v!XcZ|E&GJh>{_2tsO%@&Kl!b4 ze`HcX!?B|28fJ7jv5J&S%9siuM-jos%Hn}K*O08EM~|MyWmslI6Gw-`GAb2+!ZPX~ z3I*qwWVDjlrzJ;Ws5sAqCrw83pkBp>Ns-s`$(k+1)hH0B`TVqh%tMt~no3Bv{;z)_ zLm5Q$E6H|qjAanCRg&Ty>aG);bjbJ)Y$IH1{o>|k9Z1Hy7>wrg^)ov=b>L6ySngHF zR7HJZb~aV-j7%ODDt+A(J>sjbp+O)I-qJ2_^1dMtEeqt|jS_omJUERffO7s<6b$q@ zP#s`WR@`Kgj|DMTdLTmGkAq!!z%4uuV~hvb9SCq3&B2x!OlCY2}wV# zV^5dQn_T>Cvjybi_<$m%=Q3y#S|VsD-8xJ@{%Y256QQo5e92S%o^Xe{B7|_FdchPb znCop@{}kax*NbzEXhq7vMtbVZcC$z7_!$1ZcKFAd2p?h9)Tv~1ITSqB!CQUY0>me z*Gqz>GU_EUm!i3i{8dzjWmSBE*FhzV=zc{=2}SMOZ!!9G%m+~}gy=F-$FCE`Ie(F@RchbC)?6AnUbvAtJ z2%L$%{Y5)ugf`=HcOV_)348Ge6eiLzAmVW59>dQ}((G916XKP}nCezTud$_rUxf17 zUy$wBxfu1!IU&hm+DCm3e3j}g4Z7|#EcQpJ2ml?F!D70b*4?=Cb(||k0^KBaUQtnoCKHb_VW0Q& z%x6&@{;lQP@2Z@dcz2iEz4$H`QYekgyBRK1-5I|B?tSk5b~F7hY*S=%?OmiuW6!;d zg-m^O%kM68%dOR)B)Gr6$o)j&{(6V|>ooV*&vA*1%1%1+T;J+y-*b`lj&d=fF5b99 zpy}S6h#$JU5w?G@w?2R(Em`b`+#3*4+ zcUJsiRC(joitnU(-xH@Qzk?7G<2-|dBcILzVY)(;RA8XHzANigQWkmCl293P6D5$PHPWY2sSvgBf8a#_oO&&N1mC67Z)mvcy{Fm9(PESA+TE=!IJVtvX2d`Q zIS-1Laud2vuOxLns`|bVR1sTR%^a6$DipXJL5MkMxJOiES%zw46tI2ZF^>C&{nsc! zSN;H{0Uvvbu%VKZFj5~JZ$Oc$5 zRJ~ca8YaO*Lt7(Hjp6c1KgX42;&Bdd)=$93Po49%HjneozT3+qo}pepbxP$BH)7?p zdimNlwLCCTudA4_S4VP#V4G6UoA{~*3_uvWc;wz<3CgWH?Yu`ZE1T81SDoC?Fnyyya)hzNKRHP|3q@cJB zkXs4R9eiGFm#M2t8)&jst=@7P{Z9vIno92&T0{XuRfLy*A5@&0gRKy(eNwqUQg`do z8lX9rST#l4`o?Q9wD85uCvxba5KjpRJqNKXRA+1~{{UOo;h!7==MP2wgyDRaD$S>s zcQ2p>C=H!GabgHOltW;Q7@FDK90DKZ(D3*;w#+$qhwdKI|IR%)@Qm?$R!<0})eRJT zbeIUy4uE6XdK`$oW2)NIOCg$mzq-Sa;FOTT@3UJHCAW@pGaEesraK%xxT9G8fh9%r zx>o@~NlD9%>lSjW6m@L@uvb(}*Z5-IG-0{29Onc6kP$J{91|4tyRXWOqCEE|EKg@! z_vq+rqMs0npDOERix^NHNgc;Ay!Mo@05|nCx+k(kd!3}xtn?ZXBI)#OqM6p@1wD>8 zpGMXB>9_!d7g?b^oAjVM&k*CtCuWIzm{@p`qNJ;P*RLN5$PQ;J$4g!5v z$O$bx;!(O1`xPH51l1_OKUDjqx9DSd4!k+w2!qQuOie5RApooyXU#B}NsJStnl-?i zIYCI=*D(Y-M)w3`{F=I`*;(E43r-~NCbL`~6dEs~5c(4J51d?pbtzniW$(lOBC3 z8Xa8%sS)V4HZ9yB9+jh5jI5Ijrtg0|Q2CifZ5cJ6ll>!^&CL;NcmV~(nqCW+moHzq zz! zS(X3(=V{Bal>X;fEN&60D{@z)pp%pLQZo9vG5mfMU>8C^B&B=_r6t#LMU?R-3>h7- z{7Bps>@s|J%)mXM_=*^!5`7uWL#$#Rg82N2zXEvXAw|4(`m~4x5wAb>lnBym(TPSy zcm%OpDv2rE7SCV0BsLojQA#G~#JQde(Gm3%pV_qkAxKrXP)rUt3~NI#K%be%4m~mp ze%eJ(OirNc`2?Tv5rQ)pWKcC51^CfsOt*#$o7m+7nGR8peMmOYxAJnFt^`J^%H`4q zw$@Jp;if8@_DUD8Ys^;ZF|jP=zl{YqR;1sIC{?ToGQ7`?j0iPIn(a(LoI3=tc|_1$ zH;b9+V!EGKkYo(u4xIZE?HQ0_U!abFfa7cD!8F_c6KH*h=X5_ChF8Ya^hGQ{45y~e zWPUbZE}KY=%_u6KNQ}Y6;hU?cPh(!u9x@*{JKZ^r_62A^J+9u#tO*o*U(rd&4_0-M z?}aw1>tjOY@6@g7-}virZKDYWs$1CNxPbyTl7*t-EXGZDvfprsfqaW7o5lt(b%FNP zO|)H5bm&eA{Qk5hYN8ZvA>*~VOs15{%tiF5q089jRRk3zVNe?I$UYjp1@lhqtH5NL z(&wTO^mid))(8kQ&rtsor)A7`Nw0*N>h!@eEd0oL=0-PNv+z7`C(Kp1yZ4 z*Q!ne%8yGSz9RM&`OZwZMPXi*)gMnV3k}i z1oj>w9~#l_-iIe>{I84Rf{vxMbsvyo3{R@rqyX+E);p9VaUbReX1h_-?OTw0iz*Uz zm?7By=@G-BS(kNcFa~YSuPD|$)BHchF}cwsAW&|>ij{4_D5Gp2OBqik4U~iw3!_&I zHhYq_c~!eeM+3w3_E%^yL#)znBpZ%21gwWue%emAKXn<#M1+(5K;I{p=Ra@*#{R|v z&0I~~xNzmjmEqwVXt~@ty|cG-`SOjm>UQb2zKsDdM4Y+ab?%nAdo!In{ z*3*{FL6&sq&ZUmkW)8Lh?=LhF9H;yKUH*%Rr`wUke8X=($cmUBcvxc8phqxfl72IV=v%DDp))MPJbe-M6P{;W)E>Ls}(9MRfuMBu5!L=;A8A2khrEI z=udGGV1rP>hF!sD}w>R}f{RKo^vV(svdxsiANDNbw=Y&vvK&-J~p?}L~aNAI^kC$7G@l>6{g zPvtIcZ|C0sp%3MDFJ8B@X)1j86KDnK}tnam`}#qcvhqeqN?*ZySNG(4;$T`>4{Sx}BH^|iFoA7L7(M|^(T=LTMv=ImVr1;lt8AG%T3p2z(wVxfPK_Z&oa^TG_m3wKj5IXX=5DKNs5>% z(|FM8TgJ@C3Wyn`kNZR}B>jHq`a#u6xKrxV?cy?sr$4<4Gx(v^5A~c< zua)aLp(noV*33JXq03>!C|BDg%UD8*nTSt#N z!((F@$RBb*Bk3S4an?3AoWS=*(V1OcMJd(uicYb8YoY2qF=7b=zJbaroU50q-SLCvefmxeQ$CT`8~X79?6 zgV*DcqNMyj3<0__>5&s5T~K3$*QZZpu-HAIaBttbbzKoNhpj2n{q8N=gQus&5yVY% ztV;Naie?Ng&q>R))y>c?30px*S;Jj&+zHjh2J2-^%>ygu8d{9{*)s%~f9DMVz8$Ib z2Ef^DHVx)yZ0thCUda~gtHbt4KO{$ z(czY#zeFvohzf3)F+S6Wy=9(scV|aBHn5D>u#+a{u|@?9?g?QV7ZPM9M= zl|77W(WGL*F6lpg9KI~!G18IZG~?uNiGia-+_T9icm-2T{G@uH*MN{lX)E$908Ey6 zZe?W!hGm81yrf#c@G983FrR$caQARt-*%|={CbYcC4a=G4!|S+x_~>N7?Uwi48vJf z^9*Gmm#Y*C`H`fosd9V;R7%!8l@hZTE=U zH>ZwY!&npp1!IeANSeH~Z~``Y9!`-n7X;Y~1|hzW8_v_Fcpy1tU;^aJi1(IRRr=4L^4Fq$=A z&Y*fqOw)f0nf|zoOCr9Qj}nXDkAX-sS7tWHe>~2OpZGCBl16_FK;xMY{+JL+&;K~W zMeH9}xoT-<`cJ13p#^7ryHv9MGr_beuimfUTfj8hfsG;~*SuK-u)OKN1u-V zpjY=Kev?pu%+OG%62_t75(i2s+RY@qPZo;(7)t?RvZyKr{(~^zM`#n)boUbwkRg~* zPY6GpVHz9*|xufY7;9s6>ZEGPr$?=O7XGB z%~i6duj-x`j{qGWHdY+(i9o<>>nQ#MO)300$m~>Cr2FqZcm7 z6P-k`Co^ZaqV0b7pE~ct4$(y*XVBX@WgR{Oc6S{E4I#Hvappi^W054t;a zQK+r{B1ZIW?idWo(?ME0e}jG$p5$;wkl47h6mwGW?W*-6iG7d4S7(q zI8l(E!eL(W=6D03B#eVJn{rj&5xj-^Rpv~k| z!4Z;>H+FmpGHQj``wY7#DBwU?1sj$F2oerKL%-X`ctTXeV6DU(Io(Y8w(Wm82qumt zWK1#Sr;6l+;_(bxMrvOg=kX87qB=;Ce)wqGaCp6s_~ILwM`)~EZe3`ttu;`WX-t3^ z3xfy^!1o%>;o$}*5gMQ?KG!%f$aDB&w7mlfWZWm|WSTiBf< z`dLNN8bz*9kg!7+B@RCJN1c%I*{@R_R;qsBDO;EMfM3 zX|}I#2@IP{S~58~xpe&Ay`@nx2ae#SyDPWRP1;-P5J>Ku_wGFi1>89RW|8PlK!&Vj zP-b<516db|Op=Hdguy5&Ss;5(y3N#n@<2U_Y7PwAQOBI+~M%4>%W~vnpoK1xikkjvh<#$%)B$ zHVM*6m(vPGeHk5)bb8OItC%J9w3P0M!>N=W;Z--5afE0-UFjc-3(nx&u%M0#15tnY z8k(~L$ilnG)^N%p$~u1?uGBp`zwHQj=8Qho->(C&qsNm;eQa`4KfbpYi|L?F)fbP> z!Gr6C!NGHS?`3J9VHm=8kFj%rcn%Q>IE-nEUSW}HI0J_5=v<5^Bo=KS-{Z4GCmwqC zuP-aZ~hM%_!%^P>Bb70BE985F)#XrP`%=$`3<1d#Q?IfjEmKbTnb z7Ij|7&gCi?<~++8Md`-ksHl)?Sp7Hf@d8Z!RoRh&y19*)H8z-EXOCaYpsKt(^kJBjBdTF&tI|#2vMO%wBU#`;^UyaMr#KUlanK4QeruC<=?{##k zJKOM{>04RO#f}Ll&#!Im-MDe=-1+mzvOuyP1DD*fJ6l_e$KK0)+EGYIv)lIs_KOAY zkPr4akvVAFjvfxf7K#pdmsJ)ZNSNx7fr!K$mrBzuG@v_rjOWATzMsO}OpG_(2vo3O z*jyRGGaxvI*#C zT)tw-M}|v*kf0@aBS3O1w!;f!nv=z5*9Zdp=Z`0`jv+tR!j5av?H|imE1;fToLdgG zp+X!J%>n3!FvbZ+$~({1eaQ{vi92JEKk0J7qRsuu5voZO6YABzXUI<6z80XKwt$Ml z!tpa_7SNy`8d^YIVWE&|WF{sSW{;$giFVyCuovauoNVqhl+cb%=K_wiciZ)zPG2e%5 z4PF;~*PHn$&Zkr>W4Tbxmp}+C#$xY$o*22r)Rz*};DqKvvZJGS5_s^gB?4D~U_X!} zdO?>%-cRG}UO!-hwpeh)xp^!v4k}5&$1`QL#bq9=F=CkhrrG45K=c2Cx&%E4`43TT z=h@@-q*{+m_SG-0tudth`(Jp0;p8i$#nH*h`l-{WZ`W_XSNaF+GaUt82eKWQE+gD< zJ@kIy(So7}EXfM52$MAv@uMzD?Fp5&RxHO8ZnfLCW4(b^@YxKH3OT3@h_nfiB~iJC z!dooO+kr@Zno*SUZO@g*$lUx&zS!oXKxxD*O^@j=6jiM z-*Zpojznf+-#3ETNPyr1?gY4#07-BI2(BUtN~9=CBqeGu)n-?f?Q(a!U9?>#Rk^BL z?65B)M=G^b)OC&&w>KRZ#Cf2IR``!E9<=k@$ zt#uZk$Yz7KU|`i-krSfvm!VKVGa+ICf@c-Uq;Ymc7sEUHB7C?T)|jxMQj)4OrIKuf zk_NCzYCsAf{~eYgMSd@i;aU}8Q@>9m<`3-ft07F0H1!Zj3&BjMp%?o1n5wNR{uUUL z<|HtEulPQuZRQWI2}^ID6XxF>+1qUuLYW5mO#}R<0b`m50KyyKH4X5SV-3e@EVaf& z6t&jZdZ-6-vxhl*86lIy-VqjNv5S1c3ZBeYRvjXwhh#JTCRepmgp&-MeKhy)AqBfco zn$cTmXKF}rGLYCQ`XL?^Uc?$d!G!{}uFh`{f>#GveyxKhd7ZK@%Nnm3KLwMnx@-E3Yn6fS87Bm`jZ#zl=|0e`-5lzLGdbB~Z=x(Dh z-w(cZMfA_0xdJL*WL?-_#E;3^R^sQ)nwCG0{Q+4Q_iJ!c018!~idgv@U^`>ro$m(z z-_@pA1fKAbZ+X0TXnJsv-@0Q5KQT4Mk8a+~L&}lAdigTHc<>Bqu;9^#YyyV@gRzgVqPaI5uG zNMQWlYX?MO$gZFhK(jfPOT)F1M7z1PG(jO#H3pN4Nect5R8NLE4ZT274)_mZ$J6x7 zhX)lCOC8hbJtE8kYNbPh9dEC}#uBBfc7{W3A4J5>q7AQ>b*oEBPC!XBWW-C3KN(45 zX(?hz;xp(mfuh~P)QyeghOutIp?b97qMXfJK?O7Q2}{y6A+v$>T~O;Vtl?#xKXB{W zU71G5AFNM1fRYN$%HdG4p&4T6O(KixLi9rnk^M~6Y=q+ot)p#fmqL8w6q=$iqxh>vOVQgFsX zz;Gi9*1Ed4;w5k#n_@mH+S*8K>%+Ifvk3L0_dGsxrYpk`*px%APT5yET=)Aa2v;@*AVjB% zI?HpKK?_B1!=@IGV=s9#*I3JVUnYW1XVh z<{VmMa4Oc2$veCOJ+*icDqqM%q1;1!mH(M-esom)W}0=1Por~iZG2?=mQ7<%$GEZK zg?&!X(;lv8+vNECnd5WKiKoyTYma7&Pto#EH61#(Z~V+$wCUKfrs&+6@qJSLfng#s zui4b0i?VhhhkfpTfeir|>eRgiD_5G=E2|`u6f?an(v6}b+Hf#QrTWD8$pqf+)l0nO z)(qtLk|d*s7jqM#gpv{&VKXClLP3=@f zD=Aw&X?i>6hjO@KNxbeCB}oVbIS7gq3IUpza!?OK`_z239|U!}w1F%#;=WyfKMa}| zx&HM6?JlG0VizRXS4iQDdYC(Eu#m{?D*HdMR_1D3p%vadT}o)x0Gio3Ong|iCrtW z1Rl&dWCAy;ku_+(@`A9%q8WbsuOp7rgf4qyBG{7P>KgTsrpoe2iHd%RVrwXXj6w-e z)G|njGk#nlS+{OYDCSYy30fpvmuD>mwm4otl(Ino6hK!rXh2|A45~4TM~Yx?j>_P) z;na*`74~XaK|YQkl|cfbOXYA>0QW0e*rpwuihU;yvQg>VLCFpizc+x8q}8jiERr_D zO>_>3;low6qFd!ZjQ>zM!#zFo>EnP)Tn%<0BSkn}vAd^X8X z7W2vy_Y4bgm)pm%Vf1wD*%&|8GNGL3o}K5;FZK>8L)_D$XG8o@*XZt~lH{HypC$RE zqj20a?8}|=soalM?z7X}XL-(dnfvi&&YIwSi<~veolsBbFHbCvI_J(gql*)l^QYAl z(7T`8w$}GLIy$ahyLRFl7UizN*(&ekk9g{S;l)qgAI0%tZdOf5&;yUUlLibLVDgfL zG34|2*;;R<)8o}IF_x;0W~SpDsWJqP3vR?`D&-rUaq1jOZx9Y0~(TF>BW;)h`|7!x~}0uVwa zVkH$gA%_d^HUm@&vP{L+LG^>g1yp)~kOQ+x6E*z@G_K1;AigGGajdcNA!do^?Xn_I?PVT4rDt_QA_l5{n%=W<+=JI2!8Ra%cuwNarv*@y;FY# z;~PL)^8n+Sn@tnb1=U8|j*Z=R1p&|lLI#BLnp#T9!HngP0k0`QX9m3&9Wyv^m!SKn ztAbD$4*PsM7z_U%Q%>6S4I$G{LfydAm~t`8SH}A$#tP|T(b=$Rlhc<bv9jOwJeZ>PXs@@L_q`Zi^!2r) z_q`pLVTj8VA}=F9c=ht-%b$$mE2H%KjsUN2=xyrFQ^d}lcMM+ zzYFM*E>dPd&or^TL5+$IfGS_xx5R-0KS$ z3g;oGay~R=>H7J_`&U=)UVY`2^QU&~NS-GSs$iwArHaR`f>tAv_a*WKw{sim@2{A` zy%F&8Q#gW}Dv}F#Z;_G>*0o@jDFc928W}X$K?1@kV!X3Yul_o}sH|SB#yeIiv;Vzi zjMI^wLE1}G9vSw=I=TZwTr4J~I6jP91f42XieUc@bf4I9!#*?`g@SFC5>Hrwf)lZ@ zm6EI$WFZZBk7{<8-k?)!{qQcQ6up`s%OEwua5@9C&4fjR%}{6Luwi1xXJx~@(-@a@ zQT6i*RRNKt7W)7=3wJTBr)TlQ3^06B?DxS)uZy53mO@w&lS6tiEF>ZVDk`X3P(@4Z z&)$ua_Z5Lc?EwaL7xuyC-G1+>g~=nEk53jhZ=O`*@kwy$Ok$8a+1AxHiN4q*hNqJd zTbQ(bzQdEX{oeJFYt84B7gl$Iz4O1$EnK&vm_@w?cv!{Jp7TOxSrK-Pu?dqqTcUx6 zgfg!3m}9Se69-jH+WXDu!+l_}f>wF1t4%cuh9}zVD98NsXnaW zUgDJW0BBD{U_$`==YEE38II7>((x8N%Mjnel^+&=f_}q=wzfUcFHYm>Qn-t#4+H=( z!ISuF*$D6|uj|HF*@-hTO)QU2XG+P};+ptoI2U>v)5SlGvsn1IEIY4fbLA9UD73`0Z!TfD33F4}ESP?FIhg_&5)(S>B3b;et=82^F2CdLc`lrBZkI zA^uRUqv7>u9S7IXs@}H7NS;$Z-(6aJ`@1=SS1P?AstusaM4K?|y&_j#mf(fu{xQBL zMJvbt0IxLa>+!s54Yg|)QT=aY@JgzlpkuUF+wbvCdh3dWNdj4rqH)8l=gXSQVzZNO zu3sUlfvd?zBPc>WBFsyWg8j1}1u>r$KZp<GOuBPn$rsMH_Yd zhN1OwCD?3hj?A!w0lu>>y1kWao1UKD5rUi|8bkV@JYi}v(NC~cxhkA-MbV(igH+G) zLoH4BQ||Vo1R!e(q-iZ+CpN@%OawJ}Fd2S}bsvrblSZ9d+HED>MB;QULl@&9& zG&UCZZrgUNcx#R8z!Fu5p+Hvq`5Fge5zd3>(5s4DsoHvAHbFK zAi?h*=)6=@6BqS24Vq#i;x4k9ahgc=l7?na|+@d*eL zTH-k9HuX7{W+H~haR&ae#zUvrH2x^|o-X_D(B9|GD~k(r#||7Np~5C8q&MNJXaZGF z)9${$CUpFocI?{K)LMdAUK4QA6HOB}C*Z}7S+#smxBCxyt~!p~2u1wUieQZ(VMb8= z09!RR>rB&Prb!57_Ss4dbh2O?kkUaxLLWDRb}ph^09ohngu{rjGx*ys3Ok_N_)8>) z2vHqb1Ir{jyufLj>>m6FL|H-#r;(L-9H?%bJxx6E&#rLg_8&NO2>e{o8}lg1tEO5PTVM3`N^8Q6isY{Ai>qqSf^`bl z0gAmKNO%ac{!N@1bBeDx2xlo$~h6)?xuhfOy2KzrC*mzSD7V>;Tv{J1*vq9%ZZy z*hXWN4D(=V=x!Y>HVqCBcff^SLd#J5vR9(18(%4Yt_@^TZL#D%FVhgqEd?m)tAW5o z+?>$`V#AeKT&+ggb@v{I8YH2LnB|Fp_5)^@$mndMfy5+(cfg^$BK{uTo;FGl7>Xz5 z$aXHEtD4+|MJZr`(J}m6?2WCp32`tJKIS0y zaWT)>ziR>s$O#CoPfVQ1r3$HX`2+&oiJ^{cM>2T=@$JM0ut%IYefaRw(h1}rJ5KC) zF2Jq7&{D1C^P)}Q%&~qFh}s87uIacvZ63gRX?pjka77U2$uLB8ii`Qku084w{ctj32sc!dYF zv_mx@@9dW@aJb4O{?qS5h};r`m?YOEA{pww7gBg@i+9GT=H(oB&h6h;a*aQ_}Nkbj3RUKl)au1fiC?BQPZL1}IK z#HGfoM_Nx96XAxoy1I!CBO?<{t*sM9m=BBX6R5{JI%=Jy`kaa=_8&u}R$fFr;8k@O zY+pu>F+eGV>oCY1BGtta$~^$x_O2M$XTU#?AFr*c2X5G^4m@N$Eu)}?swE#c8Udlf zEu&+*d4RRfk8-@}0OCX#jzr1~L^4=4h(OVnk8&{%SvxkFb+FFsd`Q?Rig8rWP`A*) zNdu*ve`gAsZb0c#h%QH^^hs0o7aH|%5gngc_dW2StgdJp;c(bE5LZBC;Ebp!v%pp6 z6vF;Qe}j4e0$!kj$~t_wIf5M`f5@iBppgpkkrHHG4fOZ^7S>tK=RKU6yWh6t`^fk9 z_@;+%!lgQ|uiU+|vbfl}Fh4&%-3g!S%x<3BeCA9ie5&*C@%rPNHg)c8ni)P+nmKl? zv#n=O&w&G-aIkkf->q>lFKb-wcdX_Vo{Q1l|GB?#;h@B?*OWs+M& zwx7-EoFd9GRMK2j#oD_psAd`q@FfY*S$$tFx38pC-itEGNJ~-*qZN2=Cjj@dyh*p3 zRMXC)Z6Za3p~ifDUUz=>A(K(A`yfU-OqgV$0Pg_bPs9*|{(yt#u474-j&Y1)1dt*c zRzL_6GZ7$I!qE`kAj=Vn^hWVE%tN05+u8>F8T9+Ku5J0X5RVNEEb#@Ph$4`uvK(@C zYTN=`&j-Fk<4s#0?0S#MLY&^-x_x4T)pm2UyLPSBhFHuk)>ypOzLl)QGc+E*A&#zz zg|G=cygJ9EOO0Fqy8TcN7NACBJB}nv;1Gvc84y4sUldG<3yDYZ&KaE`ecVW~7^DT7 z1%)zyD_&s^fDn-1aZ%l{IX#Y$tNz&s5rWYt#O%}7`~uc9Y)(aY#%qEa}pYk1&Q;mXC6z3~5C@c3Qh`JsGo?=E=! zuH1=`iXnd;It=_<7T=rW&i)`1d-aGw<#u(^t``%ylajLyccoE?8!~wPHjp z%6mp%5bIld*J{gRV{{)`Tj`uaM*lHUn@Y=}^qIC4Zn9As(X| z6c!;JQ&ezYguq=Dma(ld&}pe*KhTgIFDN=%pMu<{$IwFNsE**#=Mg`Bm&mIG+^)z+ z$+!%sbrJv%B?B9s!ZoT100V-q?VK%!FWeE$%N9yiF^Hl+jQYUA2aH{9fGRhtaT{`s zHpu-$brN{V6HY*aaD~BJ2~9#Yk1)jWDz8j0YKJNGGd5X$i5dl{-s|e8uVA8Y{xbYp<635Mr_z?5bG2~XP@BoI#%rQcAS~JV%e;>lLl)lEO z;dW1V27#PinK7Jw280)*G;!bqF?}Gc6!HC6O=pS=a&dn;$rtP(X#L~E@r^O5;q44f z3!Y>}Gx#fJWxxiuBddiPGZdGkEEa%5Sw-Ihf5yrj>OeWE7C5Dqdfi>%#}HCU!=K35 z_i1?=^rppz2INoC-~J;*@SyjGTCkIG8(%UdGrm7SY*H=aYex$6_UCE z9_f}Xz!2nRjzg&qreeg?&}PV6C2>uTwwS>;V4v-b8KLzo3Fm2V-w5T48PJ)OXRUl13 zm3972kZ3wm{v9%T09P{UyD8X(_*>xQR@F}@D=a~;`YFw99U6{U56H!-9w8m;{K5>ou4R@-S8o7l% zr8d>h9JxzBqaUF}YF$Oo)PVY2H6RxrDY`#jhH<624y5M zM^KRH!W>dvl#j)DblZ~XfMF?HZ>7sp$L%E%?=tvb6~mDOjZk68@KPIl`|Kg~#%v++ zeGGIM>J_O_d;4S|tVm_q#PSiSx*Wdz~#0^~I;qir~}vr@)l(oU&z;r)MxZ?g|+UlcdCfxu^?VIcr`qZl9*N zyKun!Y}NaXdbD-w6J|F^J)kDUMd8a4vC(ptbj{(gr5aReMO6=XZBay96`f(wp%{J# zd)=W#FgR)NNn9Ib)Dxi z&Iy|OvAv941m%lfrniBtR+ueo&F6RtN?9`0nL?6Q zqS)$JL``i8?&B@XkAQmxZd+ojI2rs%J^LetCic**l@mO4i;yq1Un`J~=G!rJ6@=;v z*)eJ*V2dx6n!?fo`mVA16ii*GacESSlHwot1IiaLjhvNmq_{s|)Y;euLH>ik1r|>^ zj>jXV-Bhc2)f31nS#8p9iu%xW8?0ai`Z1Zp{#57w^EG(Ql)q3&p zxx>egx5Cz~hYl<)wZhV^J-c?bLT9seZ+CYqx`Ir6w=90Oud5|ny;oN!l9c%%ZWG4>M3rG-G>7okl+`#r zOU=}rq;+T8>)Y`Zw;`agybAi80AF7}zdL9gUh#Xgqi8R^z?1 zXB+R_z1z6FveH;=$+jeujeDkjzKe|)D<)#Ec#T6=%~MHaDi3beNu_>G6&S0*P`FW# z8O?L5GO9=f)PAZ!ky5VSnS}KsTi_n8*+NHU!G5~djH}@lMM~d~LHQ#6QG}K}FnBn_ zIh^eT8uUD+DtX+PFi^ro1%dHIhY5m0$Rvp}O%CO4;2jwNX|bwCvW7nvGO{*T2s*U4 zZ|_`OLD;<@*;w^l#M>WZFdQqOGbf-QtGD-$w?Pa` z(s&c(#yLJ|qVNPmm~KvJehA*C?J&0SBrRmxkWPsuLqUfxd>^q~VZhhUQDV zXudQe@9FgE8ZY!LT=lrBomp+U=F5}|!G^Gq7Yxbc$N=4EthP5TDo3rq&F6x)x;24FEF)kako5m2%k|L<6 zwY+ZA+<${#+{GCrN^DKY`r*kqVbKkNlnE{I=O``M2IG13@+8{`f%e$1U`u^7wz;H$ zh*Lwn($OebM=>=7sS~OLc5L2~C#d4kjnYozp+_@o@8`Yg@&rEA$r{`{~MsuH4y1p!KdcR3MTaUA&;;^*b zSL?hrUtWy`;3QygU2vs(RwfpXVz_kJbjFh?4(kkipkM@Vnjq}(*SU+<8#zq^!bLEI zx}d1hPM_Ec@H-M&-e?1w3@NWBfy0|Yq$K4RFe3hIZQYao7#K4{dJDvEv45`zKuD8i z|K*L4D&!AhyS2%WQV{>;^Bd5}#hd5^Z3~6JAY-c-O+MVwb_^s>0TD}FDdks)zarWM z79j#i3ypA2UU!F3P6L<-zeRb_ma*Rb?adoXWBCoqF?i(IjiXl~<~R20%xy53j=?F% z9_)U7_x}B3@X4`ln}>mcAA>h8jV;x9V+FTHW~{O6I!n{1_{To1dL-xwD0^Ask!vC= zi=nIba=Wsw&sIE_;;|ckS3g#VUImfHuV#_($`MJ`uT zs0JP6dD2qGZ5zVFR=N4LdNkjKZ!=clU%IWJj*gpX_k*OxH2rAaT70gHC$=w4gyFSa zHV#b(W@H^&Nax|`h|7+NVW$%X#gtqZ%^+^bDGbXLG;|3ZU^AN&Ps{(t*cCm#XJV^; z;QQ(LrK>APJAc#3J?s3klkc1vn_u|N0{3j;%LRVnM8~Bob*0kWnF~wx#^B1UO!yKqYeC-%_tz`GUE%-J824!h=exrF_6qmcOPtT(R>nH6oLMr?2ZQI0r88GL z##WTTfbXD$1+TT7R6xoDBwqo_Gx&SWsleeN4bJKVxRI?co2P}hCIHGu0jh+oFJF5?baZ$Sj2{l>ot-FOI6C%he)OL`d_R;Kc*$f4Q!rm zRuxrDi^{eQP3GT3BCi=KZ0cgw7o#(a3xIh;i~@!Syq4GnoH2y9IJq;yi!yIpkmFVY zl4$dFTjX#@R169Y3A|0=Vu1KYOUwM@pkz8y>?45iG{SL*e@lph{}pk-MHsspSqq5r z)JeMUdwqQS*woW0ZffG`W$yB=r-!&h9WzfCxy9wD)7(g`Gx%rDv?{asK zo_&h$qkL;-`C#kCv$A~lV(Y=>nOm~8(l-&Zo-;eEN~=YySEhQ^DjVR{Ix6~gl$*h^ z*+UJR81r@2w5 ziEwxH=#HhOQH1=_sqNcG_ifoS+K6scC&VhiYLn{Ulr3y3mq*c<8XZsK8aO@bC1i-{ zUir%ceC3mxTcP^>)hFM8-K)4HrBhT3ugS93_JAutSuK^^9GlJqo~^?Cs>^}iux=(6 zi)~D_B{9D}MHzR(f(c(mN54)smVkXYiV|rT0}|z1b!#g)$Q$tk+w(tt2km@IOuU~$ zcFd#k$5OFZkiNQoi9iJO;{Jf1Hbq2b+{>~tf+j{NRPU78rftC%)VLmugadIPGUK#K zOS};vukc=?^UNqx_>=uRi3gdxl$3m09u9H6OJfK;NJr0 z2P19AS`xm9ui<5;T$w#VrQ%+-)K6sn_%eOYj6ekw{ggMHt;x84ntw%l$_4av5ehYFN^7VAkNVA6w4X+BZ3@c+>Wh`7Na z@D5(llNOf{b##~{kubG+4xl0xB88gO^b=}Kq|iua!l=Oe{|pitz`}ym9FZ1+cp?xJ zK`b5wwnlWFM)wglh~g_`LIxGkX#+u{vkblWmR1?-^D0O+P2Q-#B}E`o&O^B;)`Ghk zfLw@%wSXn^=dKz+XXk}?(~_N#npWB=P?KU3`Rr=G=5`+UfcI_z**GfW`J=aILVGvv z+IAZWTkqnQ+qZk+w7q~q_ud;H?}fMaLTCU(fL!lBXc(H_s@KNYpv2+}B_1&Ci2C!P7q+`K)-47ifG#P`C{6Xdg z(8~tw@}PBOV(zZ^vp)dd3HPvg-@^V6kTA{;WMpbT8Yc>(K)^5d31VF~Du6bFSTp{X zF(!ENco57ov#=}>eZD8OJ2G{$?dVm+;;V-yC$B;X?kX&Mb;thwS7FtwE3ce6bF~*J z-Kz+~53fF4V_4?e700f%Eqh+Esv8=;*SKmV7;C^Csgu`wUQG2Zf+$%qhLWi-%7*4% z`b5)okQ!F(?Aq5gFZK`y5E&@x2K@rNuko;kcC0kb>3N!`f)Turjo<1!0e%5052=rt zNB`fDp---CQq3NaT>y+L%TPk$!BRuoWoY#_0$`JkaC8ZC>a-tg!Gb@B7NVhpHb|2o z&>agXLJ*Bk(J~>&R2LTHpS|nCt$zf5D}(puutOZ8xQUD!WEYm-L6pEIt6!3Tgpohm zpMg}5nA}+>OPVmNs7o+?JpM7ZkpbP^k^zTyLp{(Ie7ZZO%E^fCw07t@9Ymy7UEc9W ziZ*6K2D+2v(O*_I(7X-0y-b1b72gUNU^ndAT7(K(@!jcAsA&i3=MH2lxu?|T$H8J@9b=8)`=##ix%U956-bH)+;?oEhi9bEVow-Qkp3_eq z&I#{6@)QH06VoT_pJuqs;!|wy*-xS5x$je(6XO?8hfglr`}Wz3C&Q;N#zm!L<3tNA z+tX7kE#9#@-+@C{*8Nw%hOGJS_cPuC~WK&ZO)p8oyEu7jafOj$QCwD?&2^8%4x6(8WVwfk8+}sI=H77oh zHNY#y$yPe+_*1D|do1Gc@xeOn2dIZjx|B#kFVYUY!gP3GW2_-@`FuH(*&$`8n=z~y ztn?{s6)5^@HqfC$(bO?~Yy+}m7wfxxZS&@_F^2QKcy{Z)OIIhM2+82SdoL{P+`he| zwbY$0bOZW}d$+%%R)~kPE|zxHs58^knonz=;~T6bs`yPMY_I8&eEn2zHRmP!F(bN` ztaLb6+h$mEK^081cpBOk@E%1+L==vxs;eM?Sf=*!z56Lf%1LCM1#1sNK z(f=4h0}}v=A}{AaAzqe?j|4wB7Iz6`kj8EP}ckhBvU|0%Z2R zEwkI+8J_KbhnmXQPM*ZbeKx&(^=kU&JMW~SZJ4%-da=Dd4T-~aG9G_7T?Dt~ifu=oMBOd2|Es?5j33xD z@@#|~*}3WBwZ_(Gz%A_`Ubv8Jc-Fu*lv|#GUZs$oKO>pX5Ph^@;F*u}rEbq{x;A{F zC3{9o&CR8>Guf64!`C*cQ!|^l(@OOXOnX_JT@!{o$UQw&6Fv7D8{Tv85#hL!LeT@c zBU+EE2{7h#@V+%8-?i-v`mME733AreW@y=q$4q5oUF+)fS=}xJ1Xwhf)Z8IC(2v5D z6;Tp=Rj=QJ_u~lNyWK8UJ%o9?4Cfu3n%#`|Ax|PPXg2$`%gDC;S;i4au|6+apXx!G zM-hvf3M~mXDAN2JV|YuGepYK}0AzHU*p5y(ekwuu8F1&sr+|Cmi`gh((3%)+kKh#QNA>XO!?C zHww5#uxqbXqmj|cXx=-yIW-~K7g07;#uL==V!QI?(g2=ST9(zX#VIZm4X+oM+kxK% zZ$7qJW;6@FYvvTqB=SZk2$XV~t!Afyk5p7EuZFK!eI0KgeU+PQ9r%(V|q|*^<_SK>#fZE z)gxGp&%F2HhncfWr3wv3oD4A!Cg5)>4Isu*@h z&Xywia8eFvS%mUjNCA<2)C^!`;b7_nK61Iv+z8e>p$WKUqoXKE@O3}LxOH9Q8%o;U zG%j|3Rt<#F+pus{For^JBN}V?A-c}G_zr-OG3l=uI1b+F&Kv)Z#c-N8mNEBt*~r`~ zm?n-_Y2LVSa=fk0I#SQYxeMA3shv*Zjjrj3WZ$G8r-e`!UCaAqJ-naZ`s;PTb44{8 zQVlb~rz3w(l&g&<*jtcE1Hz+&dzIwViT6dUe>X&A&e8XiNUXdrN4OhJ2~mjkV5b10 z0o0+4ff@$B>xZJArDB=K^hc7cex;h{f2mFoGeB%~!*-BqJEtiX+z(l?ZS~G zZJ^I;Lm+OOJ9DND0l2LfDto}zwC(HZY3ocTK{IQ$wRCi}ZQQ%J-1h&62Zp&gv)Wo~ zc$T0?%9dS=kh@ph5MN{EYxQ%uHqx?cE=38L2NJ0MjBDW;U}>mjQGj+K5H%jA2FP$u z%gF%Mbmm&|?JT9wk`6|tkRbYVxjIg3)bJyXk~V~l`sWW)lnN(4fu|ZAOu_EJ{n2Qm zAt;ECf`Rm>5kiTxBDLOXam!OQlhE4$NJO~D4@INLHqsbhjP=K{sL!#{Fucj_GOXU4 z86Z!eP-o%V<5R#sJ-)nm2@Cm;cWuw-AHzD2Qxg-9d)pg_lG}usK-yH1m;JoPoZ zi=JI8&R0QbRO7PS+V|ozT(btnL4JpK@>lk!frZi`B8JP8Dd-iCWgD`RE}?9xLqS9D zSwQ)5ebzIGRNVp9*lNq&in+;ZfO5B!frhxjg<2C_vaC>IbP~T327iWDMnbKD!Nd{# z`TMlPFTCquJ?oEQQzWu&ZB2>9_OPT22#zL-91R@FBIZ0QGz%On7{CP2Omt}2D-jhd z7^WR>C1W?4LLwJSi+(MSUetS7)If*BwuK1(1BfG{h~TNVkPDOY!>YC0G0)i#j*KhF zgdh1n^!>p1N4}rZ&i{^o9(wxZ4?{n+z8m_;dT{x*{H@s4{NdPvJiPVE*#7-bPG7$K z1n1#NYd-%3hu{gkv+GG$jqSY)b-@Rhp9136a zE?{ag6ws0^l?HI#GJ66E+1=mQ6OIzOYoXrFk!Ufiwz^{7$9nvsSS9jSQ6Cb~e`3QA ze-0HGytA3DqfW*N^R}vNSWYv42fv*Zcw2;7fN&hEuL?7 zEYlg0LG_6GM>KH|prZ)kLm8`kX)6JVI(JBjaRZ+CwT0lOgl1&2Z8Fjef^jI#ko_Q% zP&wyEO@iH=Prv0*7UujAG@h#)er>>!kRUDgOacMKgh!y_)}UU56bPK3U)FWl%cJJoj>3~{JrR-1<<>Mi~~s5B;<{IkOP95Ab^!aj9GZW zRs|Y7f@f4S+xRF396HXM$=Gsgw*(18G6kj_y19>|{|jY>D3oRy6-WO-6) zO)Dn&SV2jESdr|GKw%uFdg+j?w=+_`X0v#>F=WX)h|a+oyN#~&DOnF~1CveN_bfzn zkx`G5yd#20N5>mNC@CN=0CE6QM}Md*I)@1cCdazQrE%Is!EOjbB@zVp$`mzhiU>(E zAKTQcU?3&f-Pk8H6R{Y!|8S4fWQmj_1;Tv++fFzD;@6q0?kN0l{Ma+_k#1O7e%8r# zjy|KA|Fb-oFTQg7*(^7k4r@oQ-q`DZhQl1Q#F=Lc+`^S-JGdRb&qle=TDi||a~qaN zTZ^}k+?cuI^Ie&_apZQfb#!@ywsGt60f-;2>t}Wl`&bnWP-$pVBa8}a@9XYUl+tkK zo&f^;ka4I=63LTS{hy`ot3*k)fWHa>B7Tp#J@PqNxLRGKH-m3flZ5AQtantE>j{=o z(yBTi?%>RbfR(>S-XRC){f(0<(qzEep;`?bx-l+6j#9@`ioSWt<{dy^Ww~9km9X4s z*!SmAkHR z#-`2AG;}PB%#U5Qjs^JfJs);F@7xpiZrQSs7legkDzyNKjs-23TL?8YENq*eURXST zeqng))~VAlOAG-`u!!4_^IU%=*P6+3-K3O2^|Kq{vi z`4pclh#9L4*kxN6w1*(Xi^;O6LhU9J5zfaWz}NjMR?HYe)d6_Q_ zCzE_`<3@hrz`g?)E>sxU=Z+ja0zNI5i2Wvivl5Oe%(B$Zjm2v|@lw9EIYDJ|j6@Cv zQ%%)`T#W8e zq|vBoD8(q-+qW2IWOdWC17~0}vcTh&Q?TN@Gd{Fvs9TRsjBo5Obqf0rAKtg?*fBL- zDyc~R)LW-dt4RD*tedGw{8StgGz~2E!t(M#)f1^&V_?sn*FAc`0rbi!Y`+}YBcb2v zS{_^W)%Mrw)m#nm3^Gtgb+#I)*-?e}I8KMEI#^=k!xm^Uz{J+7Ky?F4f@-Vf*HKN^p&{--CQi+( zcC#MjGqdTD#Lw=DdYC~uP$<5Vw?BiS5w@VK=y4^zBBBa z`}GLd)mpAUs9e~xuxVsu)54Yu%E9__YnSHqoOB57S4%1CUF#=+{bct$-SIW=)lb+H z9GEqzPx^%Bn9p+t;mY=6MKuhph8m)NsN5M8NxT!`J+41BH9xXx2#~!tTnlEaWVH$6 zC^Q>vS?sZ#86s_KG3;&Qmi^Dca~$T)tQg9$Ma1IJ(9j|L3jJP-WNjj8r`A|3_D?2I z&q;y0Hqb=ra{@?g2+k`AKzy}kB4d+4tLX6ZlwxRoS4R|1z+wIJFM^9>2aUS@$`)1$0eR~#)f3u)?n}y`Y z?3<4s&1Mscrl#5BhqrH^z4ze3(rhhyyC%Fp=k3g)QP5LlN62=Q;_B-xx)qsQXS0ti zcOs9(1%OnnzY_2x?k@w9i(G4fLOcdvHQ5+ztzsmN-@%3LS`nVVE&;DG*+o;z`=bJ< zb09~<61@!?78Fh#NV)LHX$^wjB11Du3j+LOM8U3+c256aB9dQ6_SMtYCDpzUlw01@e4q@`jGxOx@(2)~G6TNm~&! z8=%-Sn2N|!4ked_v8d(08fs62_f2SU{Bh_~NyYlS{YP@XMQ!SHB3xZxM3I^lb4!yB zl?YDMBSuv9>#=Y?xBYP(i;QBNaJxFG4YQdTPJj(Xq~8EVqJn|B8QnLJclHj>z(4gt z@A2>__jbHG)s=49T^i2q_NRTjgL{UDKLPdZCs1MeWaaox`1L1{vCDjtsj0Xs*Su%? zHT#Mb&MV;D>Y&0a!oks3T?A%Hc%`zghVoMRB?iPrPaG;ZQ?3VBe~W&{Jz#7Jd4NVC zmHkzm2s#_C)FC$NaftByI7|`_&LR)3Ke}*ZXwRrkw7V#Y7(=uK0gfjin4oV+g9Zsu zKvjS2;*WGpO?nyrXwZl_d9<~0Re*6DL@j8x5wVXIA^k%|E)FRHl5z2GKymJm6gYqm zh~k3-^xIbJqzF-+OOVDwJ}Am|E{hZ}r$V{e(a|s8MGS8!+cez@X{4qkhs`(NX0y+_ zk0W%Kcum=}fj|I<+2q0h0Fr3jSop5mxyhd4i>p% zczns}!Q7=1C06@<6mqI1KN^JpmeU8xe+OlK6v;n5Me@J1V)?wJUmV<1*PZ_WgiZJ! z2535Q0~87~oZT4bB8_?miQiVV277gTyVd|1Cp!n#%l{z)YEFWdp<82Y35FyYlGTkS zN;D~gl^i)>6j3LdOn9n)vFbc~#t#A=a{|DErA z>s$FJj~?8=fA=mMhQ9Og#v57+2JBBX5Dr@_MA1hUEkOa0Aa{4_CTV*z;NRNCu89p!c5561H6b`s$(I92Wrzz z1MDKF6fkt5o2KOKr~w{pjOtJZ7<(9@ll1^MN<%~qso`BIxrk4$8uqw=yGN%69xzM6 z-?!0c^8<#);`db)iy{x+1MoWn{>=dh48oUy7|bO!!Z=7QgT(Ps^+ZaS#5#ydnhI1I z0wXjrN2gA^SQo;eCIALDjOyIC1;ivsZfH&kmqguUJAH@1W4(xJ z>#M%k*|hb$zTfqIFg|(X+S0jIj`_#)aDyN9igsw&h zX1R)KE9D+F16W<>n%2whN|g%(Ka9|iqr^J9ZpRL_L-lN}ouQZ3bc%2@RgTU}V$A;q z5=yLV^fv1j2z`}Fg4XoW2uLr1DqESzrnusut*edAn!TkU>!-qC1BNNZjgZ`ucx8)U zHeg{z&jhIrOjO!_5P$MoDTHrB08Y~PLIdKSOCm-K`L250{a6&_U5W+nP|*Kidr{Hqywx1Hqr`wD4kMA}?>T0xIX1+E`bwEeliB6SaLa?UI}{I3vgd zhwdn9hahs61Yn{$7*(wfdT-FJAEU2KRVN5g2U&ypl{5zbe310NbfHTd1XVELsHzUY z1;T|opGahxAlR{b%zk;j9-|0D=(66B#ptwyBBM2GK-wBzVYC&oEkvp-aY$UN_AlNG zi(m(g{0{nzCe0!dsX$_*u~R@D!T>4_SL$G3CGjysvY zzWVw*82R4mO7wzF`c7N8GaQfKfpF3t*=ogP`3?}2ckbSL^U94kmzKuwcc`4KJW$wQ_rbF-B@%Q7=$$2t6^$0EG0=Hpcg9O>Jn;26 z%ZFjh32w6mr7-{!AwH1T>z8uM?tr)A$imw=gF7pts@-N8yzDMtXCSkxnArF zYVs+`c+Va5!}%+Up05Hv?lzo4Vh#yrSht(Q;Idg!K_I95bujfgwqhYe1Roe^Pf&UI zt@^NSNAX`U*o)E}wN} zi^EN8VOBME_I$o-cvfA!ESFe6&ShmLSsNBb`Y+Nzv8G0#V*p$op)WDo$8-S0!hXa9 z{2b0q%||a^pjo3=M?_G5mH z3B2V7jh4Q`kT@5CUCgv`ZFNelfy?6mY=TQiXnK54vvxsiM1$Ox8q%|9+bhvOg=P{B z{r(U+B7?5OK%JfEz;mKg+_zvLRI(~*CSmwz^CH%cV0~;Sh)x#8W{*@C6z~TjlYvI2 zqGm$=WY&xY1HkrRnZZU^QFCNmMPU&B>B$6b4yP#IN0_SP|A~Cl%`ypDIRKR1arBa} z0iA{Yzz3HfUmQB~_{7lB$FoB)f7gevzuxu1lgE#{&^zqfJvB8n)P?S0SFW+K3-rfb zG(N^+dop>m%WEXB#&*yA?6G2I(Og?CWs_h*5_qu>k;09Rpf5Q~DS6L;f_ zV5;JADEh%iq`bnx3#nZ6_oG%rM?x9^GqtMj(G(~$@v)vz1c|1ggd><43z)X{0|LN< z&o3tW13hvs$z|&N7ShUVs{;e$5f7sY=|l@eQYf8MY7p>}3aq2s;$)jzFfs zf=T~CCVc0vMTdK&O~t)*Wtq$#O`tk;$v4n*@2)F%Kx8&W`7)-d~% z)Br5cV#5zW`RiG}z1;+1q$mKRAcEdZweun9^J0??&E!GcNU|6?4f+Y)?}R29stdrb zJTgNw0NzO1#O-1H0vQ>AUVsz`iVa0#+a}#3K@73Z0b%r3qrw<&fSF1L@FU_JJRuxB zuybPkdb7~`5GH^4t(8kF*RMZ>wI6=G@Y-t+VeW^x{~x~n;KAJ7LsL=vwD&_YJ4fl+B%#S*8TbI8Pu96 zCZjwL&QTP%h5?}_sDvwEl6_QHmrJGIg!I+GenqU?x>E@E#^j7BIK2@GtP=vUaCL)# zD1&>ZA0rN|MB%J>6G-m{A@0~ys2ASD=JL0xLvgPYC*)D@*7mJOjyyW`?Wu1M3_QX? zd355Vd6brqj*oo!;Uk=vM>m%5oLjte`t&0lmq%~C{r2uhyK9dOwUlryY7Ps1W%VRg zo>m^di7k5dLa~cj!ul5vp%7z=;g7+=&w>W4@cJ;8LUn)x$b+s=!ZNef*YK*EQuR~x>He;5F-db~`+E~_v7aMs z8YyelVuc!^szo@V#VXF^P2`iPBc8nV#%nkoO)Iawvarx}_0sK2H*Pc?TfDNkw8XN^ z(F0qyY~IXr%ze`v_HP3>d=n@MD93DUYJA!8SaVX?q4Ca&`w7|)FYRH)n3xuP-L>Cp zu27kHcohfLpzd8mZSgdZtc3N)SK|fCULr_WSf|Q+d_D=;Um+83kPTNBnwV*f^P2q@ zQvPWj1txq~$-&^ZVw57Pb(Wn0d`P3=owV^G!=$^m(;3QXneBKVFu@@oh z-{;KnpS}6{Y3}sh*yQJv++_0eac(>qoQMt^#+dU&|6Jzejh|zia_7#^2f0C^_~_Wl zlf46njvnpo*?;h0OUM0-cdiF+{+qj8;4b&sUGCq2iYmE~{AJSrS(4-Dqn}0j&!XJ8 z^H&Z(?{J?v+@~A4`HkFX_*nd`$bVM+b@4wH{qqB#4e*~0aG&-N!OfKp?rt*bY%C4{ ziPbYu+~`D;ca^p)H)p;;V(;sq@n-GV^V;?6ptiw3Jm9}M_X&OihmqQ+-UoWhMx&J_ zB08BA%4kALPft__=r|>G1fQ#IE4?r;X3>r0ro-zWU(%&z=`b?kD3d-ws)M_-+)p(z z)lW!&qqrvN@+_Bb;flj-`?g{4Z#JwcVlvxoVjdcfanTG$EJ%pkC36BYxE&ou++>4; zK)%r!-sl!hcMShe-Uipa1&)*UIy-=n6CA1M3LTN8jm_Qz3Fk;m=7SvR>u`Trh$4Xj zrpCq@LkkoqP!{^braxRXKzGwcpr!!Y<%SW`^%f173p1?iH`>94B?zI$5RM<(GW1nV zy9(i1tSCw%E;~?pLzoV^Fi05upkB9L=QL15kP=|*xBvH=c-2!gDR~9G(+`mIY>W#B zZ|C_c-|7x++Zo$CbyLvl zPhVK4)J?C_H6{$qtX?rbJ-Gi~8kYw8`HaUmWXTS2W1C{om=X*k|xwaNe`64((J zmT`!^jmpBftQ$&PZw!JcCuao9g>-|Z8+wKh#U;NPvYeD%Ghy=UJ$wfE$ENA`aEt+)DcjrD!<;d}4(A-Cz9`c}NVtD4U|SN2rDQ+?tc5PE$1?Nv={5f;{jfNC!L zwIdqJnpZC;=KkeMeN3UCS|C$fg_X#3hSrtHtbI~YE61gOmflb#&r(FdxEuJ_QOSI* zUl4fkEcK%Nz%m>75HVrJ;)*}7WAn-4>)JvQ)UeoLu|V=FpmEL*qGZKZ3g^J4{=k5g zN$0}>s6#1t6!TzUKsG*o0+LcoNI*>iH~`#kEH%D>Gr@vH0oZ!ti0HK-`Gtm>qVJF- zq~Wv`2?VtO)CcNjOlm9>O&v^&3_&wMn`nSK6U8)$Mu5&#MGRg1AcKnFU}YeRqgak= zp-K({SNR)ouK6o{^FGFBdWrFw5+d(+$9L@GxY=1_ai?!5#;uR8UpLNey|{IH+IaBr zp)t7mEJpLj!m0UrqZ`xLdvCm9G`F=G?U=#}cGgZLjFr204GatALx!hjSv?yRJ8FyN z%5(O`n(w{fsfV?}QSr=J(^z8_(Q4Hj>xmQw@E*ZCMU>hK`T1+gYq1xQ`>+jFx}M5j z6n{bqeI7W)GULlxByLq7w08sW4e#=|B? zulS#^GNLGAb`k*6Uq-0~RYg4*gHEtwfdW+&qm$^tTFpUGEVD(|*FVIp54uS|vT3&K zHdZl6A+$W9byn3=4p%YqF2C(tzE6CQ$G1JWcjuE&K8g!(zj1fv=*^pp*Or%$yb_LG zJ#}deeDGMvnCUCGXjbQ?`Ahsq!ph<+u}jmTz81@B=?hI?ioLS9B7CGb9B!a!65Bu* zi}$wneyLnEWPSFJ6;62eO;A0zi189yX5f0<2?GTr90Qbfguw&VKTzGp=`zNsP|Q>B$(N)l2pJOII|I{FS;#5Ju-wDu};1jk{Ytr zq~rjV#SR7BvjG{ak}Gmr%)XX8h%9&;&1Li*IW@N4kmsXYOA*K6mKYYp-t^?CEG}$=!anyS>!xXt9_a@Lj+4>p||L++XMTUpI66&Rm*1 z_WEG%)n?zVTfXL3bAzuRo4a&opKk6s5H<;)wy#%%Q*83Q>gIAgPp`M zU}CJj=EArl1ixN~tqL_j0%+;-;aGCkMCZ-6Bo`cetZ1X*#n=1W5?&G z_P>6tt+%)9_w3Mz55C`A8hrABX1%e<-4PbY&wdh{-+!zt^kDD<%lcsOL8$B4{`uG^ zXU7+XJ9cXK=EtcQnVaGQD=u7@`2E z7;!@mVH2X4My{G4)NC&K$2OpqF@J9IR|GLdX!vb(U#ND9&G~U6-IFp zh*#Ft&Cvn~iTfgQ5KCaK@^T+AK?i{GIEEbKvF}}M{e41NM!NgWx9?88^6|$jE8R#- zyWhX^5eNgj-&uSQWP#ntPrEOkef#b1*@=nnBRh6at z-_A6rPZ2x_v_8TUY@#sqKPu z)7g0yB8ifrVjdI1yq4yCQ1;!UWii(`sJ@ZqyoHYezY(&~OF{oS8r=mQK(oO%1pFS3 z4-OGB6HTyJFv-DkkVYH)DL{#1F&}1n8t$5ZKrJJqD@Q1@Ca4GPL*Hc{II4|4ZnbGc)&L%IE1VtY8OkZ?Cw zR=8`gyuvM9y~@RNIj$6oadtS&K`4Pkzvl|KrqlnDLqjKn&db;QqY4Ku&nl2gkfDt( z#F`i^7h9V}mfi0_Pn||PZg&?+nmgy|AE=%Vj7y-RiAeyB3_M6#?Drk$acG9 zXR+zYNjx*zluo?OKXZD{nbR|8PLJcHvv!vMGT;5ZSA_yei3w~2AOOOw`|j`l?)~m} zzdNevX!!_b>|r1kI}>x_8)J%DG_>uEsmmsEI`j@qMS$>?g~AoUM_iU9FfNyY+ko7TyG7O%AcYw{rD2TAd z8h@P^pu36QA$CV3OZcW*c4EdJiA}d@{U)fH=+&bzL>g~G zJ|kV$VptS~rig;W00ABQ6Ick3W1#4-RUI&Z4Q%YjAT@_&3s|}k{U(#TLY%JQ{~9=w z`OkmOP{m-gf`z$_#7G9*{r(2rkB@w}_s+@d*RPFEqzbiWELo~L{^8?~7vK4z57|Hc z{PQ1v@!VVAdhw}Uy{gS!J=Irdq`qI+ILeJ-VALDvD_iW_HBm5M?`HznX zQw!X+i9$13^^5k4Pkl^Bm9Vfd5|QqS;KKF{9nh{}OS zGanD$-92Pev2b@3nz=X1!rQ;!V0B-ZJ;FK3Dd}C{o_BnKvdp8ufg*JHZ**w4CrcY= zLpX|lFQjAG+m9`TZ%@q!Zy(~!baWn9JeH#ak~*!~Ps;PMiOb(UX+843ZBr1#lBHrP1pijD< zkH~XCtb_kr*3%1?gfT%KC==Q)RAbI+4z=Tv5$MrVltG?|0e1o@6$!t%Nc|hp;U+5V z>nJ4=6FuMzM=>#riSAYKeh+|EK8h;xL+HT%(#WqMCVq9~8zcXrci8T9er%0_iZsy)xy4T)#685?wAaSRuQe+gn4Qu#i9O(s)an|9OXsE) zlU7G;()=ljYVs$ zqQ*)?&qCcCv2ZyHvIg2R+QNqRZ5n1o$)P5aSU{3>T_XYk35Y>)KJrx&+~l-vXI0Ed z;ku54Gqn66h}u}u*ryWe-3&j z$UxVsG{#VU&->qBg`#;C#Y**~KlOz#R3Cfpg&WVk_+k~K=T%(O)%mk$tJ#T(DkO2M z)0s>a*L8K}{P}9R-QKKj-s8F+zLr@;!!>>UuErPcc~6teuyDk1Fw`x$(<#Co_oZMO z;kdvMKo$HfLq|Jk=kx;>IVB5$^qc8_6f*lsCVk`f)(rAo>e*CqAro-`V!B#D86GW7 zkP;CUEhWy-OKsZsMKl%gP6W;HfS;Gk=&WLVE`{P08-tPCNm5b*&JG@!s%0GZR)c<< z%wdoLAiEKbLI|D4r=kScgW!mARxp0;Lr5G!UHoKnxS@Q%@BiX&5C{*I5>ReF7>{7P zMaK6_i8^vnBl_D|t&6T4?Y#X-VKEkamAGn-7z3@q64tPUj+aF!{z_;7Sys%l8WGUu zxOf?ZH<<8C>jw7QU}VEcsJsb96-l-%+I50x_%~1nJ@PZ!{1+*e-tCGRt@{JY$zUb*ndBd^X*ou7K@saN5GukMV_jJ8^@zT@SW z7ZzTHAHG^Ey(^b{70&nSw_kbXRXE(MpZMM1U3+y{jqWzb>Suqq*TfVN>3g^R=N>(s zFeXx5l%Rw$9}B;LDhJNd=OoPs2n>BC$T0_07Xod<+J%0_ojqjs^Fe`4t5z^)7rHk- zK*jzj55&cbu$%~sGstJb2@~Z8erqVF!%{<5_@4D1BE=wXYKzf5P!y0wsai7H zj-l80qLDHZ^&4^w;Kv#)T8MH>x{!lLeFObN1yIMY6Jt54?Zm;NCaJbDg?fjI03cgd<-up z(W&tu=%2zp^n03Tl~!7m*t~+ABwsL)loOX2x*_Mv&%`AMubUSiADwpvdv*$WNg za`M5F;G7x5tav|FKqdf0@*x}ordy4+Gt;CFeRP4QgjvDeK$D50T=4o(j1OKbj4<%Q zPQdS_Z=(1iNw;JAyx&ypCT+dXD0(R_By(8ipaaY2cnoZ6`4%j302swi-iV{3P);k3 z=40IsAQe91h`ipq3<{iul@A`5$w+z@Bf?nIWoZAa*l1#YS9K@zr3Hu2Y-jhe#3iah zm{0s!C~qpzR?5x&8oGp#2tYlI7J}-7?h6J}B+nI|jf0^}roNDX*q1d~5|~Y?kN90w z3rnbMFCn#`?!}*y_AXr6=O4UsWiO4pbr17s`Mu*)yn~3skdx3{M<#+dB;o+(L+;{T z{RltJhO-$DK8O{=&!K_89y|s1YX?uK6W{V_t?L#fyj^G;Nz_qyF$pF5nv0VMZ8aPs z6Wmi13|ai(SrsH@>6&6!u+qWBK`12nR1xB4q?3gPi(YQiPid~^r;v@~DTs+ISNH|$ zwz?dW84a>VP`l!V6Ule0SaBchntZ5GvxIoNgrBl`U3*L{jG|v_m&PVrj*vQ4+R-tF zixkCrZXW+8Pw)#+!NN4Il6E3GEN|m1{t%jKq)K@|GU#`VZ1f8EU+Y{xyZH3e(zBh8 zw08Ea)V6AqRx&B!5o}4r^Gy9zVsHzUO0z#zXE z`pFoAtq6GFD7VG=2x5Idh5cye672VGU036-5b3EF_LvAdWQlNuvk^HrR^_azEZO*N zQB&sYWimkH|0${(*9rqwncsavSC1u;&06s9N`Pf7ZJ0^B5nR)d}_!kAC8 z{7LNU1*H|~Z6pG*5+Fks88{0P(xWuQHOjZ=_iJDA&Gr*ku}rR81qy!x}?@h~a&B zQsI7s;itynmBIPKX*+gU0w%?`NJD#@co1N2N?Bz1oX=(I+uPd@Cb7d_V z{07ERBT_0U_(_?T$X&sD8&A-Z81llPx^Bg357iEilVgF#g2_P9LnIkLDW#t-DqZlP zRy9+4$%~rN_ZN%xLg6vph(^?i={uppH`_E*k=A#%yUuJa6w+=ms0xGinG9FnEtXC}U#M|dAHCDs7w=lcyAR)o+ zDMbA-#YKRDwzV3K7zsx(lPuVsgKV!Yd?5`6U0QP>k1Hq;gv1}klsG>At@x<~x`^Tq zG(r4p`Fyol{D>sdaxe%EA`wBja(9yN(U5XezAT6jXKFsrf*hs-Es6NH3PS<@6lY{* zq&MgZJ&XuO%IGhT{Nl*1k>444t#{$qKYKyE`Q>kY@t1%3X7lN%Cnjz_UU{n0XxzM> ze=J`v-?USYV1V!DzyJ8hK6dk=)2DA5Cp(>+P~g3}cH+cMKq)u7tE)Gkf99E+&=I{E zSz7wW&2J1n%|X};pKkxpgQprk>brah&nUSAV{RXNrU-WbGTE0vKcB@-oZKLh9co2} zMODAJ>L2dDo0JF11a3+;4{+PzMu0v#-StLr5h5K436w~~=h0_Ert%B|WuA46u-#g& zqi9k@0b(EBoMOyo6mzDoS?>TJ%H?$oh$)cUxJsN&~(|h zK!D}IJaRbb`AJZQ=3QbHXv#kLb{OYD(1VL;?=dk^DnF_jO3F1Go+-5a(rjCBEhqkd zX9C~TqD@648aToYw8%h=1mt7_6Tk|FXf!@%0OtaUw+j*-V_25THb#je#w0qRI<%^S zua4t;tT4NRea?!f*?766_$_`BVd#3HVG5ZU=)GeKL07rNzk!Y&&VNJ&@dj6igMR?F zD@n+K1ZBboz6B+I9qg&U!`<5&sr76l$BSv+bsHn&rBbXB3%xAxobXmbo5ewL{lEKO$A-;swFs5z#Bgozz^w<6t8wrvl8zYULGcmhd zt}gT6u>yFx%9W?}9$xH?2-iYi zCH@0DYC$~IarqP;J76D>UA*d?ieY8XiJN{Vi|yTpR?pUJqM%lbf)aCmtkq(#nQ-mz zpt8O&vfj&`D$a7QTU^1|`%>)w|E7}w@kMa1t2(K4)taj6s zRS7K!^D(WA4K%V13VgG`=StBGeT(Pv5Mc9CQe0Klp5-lZe9d$}+y>Eo6@?ycWCeV8 z3aU)0s)U*dlb+RBRG%)iAnK<%t=e=8+goQarX8!qkXyEs7`rwNFQ10122&*e78dT0^r&Fc2H9*ag(Dc$1vWgViRgM45pRii^5 zqS32|)ARFJE5+j2)v+Nv-Q_3^u%rHgf&xqbKy_fc!GWSmfv(qojq7w0U&j{gNL@nY zRt<0`a~L9O$e2=ud_Box%*s}c!=l{8*8n}}ZcR3vx{%jVApum7q@2sUX`b3Aljw$E zJp`Zn%`tFrCv-#VB^0dh0z@L@rZByj%c^ahEiLl9hB*Ie^xte-cbCEThte{<4f6L= zs*btF1=w;qWAL%*xQduW6DG7>ViK$>oGmLc=8qu~?a%Cjrd%AYrPG_mJ}NwXuEM+I z9!Dog`Y9;WNrTG;?nZYHi%Q2MG=Meoy=|@-Gy;%z=i_`L$my&WoM;SK zcT2N{&y_Lg-bOlYO-uT^?yC9+mX`91nxh)fD~3dl7S~f_u8^DqnziWJd~z~|UJ0xh zpjk8r@&kC$H2D6fQ2*c8Ydk4liuYDZOItJ7C#T%8sZvS2_UzSXx3GL|WVx4_lW#m8n{>vUSWJGnyYnEn7|1+!Bc7Abg-_$? z0ff&Z?COM9V&Cn8((;W=iu2BHAK3hkYeoXoeDJVv=!3+BNgLxRUyUPpb;tx|-AHBz8`aJMQUlC``Km}6 z2|V_!A?ug3Dc^>YbSo!E%wn?;N8VomzUKXAekrF*-6GUqG;9o~Opg>N*P#M*t+$Y` zy;i$b<7?&d)N83*DL&P0nz^@Je(mzD%lzfu;cJiIdYpg!>eJ=i;nPna=E{-yx$A3g zJZKSz6!if24MyG2{$;FGyhDmJ^aNmRX7sRa8-`wHUX~i(?Pu|L{$*i?J@20u1rH=7 zghfsFc&I-nY%ZasOn0ebyR=DZH;H#Q1<_Z~m_^({;MM@k{1OM664M8?{?m3tDV*~8!C#uK6Bo`P1> z3>0F|^s2>nS_gdzdoL5ZesS-?od;)UFCxHSJh=br)r%vM$i~HueyCz+0`G>Ba{4p~ zR(Ko~nZUNYGx6-3xsI454MG_`oPWU+V8soErKg|Jog0Ss7#8s&FSS-x<8XZo6(TgW zz_F|y>NqJ0jEue8(9#^A2T=^^1TuqUf{#Im6%S|1K*_1uA_kVLI9`tKd<)yBS`~kI|b?8kB#Sav4p!6 zMy4#5l+yoquqNLF6a_csV=vu*^@aQ2`(Am}u7mR^cQ)oWwzp;I{P1s;`;w}|_9SDH znemY_v_afC3eHH*`)q~4<;je<$s2|l1vYK7+k(ga{a?qj%F+R9v!k zqdBSBJsn|5@)D3iG_iPfO?OI$X_MY0=mVL|ShFW#h zidsvQG~EGfA%ba-2x?iyu*%qRBxotZD2ee(lQ&I<;-6;|#vdKI-fMld`M#46U%J$M z;M%q3R9K=xm$QN|g||Aa zK6E|Yt#S_@3;O<)E`^yA!z=Gjn(u_87h!TWkHbYLlDWXpIitr-p)!n(!5{vM5mTem ztY);Zl~_gvpHfqLF241Uy$M7Qm3n-@=B#JZ-8%;2ak#wOlhP{7y zM4Ewg0%VZ)p^QN5-v{O&EhiH12hF5+zv%Y>fm&h@PZuoanH<_X(RooecaU^wSaxw*p)70$FPU;=^Ka04Ss-cHqr(VP$c`6&P#*4+bq~0<}A;R+U-L>MqBYzFz=;1W9CmKjR<7-tj1Q;h5$f}M?{zs5QV3smCM|K9w$2S7`qO9GWNol2KCAf`r1jwc*Kh`db+lSyg)D(Ha0e1QO%NORp=Y=K$YQB5RJldHn0)QG^5`E=^bF6;dC09(~gSHbWEurCogC=*TLKMjwL%t zc^0w11_LrGBZ2d-jdwrw>L)(Yedx!2?E3X?St>wJtNZTD@4Niq zgWVVJd)IyU-`{=e;Dv(=7rHfcA-k)cjpr#)r@QI?Q^mtNdamIUz3YcCfcKHi zxLzx|y_!*tnXF>WjA;fm?DAOA%z<#L%LOf3p|?r2c4{E5#nVP}s*OgEE?rlQhke&} zzb)lh9qIxd#-0Ps_EHtxu9U+p;VbT}a{&YhGi4&uyBdZa!0I8131~&2#fyc|7NqU4 z_kc$J9S`kuaNVGp>0+n`XfxxIFF@fAB9~xeC>WUlLDEQLzbp_TS%J|;5$B+oQ`!|YJz`ZZ2MxNtxAjzP!VMSsw-i@o0rqtjQg6>Ctr&f!kA*(4u zdKs%uEz-lhhE+F|Xh+e_=6Q4&vaTL=KIE?X2sF`ki09+J!wnU2%IBEJOpmJy#0oU9 z-8A&?EE8OAeu_NQk3;tgt1O|ii;7E?K8o=xbD8F9VlgBrwqJ7ue;S(G%T|n!wLC)n zwSWE*;?nQKze*#Op2Zc5E=}6_Ho!nP()W|TMPFa{R?y-{)qis zIwP~aL=GEGGMN@G#a4S_bhJgo;&ZLJ;eS=&pv*}rBW3@(FnK_7aqJ(){@IDJLyoMJ zMXLa*SR6exQ<$^Ff@#f$7!*IsAe&LFNU+}>1DppyMmaQ`dGsi4HPkE)ZfA6pQ3@yW5?#iS}<_r&Bk9aa7va2nC%LK?l8TE+|2-7-L6GkVSvlMT^- z$cr!R?cq5Q=KDWJ{t%o7+Pk&gYZyt|w^hH@<+^K&x8}IH>02TvW|Q@`>1=j-jRf_I z3o^K1pjh`uyaS~e+*U-NqF0?*6Bq=Cv)_R(LoknB!D>8Ow}4htKLFj~g?OTLtDMND zMP&5jP!_@(8y>kEHc+@RZbHeI3mg{AaYzyz7X%Gd#kw<%xirb1$;M+-GZ#G+S<>eX z4mC*(wZ&I1Elv7Ay&03Nn3O%8i1FD4AP_nTK4_erJxe$a;g5ee^2f;2XoJCOFFUPn zudk~OrwSlPUD(=EXQw76Kn95-X$>DUou|R04)5vy^X{K2yi$5Kc)%f?)+gPbU%!UpGQ%XUjeeByGC!j_X)W8NI|39`pOV!LVr z48Wz4i@oViPVsN~ulu|&j@+7geTJV|n7TFo`Zzz{Y*U|RZb0Z77zA%!D2$PNg zBlX9-iBJbJKC$ZH8UeV1V-631vK^h_;5`|M(uOzm3>Kf@8sFe-4s&bD8r9nubZ4e$ zx<8NUHLOr~1UnA?BRbHAGlv12f@IAVp1hKmui^mg)9c+gJbnk)g(uZ_(jK3}4sLw4 zSct$EE?gjAkZ>OU0b5Oor@IO6U@8-d#H$+{@ookBLm;}vld_KtBd+()JM)5pE0AB{ z<)Q0<+2KHUfRNKcu$qND0d1*husC;z{|`mse?TkC^|P2+O7IyUdbkQ2siP|RNl+K~ z?XeCn4#7&Wj{AXbO(TUu$isCq#%Y58^#@mg$tUNgE>bA_n##w#m~~@o>+Q+2fL9YM zM4fa;;}HbOxr}I~*(vy2)GXh_XGNR?^o}E4EDM-I?mI!5QS zJjw*jAOSZHUn)Tc9XjO4hPvjlL&|m{B!_>@o93KAI=z7u-N~?K#Nqz&td@m+DStWh}^g))>~OxssYX#>YMlP zQudLacE5MU?o`U5(c|#r^r$_sCk5RQ-EEa`Lj}Uh`Z5;KeEE zj*R<2?dDVjLX2KOQ*{26ak_E= zxg;XF>kwzlVMP5L{Z) zNkd#L^5|lNH_@J)K7;J~D!3AH3T?4#xsxU?CP4@fri9pnvA?X@?gd(ydO# zu-}f?)IFkC}_?Yu1#g^k3_@4DahEfV!^>zg;^4o>O5JFGzE8dAy(lOp0V) zx^xN8JLoh0fU(6E!H+9>J6np3q|=inNU5lL}2PlD0>TqvtPc4BI02vsBEksWg$p-crZee6W?twVtjnCJ(e0##) zh@}NDEx9fuba`K6Wy)0AW3&w7fo>74qAg zvW2QjG2_hJX zwZH#NYA+5#MR^hvM6 z`2tYE4ZDpxq9B=b#WRTcv<%4nyy5M1At;fU-ksfE%gT0KuAEAu`?8s!*H=Px*M+lZ zp8$Un8*~ku#rQu*e*T})Po%9oXM3$Pv$fnU{dJw!$6w#!cJ@!*I`R4m{>0iX@pX|G zh1v1_H9=V0AD@lNMW0@D|5~34lD#nJBM1twexd)6Q9P1IpcBQq{>T6a9chY@M5?*B zb>34eHu2g|tCm)-UO*}s0jtaOau|K}?QWjW%o*{-7+>}rMRPeLYjA3ux54DVU)s{0 z7L=tSQQOYGR6@0{+L0pSn{+j;@T9!PYmY20TY|ebwU8F_QaDe79Yg;GhI!BfG|{-!bed5XsXZ8e!_{AcBoi z(ww${?_2`)Q*%LYhM0`OmAIM|l@BG|Kd(Dy4DIHH3-7J&xVDh$;x@&=Ukb$D=mk6K zDkj>@!7*~Di382O29@FZy-{yU)Q3^RDoZt;!*{dT#K7MKhml~7%U5&ohWY5AF>T;gaOmOtMem! zy~;*0=1xSLYcuE0xmGQ!*RW1ydwSYEbz*JJ#YS7%?MIhmcj*A;g^hsbkewJzAE(#9 zz%tB$_YjsGumLbRmS?h=6ev<3#p7cRM@|(aYrk5=s=-tiF$mg}SlK%AX!bm z26ZFp)YO#JQpZ)aS2n=mE=tAWa7^|gIDu7YL6HVqkuU*`cQfk*CPLdvx*J`F%Coy4 z%_B>Fo-2;?2|!EWy6V=hTuX6w#4QTZNVCFK3qc!#gJS4vrA?-afpr8Y+|%qSS+1~) ztMcha`h-}-?NvZwz6vN}5=zLLF;{I(>w?=snVJUipn2iKyHoo~S12tYj%iLQiS2^B zzU*Y^wo=g%{6|=-6#5si3HVhM{uC{@T2b<;e6&B7Gq4NUCh#9-5#k6lAQ$#PFoD~I z1#5#|FdQiaEADBP59FhK9GgvJnr)PooQKvKR>vkasCgg>fzXvC=3;^$kD#5i2E%9` z@U}n07!`~eh+o5iTHZ^=vHUQfYC(ElcIIbZQNerEA|F-E$U+yH?dp`E z!#uS$-xo5Q;HZ;%;BbL?2;HDc_IvCm-=~aca&M2XYP4^RKRGeMk4Kv{2S7PKCJo-$ zi9&nz-KPR)LfECY=iU5=qV+vZ^*KHcY})E@h1EE^(z=gl%@>sKV{S zO1do|4+yO^6;ZMG8F^3Ta|NsgL~A&n*WJkpDZ;D%OuaL&fr~Z?*Fk#IfNgT8V4L&_ zoH4A}DX3=jG;^J3i2VEj-KtXW&U?iBZt+X^&5&NH0i;8jZJWP97Z2Dwte&AB7gGNqAcTY8Jpz#o@Ny}zIiP$wcF`pNN&1`NX4YRao zd{@XVG6=Ac23WSx7@VjdBLDki=x5Hd%_HFT)MsY4=I^_2>-5~*mR+fALFr&?XY<4f zVT+Is8Xh@zvii}7EX2-E7?;Bjw}C;or_GIfg`S_{Vilh7j&quQg)`AgQ?NG_JC-0E zTGi?p4P~{lHtszU9I+U<9Wd3dX}1)yr0V26Uw?EjD^xbGB(RL@KfXlW&S($u8612- zM3LTmR3YiO4meOBfUzbPJWt4GiEag7Qu8YM{EcW8hi!_V8rZBKqr*@gdiy1{2#7XA5uv;6nz4u4&?-+klj zK4#Qy!^5Cy0xWd!I~1hX`0qzc9+))IOgU~tffHY_Vy4G|OglM=n?IO<`7TbE%_8$T z;)ms$&GyXMv+X!)iLL4Bwr!g2&EDEt8$U91#`^x#|9I@AB@lQJUe@?Nz}iQY5@Lfv zPK<|q%!dM?e7I=+IpjTPe{fdE@!sOgiLwhGHpHLM7N<@L7IRs4d?FgJCgDLQtGabx zCR|365u?e0zH6AI$YAYv#V7VnJCH8X5 zE*BIHF;NepCPb8teuE^LT(M0GSFo7C&lGjA3LFYnK-R~3NBO-MG#x_2q8Q| z2v4DdZ^oymC-{ls7d8kY1K;o9`i%w6_W(tsS3tuFpi;9nQVdQH0LFVp*mt9!U`lo^ z&qEv|Vn?)Fudi7R7`CfPFqw{R85$vcdy4( z=>%vnQZFv#EJKu5F+jcu$GJHLdb)@;Fr6nyx4XU&UtDbqs~0ZZOmBkll%QB^c!i9j ziQCDjiQXt#>A&Im{{UyCitfWH>a1*xjY(@KPfB1gNh{#O+?L!8orwTip#+6)V+2}S zzZepc0uE&34bfz>BV6E*%ni#GGCCIDE9p%~cEg1L1{xGjQZ+5Pc{Vmb>}pj~pabxZIT(|_hpEhbcHbsiMv8wpK%B>4(uAG--($P(Oa zc(E$vg@Vj1c^-Fvzg)a0I8WP2Eth$ihnO~A3*|nuf zL%>uP0TR)jI2%BI33e)N#9SdyGXxk`z@E+M4$IQ$g!~9`giyO_bYm`%m7Ll0=Qp|W z@y(r?nayf3pWoa%xxSv-?6;=ETXi^6!b)^Ta8g1OH7GAZzn^>u?FnWg^jevC3w>vy zbI)+{gEWbYg5{gD>_|M8o8rdPjwY50LOF%`_cMyU!||TwXy{m?NiTg2#zNZd#aO;i z&Lqh}aIJiK9$l!(ET#}>NFZGVs##1|+H;G&?<>;z+t0Ra(jEt>C49q?9mUo z!D$ti<)EE0oR%J8jzCQHkbG5(134L%32Iyzm$cQS$H?}*_3HFSHl#@C}W>?(%9 zwX1rffL&CQn~d?l+%xP^2|NhQo0@rmq7Lsm*lDfh@?2E=B6=lTy8CD>QZW86P2ThI zJwHNZ&utq(Oeh=u6(G#F8Fjom_IFqQY zJn%rGGdGtwzr38tDoWz)-p)=UW*DQ1(a>ecD0f&WVA$aFFfLV?jZyJD$kl=>I|gV5 zCvcul;4C|HL6Evb1n2qB1Ny%UC6m+)bc%}i`Muh z#rU-#fkO!I!w+gS%-}wZF---N6r3?#E`zVM2-BHjO_`~=FfvY}>t*zalkrE(UJUi4 z;uI*ELjzGrb^%Oi&KRwC3+l-rt7l5k*NLBdBa+x2iBlU^o zM>3hAmeKKm1+xa0rPxjm#FBrJ^^1d}$gnQFWB4h&D0H)--s!NPJ^L7t6{ri0a)Qm( zxmtxUXMxL96|GeNaDIm+H%cT2Of>K>m$w*({5!gPPIn)O%PT9hkex{`;w58n;oQ0H z{rwHyO{dT_7WXX4@ui7{1i*-;f^bfv|`#kWd?OqA)#CInV+K%>5VzKMI&8WH{VtL67~Oe)TEb_F1Z- z(KY9=V*o^S&&+bU6bGRV0#E0WJ63fE^jwaX(9Zz>(_KDH47Mz)3&KSC%V}Map%f^! z6b{rN+>>g=S}aaj5pxXr&+|!)hJbFlu12Tu$3;Q`4{#*YOQ0*5eudDR`wT(>X}*To z?$nVkVTulR1cH3n+T1(@ihMY_Ke@lVdsw~Dym0pHAz{kh!#?I7I@Iuoeh`Bl;W5Mh zai{lm7|zawAK5z?cYt)zkTgUa=#FGnM(}>2vjnUe?FYw)(gFkErxE1y%&7`Lp-L6Q zIjJog?qzJ_bd03tL!$?2b0*2ziR?T|46ME*aR;(>6H_#2&b&Qw5Kju3F2>mnFPnr= zkF*aU-v9k5bbiKx&8to{3wjI$LPa$}dxP2#bV8y9J63eqjI=TSk+28jQNOiD_gn&W}kWWqZ<68d~WPcvEB-lLz=ElGb!NmxllVLRkvjdB#@he;tFMGF%n*eK&XnA!sp{sM2dw;sgrSRh1g_7l-k?+1*W($un&C~Fem(xa)j~9ml^+kqAc{nS zJi43BMgS-7>@ZvX4YI87q6)nLeIwifiHqGX-%{%;23^jgY@3TtQwZDNId!Vc)B2$ug1(^J;aV4a`voKdfWNX0m1 zo#1K=WLPD}8aZ0;(ZNZ)`*A+XIeroA5pc=LPOXmRr93A1B5MP&BQ%Eg0*ORbDo=Ms0~0yJLt-C)@~z)F=!Gi2GiBe z`_G*@vtjyng)Yc_1H?PAdNPH{!iACmIntShb|R9T+3F=9$YO+Fx{#7yd?^Km1LzhP zQg*~Z7rtK~ejl}Q7Sm3Xm3aX#!MvU-PM z^x+M86v-QjK@3M>#I8tkxPDx}J#oFIVCK<*R)=ioL4+%b5i~AH@C(W(t~w2Gxexmh zt)DHoR97%#kkJpiJ&KHkAAlLQ{``TI0VzvBw=CV9Ms2f~K5t{!7h;+7Nnsu_3E9-- zjl)APmK2gbtkKn+athEib00CsatlHXUdL3)65`YYBfVbb)@APU`mOu8`|dw~>kM~h z@${`Emo(S!KW&<)?_ZC&X^?NRZDla($VhkyT13^vWeDH|Dr}WN)keQLzjQ9Wzc%OdsT0?$n4*)W zRwrKcs%fOwy5*bL>O`iUNhYgUC|@l#^0+gryIB0GRkdMfyEFEa`(dgYh6M}*V+|(h zm|=rtAt)b@Uz2ZgONIvhQapYE5y(bqN5u6=0|!(x;}WTetdrLB95C*@;jA=G_b_%p zJGPdAs}fpH48nu#3i6TJ{B|veZJ4~4bac|yQpFf=k6|Bs2YG|7N@d;cKu9oqPLDzi z$h?p>gzR#S?#oIX*+#&UBqkN9EC$F8s%(HZd_%1g%n#UxpNx*tb;-~h{up|5r^$vg z+aP7Y{U`-(H8|NZtR}c7?-lSr55{yuw>OFyA<=567!@-C^#PO1jq&jk%N%BDl6EdA zjUWdbp4E0l4NIfX6g^EsYi&Yvs?*rSCE4xj(}tKkcd{y^SJ7vL_D-FOp@SsalZ!Bq z=42tJB%bag+hn1?LiUwoRRFkiE0v0##_saY^0FR-)`*C4O?@7Fk_G)(6X{s;PwoW! zFgu`-rsx#Hoq?&|oH84F&M$&7YdHo4L4Z0)(vIaG)D35I%y51ZL_q|1Q!p6;P1!OX z(3~r>wOAe-^~Cbe=ixweP((DLurgzKm{jeYOp8uN%It!sl-yvD?pO>H^alqt1FZft zWd(nL`>n4nze3p*M{5k0TNsCI#UQ^olg+jy-)9p6cI!^!{PENPub-Yc&P(umkYpky zU|+-6?^)XX%1~A$Pu_c{~LU(@WB zf@UpE=nh%o1e*}YH0=h>Pg39Y-o|G=M)fA!vY_6y7R*TXW8-_T!`z_c+zS zZx=8lj->8I>U{nMDsMqeKn9AR0N~q3i<#lxWe68UzE0@vZ|WGYiRKf# zNr(}O>%Qov9y@i)ynOise^h6D2U&9gae;R5?e)f6 zOaJr$_dxHT4!OfC|CHulOLJ-C!ap5wuN`m)drQ452KF&t=`BUMlicwXka6ni9%uiB zw;VYHN>p6t*bOs}?J}KNIy$06XNZAy60kaPxNj&n-ta!}7ipj7(c+}u;F$WL5Wz-f z$i?7_e^7QUdz(wD6Fz8qWzL#`o-hZ=Zolh~2P{TYFk&K=w;P5tiG6jr%@>M)flnw4(X!i;qKWc_y3oxwun~@ktkbdI$w3w z0l-XF`KzXwVVR z3*iLVl?2@(EZYJG&SS=fOB$=t=jWiXqw5>~et@{xkja82iAF?)3AJL%--Gv}IqeIH z$>;D;l!Omm24&O$7LOS-spUvW%jwDK6I$1lGHqpFOUDxyfCKM2lq<3G=wqfAai!t5 z!&HoPk>M|7)&CC8{4^=TY94iTa8mtElwP1y^i4{Yp zv!L1*=n=ZJ9Eo8l9|=0Nf4!{3*B-_QUswrP-|IIedy(=DM3N!(`iusFRPz9%Z$$j;`ik zB0D0b*iO*1=~h$V%2(Z7t_qoFrMiX90F+dQh)cg}8C?DhNe0gH#%7=}*M|@2l7RK_ z!^~v^1Q5oBKgR$%z|JA)P~YdW6+Sg(O~8q68ScAG`(ZS3IP0N@K9B~u;OlmKi~}=7 z@o}Udu#LLIS!GBn0BTSrzvZSe9&HFl1CqLiXWQ_xOfqU~3$@yAWVs6BAdq1x z;(&-G%)}IV{A5y9>Ivx7O9=yl<(`WokLK#AxAk|hlfW?JHM$>WA>->7K!!|1KYzq+ z=JPI+CAVH)S%LQQ?QX`*c4RZ=ZO5luS;XsKqI5vRDj8o2uZ!Vp;)8q88Q7zV^ej$g z({#2=lKIu@>2roXFX>f`7qXR&x+S1PgL8OpYl~aUMA6d9uVj>K8C4q9-6d7??z?Xn zU56t0qGv71N{gAZK7?9Uio}v7)ga>h+S&^ciUah--wLc9{1*O*KR0@pnw*3pI1IG1)g>kJ#J zJj*5XowHd{GpAk2pCG_#RWXfxIigO>(5Q@lBgn7ZIHQNMU?qjEzNeBw)odhlJEzfX zH^dZJMsuf4t%mK0L7M$tkWwR% z)rX^y5-?T9--j0YmTr2A{CVhR_yx9P2&9!fanG2!Vj}W^pax*o6(k!1wwd z7`hud9v;mc2pn-dk}$K!$;Bb9NDWqH4;~fHFS~yGmoq)kPbQ7zDwkS}#JL*a6fB?6 zlue!s z_Mu>nX0t-MrWR|>rT{9UK&@JVt5z`#6+WKehUw?b;aw9xlpu9xxnh{Pbixcen7w7Z z8M1VzLrrfyHfrepD-J@v5o0%**r+!?Xsn_wDWGM|s|J+Du#?G=fi`XExFu|E zMs_}ftJ}hkyCAcs(;&)d&C=EV7Mup4Bv?F`!TJzEFkc71UffXaZ58w77=3|anV1DA zyUEMg7`qQ?A9i6w!6dOdMi+J^iQDHK(WbwIM+@nA(bcvrtiHpqH*hkj!})itR#(IN z1bvi=R4kiKp*l&GvB%r@Q%J^BmR75!C=pLVzG)~=8pPMo(1C>!YmY8;mOCAB^e8(& zDpMpl?QoF2BLaUaA)-};`JKjNx{VS6sz`?O0zC9235!i*@@oU*fv%46K*mGaF~W8e z{I>jEXuOFqnmcWHo4R`zlL*RLLD>|F%uqR!2-_}EQS|8|PmIz8SO1~TRPLNoVNe~(C za_0=01BQB4fGQfo8Ye6~Zg`Iwnv5}L4$F^te$VwvmPa~Z=M!QYrF+igkTAooh%0c$ zbY~2uC|k3+KLJ(RRy7N)4%#e)qg(aBa0nPe9jTH6*ffbBOLzTc8K$`?+!Ya$$mql0cK#Uc^FagUx3R=M8 zLe&Ch9nm;mvvk8SuhWTI^-r>5w&?=7KW~ZHK9D<`v3sCw!E;Cj=5N8-Dg%{XM?rBN zYA`@|b{;)_x_s@%jq-z+4-d-)KFb41@2zyZ`(^N|kFM@x!3yRIkV1AT+?F5%Jq)d~ z(196=B>-Ov_|<{+&?8~aL*E*<*qw-eoY zwBVx1w=qy8Wi`RfV2>Pl$F|e(QO2n0Xv+1VJqrV;4Tu{1B-3pr95?>Sv=4!eXdJq& z5vxj6WiO8VpBo(w`T#VwNGH|6Owm3tZ&V?II+D;vN84vEUv3vwwM~?s-S)BDyMIP0 zTJ>X99U=Rk(FiTNId*50S((cMjf8i?XYVo;QI_6iV}~<9{T^~2EHMQefG`6T7*pVa z1>+0{S*%i)d8ooUMoBHWBs>*06VODYYomY!Tu#S{7-eW*1rJ-$c&N}UBJWA=Lk2wE z#XTGlXT_}quoVbY{JO76dEbR#qEN_pb?kMHElvFdma{?qIEUF@QI0_NU#uQ?-2QzFi-zZX za1+44hQe4sTRAFTh@d^_8HWd*L6=8&2$`Bm2+MC2_h>ybYN7r|gwf>6KVWH3#`eLrBHbk~0n)^jdqbw0O@y9Gl^ zNJgS;)Sfal4d@l=ZO{p=Vt+8|;6k^IAyQmi-Stwbi_KOHBJD9o^5Rtyf(vw(?A6vGR79JS*kmn;n_~+olNSumjq|arO5yIR?VQr} z2xy$o@9%Hb)0n*`QIUpR-}a%Rw84OqtxK1p`&o1XW$y_ju<pfCM%j9QGY>A;--hiUj#td#IeEp9gEfOY~QgbX%e zl)=ELs1Bq^lv+Zzua!;J)$~thA`k_AN-gV1z7%e18wihLVWu zD)QRDU`Uh1P&sHF_427`CS&D09SirdHJQs<*ouqgHRBD8;9C6=-2P=3MyLKE3!_vJ zZpfEdu5jcafddVj;^=!UKK&dvEL{X%iH3u(TC?n&ZC@QbEPztUBz@)~?*v8^UOeQT zOzYDpPHdk#^=R?E1(1?d5u=piE3v5OzH4u9b`%AV<`gkkAf8brCoSuj;ub1ynnC(o zhKZ00Ww4q2^vF}a+?a)s=lJ!PFG>9pEm3rVsuQd=maK2tvnW%&{qufdQWa__jVZwUa-WlFMKq(D}K9op)4Jl zjeQa4M{e|10!;+<^|RdB6So#$U*s1Ln&n&N*FgyLvkQSP(%voZbrkeb^~6DTFB;v; z9-L4i1j`Ov$lW^4iq;-C<}QPM?rrU?J6 zalh%j^8v$oN!F$FP`tz`1O&?&3FM=3phU>1oZsl_&ZsQq7`h2N>xPgqVB>85_mL=l zQ^&qM@zalS;{K&H63gb|L!xnL$#E0Q@qh*GLrq3_nGB1aKYJLQNs8sAxW%{kgq3sW z0zT}YF>W1g8eapC6Lt2^)F^gIj3%?$(TV!ZN(CzsM&qt!?T;QWmdLsKCoagVg76#O z@WXOiQ zNoxf~O6#sGNiofZ=4EsuR{i{!L>=#Ow0?oiFso4s|KJ3VvD z2IO|@6nARZyrpvL=msgZt=x)2C1s|xJG!DME2F!m8BwYxCr(Jj`k5WbbsTwJsKgcc zTq0!q1Wjh3m@pA|VheyL@lZP9Wl1_#65R*P4_RJ+r|qGwhLZ?Iu4fNSXPvK+V27mZ zTqc1fdwermNb<={k;~?6R+D2PVxAr4Q-;%mmM0+>es1$2G-KT=+6qau6}D2?bA+9~ zTC>r>xOe)Xvwk}L!A&1qGv&lN+ZCqQ$;@LO@QeL@mPyf$zVETE_Gf`Ff|V#-JbCT_ z-gW?QJ0K@JXe})r?3HReB}|zez)V4P9^QN8ZbLqI%|L?$zj%Rk)`$Du)UWo<6+r)>H02zXu0Rg z(1%PVII9H%A~luW72Nn-(@&dcxebHHS9f@%a!@xGBC=Ph8BxoO>gdD@(00P%g&wsb z)a##y`f1hEZPHN2BZ@;AS+}vF%h1P9Vm5pU&WZi-5v+FCwBW?jROWYpjg{H0foYMk zbUc?!_nOUg%qbSr%j@fDk_t)#JsW}wkBmpwWPMdu@388bEU^$+ip(_t3Gd-npNT0} z6VO6Dr$dv{DV5I}?o8eE-iuei4ISWg9|+50rA9C_1E`3+={rWWFrf&lJ6hb%2=3}> z!@EL*n^%P7W-jWdq|~AB2@@yCQj=Dw21vK&kB}?;9!??MnkQLD`G9KXZgK|QspLMC z&_)rvMn;mGJ9|6DVsd+NV}p@gd&yqkod%{j=2y(Kf+-P1t2etGDT9~T4Ztpdp{x~N z7V;kOBdqy=kMm`uTXQex928FVkmVg}ro`I&RXQ2Z){i1g@hP2p`G zS0zIYDO!D>VPZkmOjznztr_dAuSb!YKt?fo-@-!l92on_XmZ#_ft|uEE7-4ybA5{+zL~I6-`Oj^Tr89_FOJ1Motyds@yRB zhvPE3?1FerHYQsMp*d-5IX?=~e=BcSPn{ALvZ9@msw>d=AK#>qrA`2~rL#septL6_ z#<+B62yZBiI#c`m>PD-D+LCr)omlO5W9qS;b0G*rSt;QSiJIjo{c3u;bxo{Yw`y=|;PHxmM&QtV&tLD4xQVab8@JWwwT zf)qg`?`Q021c5GHiDyrqE}#{v2)2v4@44mqcr%(xVjZ;)*&toT!0b72(nm+nKv6ce zg`uJ#Z?DGSdZz&_kiLKdKH1+QZzrDN8NylBY}WV3raGOm#$;hqQN~WUT4U5Ab;tVM zp+WQ>I(aM>Q92O3LRR^)PbtwNQVezP`k%5d(3jrqeEt_?oSa#u#FH~0z(^k#lj>#4 zp<)shfj^PMVFdJSn0yW!l;A&_J+7+Ii+OGm$|hKRs6FX*HEGd{T1c=KTvh5miPM$A zWZzVK3d0`a!9nC?Tmrt2_NOIGpz6UP#ULsTK0z=F;?eE!a|mDEC1ArccTd0q<9zXh zv)Rn{#>ca3-A*TqQt)nBq3EKMKWVL`j=9)|e^kbUrA8&0;$RpMtf zyPeYPxt8wGRdxzjnbLw`c3>Fr@X8EVA@B0E8-RN#~;~Ja;V1PL|oFO@)hBF*eOHtxbT2ZoTou(yHC%9UP66w`K zUYW7duDv5mS{)8M!rmW_aD*&MS~;}4+6ex#pZCkG3o{%nX8I}=K+c=r_ny!DJdr6E zZIg)3L;{f*I5BbBNj&d=9rDJWa-VGm;0tIKpjr@S+X zpqN!BXI!6U01cvwmFTCQ`h}88wwpn#e$VpSZ$SqI+%1B2E2>t7biafc<)*m)0j^M{ zasNEbTh^UHO;b5hctWSl;!A)!F~8l}#r_@JVY(KcZu7JJ|TN7S3VdaNd8eDBg#Doov{XZU*2e zda3tyvhQ66SX84}9-t}WF|Md+2|3kRf}79j&RorKU&e1NF{L+nd3tTYaNoge2QEIX z6z^|2ikFs>=g|Kh!HEMI(IA$KX0tIBdIi|Rf*V6_{wNXCC5SIi(a&H57~9>Y>0*GZ z|5Ie%39vE+UJOw$GXREhxG|?vuRBPl9JnxtTv)*=beoHgUH1psh$Z0IHx5Rwvy2CT z+5;`y;UdErbU&YU!oI1PSgDZWDLn%gwt`fg)166EKj6$&Dl3*W^K|vU#<`+=pzYT6 z*0%A#mb3jp(yMkQyP6WB%h`Lt6Aw*$Qq%=qLjsFcLbKV#iAwIrU15wlu|d@1V&KH+ zUIvJIAMk`}oTyXk;o+`hfm+vNCkqR)gX3ci;M{mTw!gczWyZkk+nKy}WlSt<3QkaW zQ#a_aAV(r&P@|xeT{4G8$rWX$y|dQ$7s9`;$V)`-YF?*SOI+q-Q`aG99FIt}5Tna( ziceT_Qg9tZ_CC&;MV7Yb!K)PPX{b8#i0R_LGBKK!f4m?;O?}|ARW%yb%3u3h$t_?! z3w=s0W8{-UzF^~7B(fQ^xKa?kIL2Km^t$#a$HeNH!EpIxyT9rCd*o4_Q-yk_f^j~N zQ^jZNbslJS>~7#(wE^omUZ~i+P1w4Pf&IG98lAJ=fY6SNOnHtDSa9ALYVjGd;1>Zq ztQyXGQL`_@Bonl&K?m$SLuc>r|7_^Dkj>uoL;eGv|mLENg`I5s!tuJB>V~B6rRm1)Wx;J-;id7jfRgoWX z@)$A7GWbvi;^1zeIvh&`pDK?c6bG5`d7?qYan|8JP|hb}L*sLfP#T3erV0@VS9cf2 zhMceGEIo1ql8vKxOg9||6^#_TO*_%jn5;^sxN-4fB4r9AEGz>s37!HhW%%*{RqLb| zLike!c(5fXKi?pI+R6Eq=boECSzey6KoDu33iWx+zq``oj$J7$ZgsH0HN)M-nkgVuVupQ;@%dNBBMlnJ}Y1X+`1y(0e?FcyI(* zbu+WJ6t#U@1Un6M#j_A{TUksIOw@{>%cYehw06(dusV}Rn7B)Au3dtbL5V{!3C zR<(k0GV4%kh^_~?%7rZT(|$4UrLd5on{iy=7}PpbQ9grk3e` z&T-P1S*9VHoTh#)EAa**D71G&+RdDv0El2r!g^=+$m_!)dwqtw7 zOCI+_=Da_=QM4MdaZ7U3Ny)8pRV++$)*3rgLy}$-FKx6ko^}UB)WQzP7yJ8n0K3J6 zQdj+<`c15jgXdNL4fI+~Y1fk=e^*fN*6W)%X0f9Ly4mOGFs9J7YgKMR)1A)#4c_7JwIMf;7VF;B#@WC~ui_BuUTqkD<8&cE>VpBjYhVc~baDa@2oFhB3 zVauRrQZCQZ^Y}97bBO{UOMntYO&ZF&?xfIPi;t$7G;)1t?N@NfEjxIt`HLc250I(mv@BP8{xA@ZRyVDK+eb+Von2PX~>2Z?%Y&;Vn>;P&|V zAkhmC%D_<#(pcCY?Ade)19^B1yM7ATnaO^wGNa3+iEyOH%-i*zXSv1C0lYV&A}niG zigOEm5(su(%^qVSrRypL=TyXe8h<>w5@hUwR1R(sq?t67~tWRJee-Yz=P`K?|>wWVZIX7CWp{3+j(-~ zy$k$>=_kYQfzPn?r2bx=uMa)heQ%fF-GAc02cfD|FRgsvbZKZmwbIwOlG-0CP0ReI zf_)GgSG7(j;tmZ*yGB*P&vd(kG#wt1ojkOJ!Hh_D{@|MCd$~t)1vr?WCGU5YVDnK9 z$>Uj2(#&xt=rcGoEt{hmu#OPz6bx!n9lfnP4GBVF*rfj5KU4~j;qMIjn^D;UB3}J1 zB%eZknBFMI>S-C{zwvQntt>_JQuRD~oKp*QAY;VLb?FjCW73uic3>>Vq;W!%hNRXP zsiQ?xA1iP+R#E&qnlwSrp|7t_T^g_6)9&m^FzHH%sSvA@@t;}m#9%7?aL19;P`9Cd z2wT}v2M6;ZZty)lFj`H+Ucqt>`#xQ_^4`D-u;e^5Yau-T6HPWH7K7m~#wr zn{W^0%j@e4*iQhro9%pNFDcd5h9Juj8v-T>1DR6Hh@io>uDey7$J`cT@Dy{7*g@}( z!GDcu-~WQsNK=Pp<{fd92i6;n{3YAYgWe`Dot)&GlHX=fQdEIoxKEc6Hc*kp4S6=fManJm*c zHo$v^oqQU@)1<)!I?TkR;pii#JIOXV%o}tFljwa-M4KQZ;3_v#pj8kpUHe?&n}D=q z<}MvXWhX6_c70PATNPqv6jKA~jilr`QuJdLWt7z5|Eu!SPCot4vdnW(hZpn>ABQj4 znk2;4MjvUDKBRhj;@k@_MDvJXvK+m+w-hJ*R{Rwe|5?89ksp;+on)XUh$W&Q8~>(m z8IBT*W_4%5v?Ee~%u!u8XMu)__E9BAnu^DwJC0L*1Jw+uaSCme5jH7VL@!TSjwV7Q zfNIB*qbfz+0d-O9{aWM@c&zc&$wlkt>Wwy;#{?YA}^5~wNx!}kcS0jg3 z^P27(QhL6o3wEhF1kU7$A?Zo`yLF#pBpdPk7)yaNPG-H$>Q*Udg(EcP8T-pYwCpy>NR^q#8v|x$qok* z8LyK)w!eiRXrDI*DPds2U_L-rY!!(?p92;RXSgg+@A9N=C(H7v;6dOpe+37wY`CkD zG1J@92VF}9 z=YJ^~)8q^+241yN4ME8qE>_14!5PKMVSNx|ge3Stbo3cB4xi1NnG2=@%8cxei$N5F zpcDaz7O>{Vyee^{{23;5)I)ly4;wTSOH1WPmoJw`*BX0!<%5S0%lr54+}SMm^tzcR zZHFJ&FlaVXC4&kko4bg{24fc+z>_Ye#d`KAu zXJs`B$tBBib26~>BA2Pyr7BlTX)+X1$HYid;l*j)`;iCOtKqOcgk4~4UOFX+QbvXg zT&aNJx?a{b5RAc3K%P;9l^K`{L=tP+pN|=?>0swn*EDtspYqcf>Gnz^?+9c#kq#5aUuPk5ciuytRL=g?< zX=j{)0m-R8_0qHA)i3)S@B^nzt@HBbO?;2>99lg7YlL|1#%zdMk%q};`G*e zgszS(UAq>`G#W7oSjCPO7s34JLPhTI{O<02j9NXN=0y7xw#>qi)O4qr1)iFelfMjt zef#b{h0cGLdH#a)Ao+eQ8xjZB8GL|qduI-J_!?{Z?wUIa)O7*eR}cIxq?9^B4V#ai zL%Xa^+Vf)>kenh($6k$?cQH?%!ZPN}k4(i?R66JaXTaGuW2E8<2dZM9IXnAQ@*;>2 zCRmd!Pk`F%3Oc*>CUp|1iyWLLfzQX^`Nkzm7-C2pFvtuP8r!&I! z8`Q*YLaj13U3%5`WX${IWcm*3YL)-F;Fxs{mBW4P^6zm%!o#>2eGL#^$3X;@1BaxZ z<++ID{NHw_f_;9s4ls{utrF$qyHU|h;3g7ZCt+FA;Oh)9 z=vOGGOb+f>Mhg2G6OEli^mGnmBG@_)sjH(L_Ta3$vTsUv@DJUiQf2aK4xJ7CnAYR$$w%WqzU;w7I(iaqfah~8*2wNrrPMAYpei{3PSJnm_{7vg# z_0T%4u3G3N>Uz4_gr*QiHlwK&KTMMxh|?*2%bYBjv~F*Zod*W(e1>HyZlG-LO4soM zGQ?+Ev14zl8#_4>o&|z<@9(~TM|ZB9`rDs`mA6EYtmbvoOVBgBSkV?Mv*(`T18vzsMrM}rn_MD{c=VPN44S8n| z3O8(Obdn}|0sn@929YIbs^Q7B`x}6~1x=5xDxS8*ns+=Xpdr)w$=ojXs-X`9!EuCeAeSKf!3I9>pdcxihv#FO zvItD>C!>;sR)<_$k>d~Q>JkvAl4fAqZ3+e?Bho9EFJlk8PNSd0C~{9Zew^}zsq<_X zkvs&|Ld57xdT2+~?HB}LUxh4+I?~sty2+&Ps}M&~B_m@vj=HtByj)d#n&;#hTCuwG z9bO6JHKjZ41hiA|Fwctv+Dd~cZb5OFMf0ANsK=Q9c(W-hd9*4SHpOsX!ZBV!{{~Ky zha%}FN_1mOv5058J@|$&&y-3+DG211mD$;kOI|UdN&}co(!9SBv$@!S`2*t_G3ChK z9ERWa6wYt*fJ#W<0|CHE%xEU;O<`)(uEUHVG zNJ=zCFzCkbpRo<%Oo--FDG zrTpb!c7flmuvC+b`wRnrvBVe9w?KhIu+3ydDY8@($djC5Ys1N!2`?`tKq2w7MY|8>E1v zYs9^hU+dMVYuhfo>n%>rz}0mUs03r#>;#7hBfvfKQArun zfbZ0Q3AS#J&4cyP(AMvQ7u~y75gORsO1kQo1m6;(V5C#Q<*b0Fpjoh_>9^yaiVOsU zP)Aci6szmJBtzsAIuFOk-=EwE?;hD6+oWXsvjD$FSs2xy#5`HWWRg^M?$Ts!xK_z0 zHt*b7SE3@Ikn5hM>+4rGHrCIM4-YfzJtUoNr_u7X7-+y-Bv>ZKTE;A82$BV43@jOI zg``e0R;$qokhzP zRj14 zP{RFDF$KvVNa&4CVpm`)gE`TgsXZW(Mww^8-k2F`*94etieh`fBp>&E1QWU8i?6(r z-J98-fsWva5dp(j_TJ%PwthZ31cIz=st_*#gnIYp_3O*o59*@A&QG8C(Dd*ab?lOp z`Pe`Xp11P=T0su(BPcT1XVzh*ixNDSnbuQ7Df{dv@T;7ftY`CF8tzvusy-2gP17K$ zih2U1Xu2)OWo)01xn>zmYk66&>&^z~{u5=9E$2J3^D}rDAVCfg4FKqjVqY;>I-dmd zvyZM7rtS*p1kqgqI9!fuR@4wc2JOalAa|0G5CynZQ$<&V5~K(o?e8n93DAna89#`| zgb}PLV1|XIA89XvRiK`VEkL+FPyQx)`}lcv0YZDnBa*L;C3@k3vfcSKM8_27sHvlLV!9Rk3+lH?1x7aWI3%Ey$S%R-0= zXT7HB@nQwd8dVz|9-J~GvGK84zzw4oCeSuqcMZ#DGV|j&=o6T`kgNrnmBfcWBRj5# zR+v$Y3RU2n=-mG$>ng0Gvvr8h7HqtuuJQRsgTL_bA%6?nnycdU64{t&P?~)6dzQwb zp+g%74Xhv!!RK-~ARs_aJmjup%Tz&z(JBVnP3U-=fIflQwdI|9lj6?a zZ4jyl%48vCnp0X;N43jEaO(77H|}vc!w||fE?0=q!0$L_GM)wdtvun%3JN(V{52yY zn3)(~sLB0Q4HQ{JNbfAi=Dm^~vr`o>YDcn2QPMWPfmpJxf&^1}XZ<)Or1p{Ijmo-6 zeF^=-$w@XA zR?wObm}ZX;&Yx#2vtwOKi?BCyFuezzUd1cz+=Mxe_NR`Yp~KDq04z&H{@eixFjKR8 zQh&zbf8#bLGbzoU?APu4FySIYyo1YQ2c8AY=`~Ce8!$RJ7WrW7(pT=I`bJhA^ex!@ zP%5zXlF}a_>}gIv0sSyCED3J`9;rY$YZ-)cO;9aIj3QjV4?!xQflALqX*h_MHF6vw zGG1m1v44+EO99mgp}h$Yb%#9qVP(>|_1tq6ZbecngO2eP`(UBmG zR0X{>x615kBl-9=B-Ksn^ZoeMs8p^e_u*V<4*@Op zIEE0Xx)ja4j&)$_aQr{ahY(Mn-e<$!Td?1nhC4UF5o z%UJGNz@lL!;;s41#0GhKbZ{`_u~qb^&UM%E4!`Yv1^%YXjAYJsxy>eH;SiUuK=5dS zI}kn~=JTKBKOd#D^R}%*_Mrf@iQ?!Bery)UI0%vhmI+lC+_zF~edaYI@ui(V04 z+eJP|8m(n`kZbTD=*X=%_~$k^`OAj2stMr94HU!3p~7cW9I;DO2c4Q{bGjd%SE!~K}*-_fkM9{e^M2#T#a3CQad z6?_tbS->p2W>(?uvVFFrsU5E1~)k-M869-L+~l-LNV+#YNp& zlz==1q}M>6hIu9aiTYYB!6%>}TFLStc;`|t#tfd4^N9Ub#Lu(=K$5beI|GW6Wz+&G zK)6yoC(oPs5x4|(2y=M@b98BJ3FEg_|-cpAl~HZWz` zQFyIjW3Q9Dxvk6b#hAjpJk_AYITm>NRVeG-rl`8_Rc~Is>WStwXx2USZ&03j7jN9~ z`~_tJgugLodD%NSx3e?o4fZ~f-pA7G-8)egu7*wQh|{x`$OKNE?up;3MB81gF3%ob z4|+&&S3&4)J#zXxf1q0J2mNn9SAFGW(^;!9IozsXmM6@}aIP@PVNn5%R6`T`sl!^u zlQ;l5WznD{65gt+YF&iWUoI4?#bT9xJ_1BS)8$PIII>Xf+j;qnOM>ucVa)yDoCbFPZylsB z7zY^5m+k1?CCj@Zn`o}2v3^Cow-(sq%t6!ARkXio;g)!oXuiK=xTwnmp!@_%DQP*@pAu%v0 z{JL!^)tV{D;FRMkIL_}-D;BKtQe#oxNc3BLv~idQWwSRnU%{`zGJd(cyRR14e2WiU zP!2s^X*NfQ73yPAwfVfz^O7FzEakiSXlD)z1GZV^D-S zv!Xy4A)U8)R85!9yXeRH2FeFl%Ry0H3Ltl_=^>o9%t~aFXeT_#)M~!1?N!wA?q*WvC%D`3IGh+^#a!wV2M4aK#N_wATG zlnEyf5@aav3x0pinYXE8xv5zDoRhwN8~qdN2gVfeTU1j)N7m*(TO3wnVZK81TuH;+ z2Bi$v8-M5536CnK{uyd?>l^-FBU%2PA0I>tm`VV9seysomB6R(`4`oD*qH(8>DUp4 zxjb#$oP)e^R!W6PABu4TD#u|cD=hY1p`Dxh)Z9n}bg_~7%a*q!CqGPrL_r-G^!D(d4)Wss+RV(4S~z7kU%8`zv}HD9in%;w z(43lIPa>vCvyL41rPv<<@GB}76axSZN?ic5W%QWN9pk;;PZAiFwn>O>gl1aPeXD(& z$jLB&9a_9KGda4pe(P4|Y;7&$RqA#{6f?=ZpD&j)mo5VRmr=XDKr8v`K7yDKbfGmu zup}!5Lu^pz?6JJ82fxudjn8tcKc5ieavq6oS|n191-8P7EFg)AE4JH*C3G4J5G62p z_i{>uuu(*Ge;SR`9*z>3cyZuk%OH*wUn@>GY)G;XmjrbX#Dca$w2Onf`v$UROS-Gc z4U_LL#Bn=SJC;lwAHO-ch>0QXM}$N<$EE~Uak4J)FB1Nx5l+2Ob?}MtrKQBdqeqF` z0KcYVqKVmsnz(rlc)&!t$E>hmCo&;UwOLD89u;OxorW9EEsIUT;FWyr2Lh^bubJ&b zR?82$=uhA=9c*`+d8m63s@j(&#nL1c464hU3Gt3p*8paP)j;ly|1og5SW&#oSHGSg z!c?)$=mfBp)1dJzJHHn9P1{0=t-Dbv?}!RMuzJEnKVcaF=os{50U1Ke*=W@pJHc}`u+<*%fOeq zL(%NibTrD(LAdoia57pdh3-GKrHLs9`zYO354{1IyY&&C7}geLyY`2r}VS4 z1ZF40@T*YrBbDVqRg(Ow9-=Z5*fE<5J95~)9a|h+?_V77(UMbE78eyX;uKvJv42ZV zqo&f+-S2{Au#+3)2FM8lD|S9JZ;H`Lx0^-s+U&9?rM&HE^em6?DL^wyID=(;aMnfD z*jAik+?2hPmLB4gMa)Jb1RBEDgPH;9yAR3&NOk^fafIgJL1!5-!Vy_v9@i}XG#FWx z+yLfMLpk7$iW({h-3CNk6f`XrZNwtZh&QF_ya>8qb5yFw#WYF>bsm1Vw3R^PGng3C zQ1)DkJOind{5|U7{}qv|fIMshedYsH#L!KQ%;%>@2l|h%Ugh%ngJOUGf#2765XFG} z?BMKu#}t-DoQIzcPv|oe{3dzYvMhH3R~!B|QzL`7;~YJJu+U)sWwtq9MCaWMHd54m z-~=R-buz8u-Zpf=(SqZB0T3dNO9`H&z$dt1p^odam(kOMe7q>_X*oy`c;63mUrrM~ z>&^5<&l1L#=>(<-Z+T?PvFs;+h)M7{H=-$Se2~jV!5?qBKPDC^$Qk{)xs2d9lRqGC zfW!{7t0~-i9Z`%B)(K3wgQ>{zT8*Y6v9X2W1?XB6z&D1GNGw+>g)mo|id17gFrwZg z8#X)Hm)7hrJgePjSPq!BU|7bmg?9uf_BI0czi5H#|KMU0XPwE0jMIxuN`8>gIp<7w zKBl?eOYpaZlbfI#Ye$22f$sbPcKWa&6yRS#*f}K2XxAWy<-dYXoD?%971Hf-OOaD$ z9NPYGrkgX+vU1l3)7I8NT!bpBTBGuyrn}o9+)8d^YkU9`C&MF3DG4hH7^JeQE5N== z(9ogX$iu$Z2t8mQ$S?LC2rqh-%8L^R2QO}okH7fZ3-|85ND`knUcAwLR6CBe*Aw7M zJ)k1|-2Hk|>b1+&Z+DXdDy6^o5^kh0`y3U>f^B6rj?pJUwJ=w{a5+8FR zm8#d~WSLjp2ozU%j^oXmrbwC{iGrl^v*|jRN%*va1-50R5u%h~$m8^tD5)dzP*b4= zR6eO<)v}D|C4$-QdA^Rx_Vg7=%#Wk&kmJKY6Nv&=6bDX26MzO$0I7{S(@7m$EjJ0W zu?H=?sXfXY3i$g)HfDXru_4=Hy4DLZIq{%B!H-gFG_EKUngf49XpaAk9XI08d8Kb; zEq3_w%kJ|B2kxC4*RHwbD2CjgEVpfas>cwi>SUSj)Sh9CD13#tAKyvT7X!|AmJPS@ zZt5fV%(l_Ce1@}mL&c!lbYq;KRf(Yg6bh2)tQuL>(c@y)H561zCMZD>s(cR8Y`j^5 zQgIPYW3+<-n?ZdRF>KD2WqB3O8Eb=V9WJE$g}=aQFTSC`7e@_6F!L52-lU0DAs6e; z)lpecqT>ZMJ`3R-h+K$Vp=x7Y&MLado@Ld;s8yAvhz@ryvY9trbpZQf*ri>XdH12u zLkb`NFXOVO-eo`f4?*{mw4_$@H@CO*S8v?NUp~2bG4F|DJf3&eNF-n4FssT}q4<$6 zV(n`;zx)0x5xSV*R^W5{Q3aVZ85kdQ@Wb+#{C5DyV>vTEu}4bDM^7)4wJh5iN-!&6 zejI;3Y#dF^%x3Xx9jt~aN3)OElxZGg7Ni0(#Wr-P1$j9%aIIvKD`OW!Q8uBQ%UQQA zET_#{PwsGc zZa$gg=A0*M+}gmCQ||Qk6YPOCpDb}pt0zxLDDw%Bxl>P4Tx#(f4)=`#?xr(vySchQ zwYWI7zuLS#;M`P;(V?RZaHxRoO~U#uK4uVE-V9;5L3gwBLwg*<3PH4wnQm7IM_=I? zV>97&>1ASTMpc8$hTuBQ+!vlC>qgU)4YKqPEU{^1`^ZewBB&d8b?9M3%hBYvpqGE#j$6oNGDG=%{&&E_z^8#i2a5}~;Fj6@IlSuk? z+G$b{afz$pFW`@s8TNzNF0S`|AL*+ZS3myo5$;qy&1OfAF7#cvbZO-L=Kkiziz6>x zxiZq2*sD*>%#1v`fA?;3q?b(yNlYu{4!`aF64vM8+$CHof!o433>A|7=x0Vb0RZ zV92$RM{CV?+0sPls{=j8>yk2U0D%GT>)Pl^m;0DlH3) zNP-W|hjEN|&5CEBOE-s@kP)F6WcotZ$ZTd`0$9X_2Mc#7$7E7aqj+s{n}tGg-ikN3$Cj3tmucpchNWW2;1|QmVsIOnKklQEQeczCwl4= z1?#Xuz`mtVc;koOl+UM)>;^stynKG#H4Xd%CI=!$PDR$8^9|j34UcCnk54It@;rR~ z+N;??f(~bN!tH=~qM?Mio$QxJ@oSn!ug?*`vW3PqVm(&)!5%n;aWEDPXcHLpYzWEy zfS+Y|fs-0yZ2MIoR=d?UE$V&U?@>*stu8q=;?;^~kbv2D?xE0h!tdg{DX*2HZ0@h_Mlr6lrK@m)G0|jw?iN7umEgifb+T?eBrb|*09l{^nk|A~GB?J8MIEM5RJUe$14g+*6!!Vw18Hi7W~ zBGS4SHUU{5E2vnl(r+j#Xkf9j0*yy>Wel^3fdI&1^Qjo%C^Gt1%g9U#9ltGn$#meb zth=yy@*F%LSsaZlI_H}?B?gOA<^NYe7}F*}*BoZ^&YkfLm&ELHytFFkSNr#IZoyc&D}cc;Y-ZsGeB(#^{v{F%GLo6+z3Nyvg{R4 zNeTilb2ZO6)&I0)L4=yKOR~x3(+1<=O2M=X)Z&_S$IK{idqPw)hgC;$j4aeu#!5d8 zQyW-JYJ+yd=73eYTCGaDQ$W{cRMAB27C{~govkWEN)AbQP3bbW52zg=LG8Ibz$KGX6J-P>XC-?=jgG4D zIZ_)@0-Lt&O!g*QvllwAws$x>9fOYF2pxOR5?uf{Aq$5eA2vF;wtp3Ef_;1t^=i>@ z51r8@w|sv|1ukB< zbnJHN?miGAF}MzR9pF-hG_X174obeC@%^`oMImiPDD5feYQ)7ZqJ~)jXnfgBk+3;` zin_}}4=dQ2y9Fi&bYJ3N2P|M??sg4?G`F!fcN+^{w-2vexlN06joXb6avIF2fzt@M zw8`%RyVr6M9S;%U&&WBDXAZit&p4*c`QTW?`B;3dIZMriz@>b81M2doPAvc@&KE#R z?*Y0hh-Y~Q=e}pS%g7J?3nAKx?b1Pv3e{6cm2}~nh8Mv)cb!KW3tJUa)U**I=4ar9 z7eFZjH&8A?kzI}$$ojEy2jsiq9YVUw5#M0xdopcArma`5cW1Bp&<#xisFLNp% zl2CpTlf^+~B>kGboYCy*0o{3p4mHhfMhJHXwk2x|`G{mn3CEE5oht;i1l768=DI{e zCk4}+(iu*1BJoMk`2qgzB=IkWMZo{?@4xZ)Q$XX$CyL54PC-nL{Sb{G4hT4p?gIE* zXhD=UY-#ebP;N&APl3fFbg40f3gxU|RanNnb@HPaFJ8<`3Kt)Pz*$5IsPWO52a_VXht4ols zN>AD;9s;Afn!qf~QLS1e2@*cdmhj#$Vqpn`^1Oomr8&)ppgB00XkY0~$uO}nr++jl zryo`_d~*T>7)eF0srJxtj-Ot^7y=1j9b8U}w!q1Dqw+ah?tgT0@~QfA(qbT1%^4)( z>s{vb))8=t=aZ#vO;Eym*qB3Z# z74ibN(J?H&&N!^P4j_wu?R}&VK74FM0b>UqyOWJ{o(&6>L4o>loWbYVvf<5}j{z$n zo*>9_62p=`6v6ONSB%2flq5leqo%}x5fJ{Ea}s=(>4wy!b|V!{{st3~{u+ktuKtHl zp6t@`J50HefMGISLFKc9HQVeji`Z9iOWu`S`5q;g>%&Tdeky4^vDf=#EjHE@VED8EdvoS!zEDs z)Bpw?fu<^;HtI-9Hh-6QA*V{Mbu8MmucOc75j}4~Re_r*P%!;hhV!|Y^nz-AgU`Bd z3?p$()oEi-!`^bi#iI~oApa70Rk5OqU_{NBTeXE~tr%Bg1{g$J=kxZQ&PE=AY)*}vBE>$4s2{(VY@1?bk$G4x{=5Jqr zJoIFU9~ygn{N$KFzSVdP4n4kx^|;50CxA2>7a#9G+2{B7eqoHeK6a~O?ClwqTVvNH zZgz>o)9sLyQJ(l#NrGp?pT$BQ~fzo=EOL0~j`UWix;;>iRz=n|rJl}ahYC?YWP{v-IMz|o_VKdk6^1>wC@@QXWs#AQ8DxGEDRhM%nU620dwMEhjk%B}-6DRvFR6`A^{ci7{?6 z#7u$zXm)&VuCTekUl<-6E3AM8{MN=sf$w(#0x!_^$Uk3CrcBXbj7Ttq-=sVy-qdf+XZ3#c@`$uaRs3)dAfy&#_6PvU9Cg-2bbMv!L?sNBdS4WV3WN?{?qE2 zg(p9}1FgHjzJ@#PZNrl1Li0ZqoC-B;m>fHLIe?L~i$I^~X0(t43`p={kB9!wpQ-4a zQ9({)lojK1DfG$An}Ap#LozHWR*T{;-~S%bB~X?7bRx!_&Ap3>sc3p}1;MSOwqx+(oQfF?p{Ot3nE z+Wzu+po`)UAR^^NaG_oNdBZ_>8h<{E9=L0&8g}a)7nd-uXfG2Y3~IPg$qLvoiLW|= zx@|E;(*S({7>%<$IqA$TEjd)WIl$C7Q4>l&4&}5Br?+rxd$smA^sw=anYYKI4AR!l z=Xg*9w896g+@A7hk7=tD&pEKL+Pa0_067^$j(A(%s@gR4}R zti}4$o8w;o~aB z7AfzIPY6pO9xQc3W&0YJ(6I!?sfFRAsNz73T99695w62EEg2rx zRO6N=pz9-QvN0)UrIP;Q$w_3cqSzTJbq0({gEjcGIR#Ru)GMYcn2?CXofTlh?ohtF zI5WC_^QKv7WE-QS=3up4Hc!{qOn{(FCmJz zU^+s-2lN_1jY4GTTw$07jSd}aZ0L_;!9M`r6)f(bV`Em4#OPQOOc8uKT}-FH0>?1T z81BLHXn0Uu1Vn5GdvqdLuZ{KNV+#a7qq}sd3!uR_rNuJzSY?0`$zS{>V@I-~@;nvB z=!3QXiItL?UvbpE7hYJOUf6;%%KFXS-F4Bx68Spud8{L6>f&MV7Ug}~>feiyJ13i&h6lpyfXqTCP3ev=N!+ilZTjGJ* z1YSJOq2UAAEHE1Bb5TXaARP2b=<|Z|Ep~eq2)z;0-3PD%t@)YEAYmC&F10t&kcVtx zBq5P_Yv#`Y{DLMsy1-FuNQ>x(ZNv6j+UEyHby3qmyAshg%YeXWc{2uRng?YuM;Xrw ziXf1YNG#Ce~E?FrQoU`H_%=~wufT8#&Cln0QUA08j) zoqQq@i}3)F@?uucrEtu7LX!^g13d{T%-``cUEj8{RCeAwe*3BX22ZG`JnOv>&+^`1 zg3kuvi2-mu&3*_&0&=emmJ6J@1E+25sK#|Pfr$4DxY9tlAz+{g5oEs*~7i3sVe&N7PC!Z%rQLuhEC6C|E#d zvl}uZU?*a(wpX-rdr1q_2>i(29uGooM++^fTN8ENene-T7M3&EYQR{$ zG@0@twj^nBaL$cFPTseY4J%TPSEt5{1|SbSd?m(sp7CWo0-T^O0x=nEsuJ>jwWGMfDZzt6+nC6Hwo|m6?^Xv5c$N^^uXx*~Ugj z#`V-R;C{t?UmwH$PG(x}ot^a1;k5h?3$xw7f#*XM6CgZhZoTy#>sdhdGhU@wCIS#O$*>8P}ul-1@X+O43-?%aZ59qSujj$TEqua|3pdD ziVf#iXz2{Dabh)dD9L|ZE=dU5}N{ZJcO;S9?Q zpCh*4`Pqq)RJv4JzJA@V`~BErwqs7CVIMCo*%$Zs_VRWw{|&Qk$G{=#k5#*^)Fn8{ zok1USFzp+`DyX*e4+`REo%e64dM#y$1F=$>_e*MZMYHQg-Cn2~9*tGknd%j$s1_JH z&}|TmE3RA+qCbh=vF33Fwsmzuvq!)e%x2xCKM><30)Zq(7gB=1kh})k4&A*#{vEDl zK$yiN(d~p_@`HT;F*=;7V{|4PU{uwd9Kq5y)70S%yv#qKi%?`b2!#E=1nfWd38%}W zQmWC&<)pLaWvLb$j9~&*v8y(Sv5rnpB}*%pC8D@2NIgnfZO{GwGu@7+fq}_|uw3M+ zPe=oiq{v|gQ}1}5_ECL0g3>X@+uug}O!FhYBFP7aI}2*m3EyxhGp75B#Z6Y(FPVpm z0kxekGtOGgh9oz&Mt4nj%up*tKL4(#^X^dyb0iGgzTXHj0DRrcKF3o8_tqCGvI(`Oa-x+ z+HaJIjE(XU6?3SJ+Tsg(Uz$fwJ4C6%ACS?yxg!9F$61UgVwEy!b5IoQ^6B_37@fV) zvF9_9XWv&XB%w3Lg9_8+M_{&e6dn7BYNm5oyTHtz^Q8Ttbs5qA z8)6m%N`|prBiW`kO@(#pe_H{T+MQJ8Db1-)mJBpOEs3`)O`rkZ63&ufwNb1YRJg8W z^XH?QbPu552nGb^`HL4nUfOhBp~kZ9H0m4a5F#RA^pIGWnLGq>;7x}W4m<>~0TPE{ z>KfiN+NjqhU<9E2h-QQ-5lmoG`XFE2Hh(K%G9NrspG5z(I%-24Bd^fC#If(CmU@Nl}f%@j+HnRE-}( zryt7%!EuJU2PKG8(3();e698{suQg%NIO()&PukD)r2VMJ-!);R`?@B&IRE#_};>PSSa1;y|C~AF!pF2B!UX-&=j3 z0hh=6(Q}VK{hd$qpZ@6M7ryfX|H9jk3*P}D!qDTD@2v1E2fp#x_>RFF{QbvwzH^7a z^X79OeS7GDfAdZLVCe0SJ|{ahhRY49innu?_a1=Mnw zm^1|tdrF%Qp0U7*n;+FU0gOaGZ*cL8r3J$)10F6Oz;&g>!cyGf8z)pl0r5(;5+Q5S zeR*((1S*u1z%&Kilc<>#er_tdcXY&$561@vuxC@u_CpdCRyUUAdy^zr>6`s=j zb)IV1HnBABOs7!l{1BqaSlGZ*?X8()bo1Gz2wraAn(iCarC<=&wzWFBuy*hH148kS zpnSsIR>rz4=r=!$n-axzF>WM`iMv68?&|&1px}N6s@6MhWcfo=HMqb|`){vAKz1E@Fm&4d9_60l`9` zC?P~*F+*sL&3mIm$B$9cLou4RpILTJnF)&n0kX;Oj=oc@?@Lz!ft<`w4}zuRt?uNr zqQz@)Tz6n*$&h0i>3Nq;3z0tRqk6@epJDc!VH@Y9`+I}-&6C$WZD?u=LJ1q(e51kT zt7wKnC*c}M+e}U4sHr={&2%60u!v=uP%AF8udq6Kt)4c`bWQG9yBXw~6a!#&I^yjk z46EZA)LV7X2b^en`_Ew{tCUUm7OXZWAw2Jed$ z1eAEWNvnQ_vqH?l01bT%=3Qr`XW+Q>$o%IRb;2j2C67yLoLkMDaeh$-!%jp={XA!4 z{ff<{)=jr=Dj3sJi!Adk%hIr&?k03MPEP`LX+k($m2*YRTnuScmDfM6_=OQ&D(2(z zm>^-MFRFgDx{dBwgOOScxrpEwG{rBzva{2AI<%iQjT&GByQ>eu*oqu!ZRyec{h3EE z-oIaZ?$M)Cg12J4B$d+Dsj1Snvy+p(QV(>sof@?dec)(t=7V#MRty%a0cD_84Rh+V z%`iYyyk@K{?X60n*6><=HvEF?fVYx-Wam%ACw1pZD9K><$Fj0yx$Eh=A(y>Gx}Pt* zv?V-2lN~5Ar@^JAXAZETlcP-_46SB7ODj~l5ygLojPTn4tBtM;PBlJcD<-p%UrUolAg;r(pqdJf*1!spl#fcu(3%asN&6Z|Ew$(`gf$* zSX>5-1W78!b*9(^QUsJ=JTEqDUW1{EacT0<9nng;LKSs*8P9G5`*6ioXvB|ld+gNTdA1oi3xLX zX2u-Fs05w0Epsaj4Xx+!^w;(SqFSQm-UDynZY2aiJ{=2i*vaQp4bc-So{kL^IKIu9 zw+NW#x2GqkKY1Ua0mK+kbQ|s;f}#IVcRmj$s0W() zFI-R56wyW}Q#H5HC(@x_Te7i`1w1`|5M6Y06a&@N8n#q2w}CT5=M|cu_8>&G;saz` zY>jFrPPmTVBr$Z+K5V7$b=o6&X=#>I)!En2UPWx3Jvpq^W>Lb;miG2$=ch(iiwBL> z&COXl=r7E^&>d|96mi>%WZu9Lg-5@IxolhSY4gB3Q*5kOqPQBN(Nt5 z-2uB4vi`)O?(8|ri0-Tz1?6Lj-qhlk=;T#07o(QyZwp-39R-GwIP zaH(`Rg+>Dagy__$R!LXXOdO*c05%Jzga_2`YyhbRmQy#8rna0`%q)0vt$#Ej6tImI z&I5zz;<4_;9`+6&k^edW@S#Xu32}CHRlIfXoCt`Qm;mrZ!HS}gPR98dRw zXHN#_9QLMijd>KZcn#6C_sqY)M^Pt(BL)QcC>7w}m(7OU+?ECMkou zLnD$UPRxUWXNvV3nkIOL@FEy7ComF>YY)(N*A+p2$cZShgYtNOr*b;GbNe=b zZfSd)f9=zs=IuD{1E1AW04cQSjbDA~;X}aNdag+DFj~Q&eOH2e(i0@`Y=U!-v&{}T z`$UhZYeF6dwoNZGI%m zV;srx+OROr+nU3u;VI-^8+X z!W6Je7lHh?A))&*PL)SqcTsiW6hU|4pay(7cGnHNwja0n5hm_}>u5;FX!xP)8sgwI z%*p-}_IL$!qDGJd2fU}4lbu*8VRh94$$~Y@^T@s@CMp#RTnpCV__#%@6_znD5V2a? z0&V}+zE**|YyB9+_jX_pFBLt-c8M3F$eVbi>~-2}@q4e|vo6-}*FcIyD~AhcNP$2d zp+Jm+)QY>e7+uWZsTf)G`>G0RIivP42P`!FAQPnB!g{p=Ff=X0_g>*&dAReW`d*c<+D~r1cZ`CN3tcC4<+vL8z&m|w)FPr;kySr!m=F9d&P>7B|P`NFJ z*TTcKdsPGk?fgJxU$23YO@$GJf)2Y8l^g3M`1mviiIBZ9r$$5I0+1T1-81q%$M_f!SL2b}n6tT1Ll4H>}-le|!}BeaFe zm*z>I9^}_JCK?3u(uIeB{$?^8agUz^^CZZ2Tu_#s*kY_87jJ+ixZ??Fc3BH&%0Q(o zcm}4)27gZ8k*BAPgJEu16b%fPar^vy1yePHb)Ae4={mJtVc-Q>c7SUz+XQl=wUg2I zfSs5R5144ZEK^I0@?f?_K)`I2B|$xdx8N`P(3teqLJqyp>Na{$6~M2chB5%UHxumy za1W6F8E%gTnz#&@3s6oAa-){3%f#y$<;;r+N;;-NOb2CMvj?#%gZHC-{;}zNJei$d zj9XYdibGTdWZ1YeshDJgQ)k9;RT*4pB3K2|IW&1e?^7t%)reZ7$+NG}r8*CEFkLE) zJFu%K?WX8b;R)zq+4(zk1U29%TD*tnn6}|Z*H#}t;vU`G-CTXV%B|MQjh&6hT-g`=Yd=iy4@p3F6)!yN9=R9EfZxiaDXLCk71+@HEXtQp*T+7yI-8Y(JS|K%e~oO$M_ zgqQ<=cPfJwH{#O7jY^sG#A^!`^Ubqu53jl3(x_t_mM4R_Ye9rz$m%~9s5y%(P{1~& zI<}SOb1N4zh$fHGTO6rNBja*&Nhz-6=whAOfHQu*Tt29UCO;7I9sEN1hzn*ozU#g1*45tp~!p}3IOB?aCPL@0`nqk ztHhrbUjFe)M7_%C7%E}6S{R0+Ebqut6>wT-T`V4w0|gJ41{_C&oO3#Pr?)nNzt)CX}Uf%rr)eC!<|jC5mXf%RU*wt z2oGQ~O*~R#2^gxbU^@p<|JvGG_4Ml1Dx;;Do0zChH=9)}rKfVaD#UfBrm9J(S8h}{ z-v5wVSsb+&TeS{-L$?D_g&pj!Tn&~F61kw$+kQO3(`YaBw9fw1#SwdQI0L7HTrB}= zP!~(8x(Y2PUB#$>2&9J9Da0BJNK(~k08opjB7SLX4J2LTrn3#a^?x#)9|BeJUCsRd z=RYDxfKLPiw}^bIK;EXH+KcI_v=YYypk~Ot2jt8tHr;c%M`;K3iewG=pyCcnNE0Qb zP%fi3*O62GL*M_5lOM1QkM#wd5wP#k^4iUt%Z0H_GP#TdWoBmibai!^6M?!kmQN1% z_m?A!eSNWI2m^PGCjxu6)8jBygn=Ts3$0?CeIG3TT7m_kB=S-0IFX|{~oPQpGk zF#KTAC>`Kqx5^cDJp!hg?>F2_ssXAPvltsNWWT0+mpBt^shqX1n*TjGfrzw5Cq(VIUpE7`dY1YLliLl0zTe13gBrPgXGwBJ)0Wu;E%=2AJw z>FZ08nNt~H>BdsMYyvD*?N~WH$jtbm$B`+9(g#bL!q^H6KUFNS;|^CON%h(@2R=WJ z^^DEUBiPOsIbx`J0lemlG0MEbW-;$Mx@9MhKt2g%M)Zqi)bGFtfg>!(Y6e1wN-Ff5 zejJ+__&1v!OP?f^40fT=*C4RUX+kuVnPlF^88c@!?6upDcm3i;ahrUB1hFhvXfOy} z0vOZKuB4Yq%HZ3mw8=NzMrZt^Ycu76)A_^c^Yc5?kQ5roC6fc=ch{EJrl$vP-nlbi zXR`y>Zrm8yu8wU~uU;L%OjueN=-roj%1wkvyJL0wefAH|^;5yH@>QfWBz@4zV zkaAZ#{PZb7`78Rmoe!li~&g*h}Vy-Cgzs ztE7KHJAO;ib%37rC})P@HlvtKwTp^w*2;lxZ^0I!1;qbv@b@+Hnt z<5s-LmpudfmxfjAcXFLboiogZPFrpVNsrkXliSUN++1CCl#j8~9Go<&SOsy0?)E!k ztfolmcX?h>?BQ(D0sV6tB9=PUfs*IB0;hVRBu1YSu>z(Kt^A1-VN7O>vc=AjsVOgE zlBOt^f~pj8U?t&23B9|6*z;9lG{L&c!R>81hA;?(#j+QT%F6=-at-bKwCl=?bJNo@ z+`O!$Qs?9bM_EHi2deOt#MlMY8zuXFIBRPNjqbf4fU?sc2!PIcBN%#?OrU2$_56?^ z85Z>&)W=aUWC?Q)7}IJ$xhB!DQ%CwerS$6&48TZLSHjqaUDcegfn}^55p_mwqM1i`cHT%VM_r*4 zlQFuR&fxyDWq!NuQ2<$qlmP2mu~nMq`{sDo@TSiPbbh6grbrG=in({^``|iT# znW~U*o+F@l;T#rOn{8=U4s+OUpa@_ZTjgfbk>~(d^P-^iO~as|4&{W7o8}Je6cFh< zOG`@xwFc@YW6`oSP@wjyY5=uk3Cfj#+-%GBCA^{b0g*?ncRt;qj`gL^YX>NmZGS-pU=(qH#{e8XK z*{N3w*{r^ELWoszcl-Qa2DFo2-7tS6H@h2yNr{+D<;-xFkEEnsP)C5n_h3Y+JsKAkS6(=W=gkioc-h|7nvIDpBbk#bmw3@3Wo?!i9x9pjY-mp;qC1co?%3z zCzgkXPLQopPJ9tEc5tqn4)=?bFf43jww??KYl8-%WV39Fn@We*KjepwcO%H8VDz9` z#NM*yMnz=UI6@R(<~8fi*}bTRB68SrBu5LoBBNK=z1ZnuFP_dDRGwG| zxR)mOU~;UY#hv%ec$g-@vGXPJlBcC3GzKmp?5TQ0%r2w3DtXbpm8^s+Q=d<9RGmAq|M`9H@qO<8o7thyhq%W>+)%74Tc2CpV~ev!UH$IoH@U|* zxtrH7?7vynuV2@zZ|+}^xsz14YtDkBROc^+AsR)fiT{nhHXkCGYL<*xXjE&_3+NEU z1~H;C)KX{y91}uhk~^rp#t;QJhQ=v8gKuhYSimoqcNVb`0xdUVg)p1^MEICAuejl3SU6XTkogM3ufCzUNDHkXbddab(y?|NPrbU)e47<$_K(i%{_s zMXxC6LHn4_QCX1rdNO^8!~Fb4iN+yCzgYOCqJg~08vYvehgd~8YYp{1jOHw209#Nz zv?Bm%c1$Il6y$P&Pvtah<*cQIbWQ`WUtSb6BD@58lc(WJunNQG`3h`MeF~HOor;>0 zoq_Ckfv=G}lYr-A$pqT4nBURFuxH2M)soQ|^jmYgQ{^s8a5{z)!*fVeXTg?+y|jj$ za&41OApzjlU|l4Zv^?Xv7z2LrLffnL*~j21 z?d3G8iVr`oaFzbY87|YdyzzL0+gR91J;vb({{U1B+Hil{PB^>+o&~K}StT@_@gl*i zphQhg>koQLO;8*COyYZ*Y~g8D!2R~?f4J|yx-=?(B%+{z%M`PrYOKM*fIg(0_|-7r zJ9PSOi!Y-`$55G7O(FhR3Y%HY6(hIHSwNlQRX!gf)YTCjeXKqlcZ$I3gOdI1r>6H6 z%K)vYu$E9FStX4LL4KMsB~U1KKQ)Bbk|j^Lim4yZWH3PgTEDB5vh7JB4Y5SQ6^vbo zNytq%vWXu+-Tb(Xn0x-5Wr#(vg7*d$D&RMV`l^y-W5ClcRw{P3P_QxCX~(cbC}SgG zv}v@n*Y0gqk-#TCBQ0e9zhQ20r-qw%i#1YVj2ioa5XM1aWCd1_HNk7FK6U6$C@g46&|H z86^OD#b*L1WdC0>TT?}^ns|8MZ@X3>+4Qjf(6jc-nPk z1b#sfk+^|2DGK6>1cqNC5e3M#C9@g_r8pR>jA{YPY+2uKn&)pKb2l75%_w`Pb-OBI zL54qN6frdgBcB+<#ovUifay*}K8U}sL_4~8MRTO14hXW5ih}lNy;?wU0r+7!Mf9*{ zDw!#$qFw}IK{bb16_+A8tRO&LomPf!gBcb`Hkv#7kBr?)V7s)4HS-+BaRx%TGHT)F zxie?V<42B^ha6{YtbA;Cw%ps%5s8#(dM;T$v@ZKVb}f$@!7}^^g;%Xw!g`~SO#7_R z&O$Tz4W=+mQuKv|#&}sfKA|#y(hz0rSB@Z3JHiqdE`-_!r-q{f=!f91t01-1 z26_ijNaP7QBBV4MG5(S7XFG}Sh_KBVH|kTcc!c_;@D>HoVecg*Fp4C13Tj?dW(O(= z>;^iHg%o%fj{~D-Syw^`y|B6o1@%m36u`@vBMh=WPZ#x5S3$@Vmm@6i_)kFW|1s?U zan^-^#V`b`8CVKJ=-D14;1TkK>%(RSQUjk4hclAhe6hec{|=N>6#O^5&N3RC9RUG zYatuEt1!xfj5%i4>^G=_1zu#P2N>C{NSJVAdf<8OBQIdTnIkSNRE!)K1&e@|J9=?{ zt|Pn}!lBJ@aNtbj&2wq7C*u*I^hOC6@Dbc?oEkx9jH~Uwm?rzqtAsJW2dy|Krgoqx|TEPY*Wo z_}r6o{JEDN=bq#MJxVx_ohJ_O@Mj*Md~%XMdE)mbxZfM$R{JMLUMd0d&X-;qndo0t z!|RWypJ2$n9wtxzVoRsH2~+p|x8Lq=ex-Q%sbF{n^)ASlv_76@aX@lUI3pjGIj|wOk59^tSU+;av103JAcukliVV3Y1HZ0- zID<7&X5qf?uZ1Oysufn_SeH0XZK`4%TjvGDy9%3?{D0ur^`O#4n)Mo@s$tn|D{Mw0 zV5;7|cd!4b8+JD~`WGz6T3P9zpE1pT@Fn&S^-T2?3jJ3vUAPeMKb+kk*sU*dO1J=j zAcg~-B6q~@F5P8cS;ks;n8(o)go-hjPH{2SB}onkKFojAqHB2hGtAr%04JpMUYGn~ z;9<^oxJXXV0-~cRSWcHydARRE!v@So&_`^0)pSQAsLg~7rzd4O*Y^=0sIK68B7qSQ z4EKqR?KZzm6dLFRm|aD%iC4?z>F#YCw6y(cn_A%#(DC7rAz~*c2fzX-Pjwd@S9!K- z-TFEat*&@L98Q%O909?FvJ%0P4c5&f^x~gEQdwX}Cy}H0J1bBT?uHAIwojdsW`P{- z@9dQFk%)ACYfDPya+2EC1_bG~mtT5mTsp+3dLW}lq|o}ERbrUiZ=gt(*I)dTLICS>IpfdI)=7nIDMK3!}mkQl`%X(NYa#N14t#B=r)3Q zBbodTCn(3S$&qbr!Lp?j82Y1SgQ)}{)+lcRiQQi;P9Th4N-LqPoL&n>_=a23!0n?4 zx#CY?<@{ZFwC{~7^tapIq)6_;-B+)S^mSKD%P+nt&xga9li$O{@eBro01}zhrfKk) zTDY<*PE4dhZqQmC^F39o?l9T-&I_)J{ekub_qkOG#)F70fVf4K;U=4K!+SN%Sadun z**{ZHm=5}71s`YX$J(Q{_feX`*y~UX`!vIb)7uW2D4Jo*iGr*0r?A2rPD4`{c-tiU zN^y!-k(S;rZ5CKwL!Dkl0oE6?LI>Dzzr*A8R5Hl&mI&A!ceHdY0-1rh1BwCmF-uvD zf(b|kYuHqr$FMz$ZK&DsVAqy_5dIco2k2UX%L}`^Gh-}xsA0@cV&r3Tc?!OcH%*jp zz;(liJj^39)RoT-?O_IxI$u@Dk$A?=Qs--nFXzA|!Dq3!J(OC;!Dw%3rQpLBFzTxX3hN~uVq4qA%J%T;X(e(so7!3ez+|{(**kEezK@4<@pJbEx~=g&$mGedsDmbbY-}b+P*V$Vk5a%+R~VmNkk1EF3@(?#JP+Q338RygubDE#8Ji zg-<4&0C(Mv3rS*4223VL%8H&Np`Qh5IgO7S_N<5luJh3hyaqo@?k9m_0qWF%HHo3= z)3dYR285HdPO;Y5X-8~b}>#5n@LF!~CvDdgXJ(>9I*fD9Os=6sTU&lU@9tLh9 zK(=3l{=X1s)9&FC>M=A;`xbSFt*#T54f#ad#tW~%zOgqyJU=GV{MY@I?3GHL=TDnZl~~^N-mr{VTu?Y*d$od*L)%zSgwY8z zbD9!T%U%~UB3oB!M;zC#?R25`A63!i1nHEH8ViO(RZWTTVS?A>K{^^y^S??sJRkXs z8bcSc0MK|tI{m#)(-7K`+l%Y#(#rV4f^_x738~Oot4Wt% zLOVwqZk4OAZH?*#*}|q>4C-}E!qFC4k)+}cfCdwruRe-Q0r*of14*bAS;>?xkmxhC z?k12jp6PUzB!iEul1!nra2%Z&jEy9PRDlB&1CU7AMNx|IAz=QT7j%jyUhJ?s=<{C? zD%ccK1g@DyuRxQ6fs}WLLI}cK-k1s-HV?W6LAMhiZv{x(>#6iOViqksbfvrViY0#> zUIJ69CC_`3YwtHPmyBm%706+KMR14LP_o9}n!kmPdB~1#LLT2BY{A~etu6KT*T1e} zSV$e7n^Ql!bxX}`ZdR*mJe^iQc=xThJQe#G58Bhu@KAw7Adfhsi6_0NK|$D_%7!mu zfjA_9>=c~!K&`ewrr&U|@Qv+sC7vsGdPl{ZAj-<9C=pz>U z9aB%Gdw4H?9_j+JwyqL3n`s!fTZP$!K{RuE2n6PWBI|10O>tg^2aU5e=U_xK%7sk$ zw1fgWc$Lwm&?w1oWjkpaIEj#iHa2!?B7=3C*=TP4WCH#WEKi~&_RKA3el-qkp{h9^ zh~{OTa|_TfEOiBvUb4}kGYv`OTt}=8$A$FxP)7Y_do*9v1v`UbF*N9UGyu*~vr@%J zKuJY6u{N-q5lD0pNcJdp5mWYSGKR@NM?69pVTtO)vnIXjh1qe$SBnW6QhU7pP%-Bjjmm*7DD!x|kD%yFDzlh#lK!e<`z`DDV6smxHJVo(=*)GdbMLI`D92P;jFh7?++sXIx| z%!D}CZ-t}%Lct?JfULS|?$y7S@8(QUvFdDo0z)yhfrKi9`7tmYV0|f8qh z=sHvJMaOz~)Gen8iUMP&I1SX#2W?=NyLIm2{>0o+H|M&gs}CNOu3UWhu%xuLm5y(0 z%*~bB`+#jLiP==@&C;8Pw6hVN1UlJbE}JM4+-Z2TL-o5uRR=#>VHG5@fVD#nbE*xt z3}islSw*k}HEj%CvRBd<-{4}N%x~9XYa!CPp|pO(#DHLU1yB`%xQKE&*{i~o)2>KkKI(xA zgDO&R)24(SlZFvNf(#c7G(;R>Xh%f0R8bcD(`8+>auvT9XrXUKjHFq{T|}IhIllCupq?QmvhgZ5a>Z!LU-J4#oHuYJQK9P6p}Xm;1l_qQTiTd8vc+Qo(rF z4V2_%Mc<#s=%s38%4uPl6l)2;Mo6KX?dZ#XkD7*JzBDTk;H0 zC87?er&1wMR_5_$a;8xD1SIUKKB=&fR{&6a0kk_9=DUQHJCm6`cI@@!n(OerjOebA zgg0D?DQ=S0ZYc(#4NEDYcI&8H5I-0?BH=!{?d;}e>BV>6DFNMH;`;hZ_s*RwVX+}p z>ki;Vv!%w(e@c;>VF%rM{J}kEcZx#6#=$4Y#o`b@#(-`hjmCWsis8)Z;pZSb9)q(C ze3=61HTx}l3EW((6rNS6{p5IuE!x;?%hQfvQNtcucnXAa9mvcg5^50YI12=i14Dua zl-p6|YoNQhsuJm!CaG3B%*C{bZQCXDXZ>;W6q_G|d_aHf%P0Sv*azUE$%(cf&01m_ z$wWpd$P2O2sDf+&R??EkFb5@_t7G>wlInplfJ}}obJ*Gu$3Mh5Yf(cfx*>Gt^ZNU! z;--%#K+?k&m3O)j+G3K5xXh3JdzQ7)OwAbTO?BqUUMFj~6W=Wv@pw0e%DQJK)QM85 z8*^pdoHQ;?Pj`3piG6Kt-IQ5_4ye@{29B!5U$s0ukfI;|1(684TR|j3p$A0N80b4B zP6%jhbeIM=gR}ug5sRepiXpo0dGdR|U{>=My67T@fh1ciM78z;m#!&j4g%(2fP~YV zB^|Mk=P_dKe=#389T73kS4d94*ls+VQf zHHstyuSIiz6cWPGZjI-`skCd zdPPPZc`mwE{7_%rfW@=^x;MA zB*5l-qX>4$Ns_|SExrjJ5wQ{4`;y) zWwO|Gf!st8ST;h6VUNhA7!3o_{{X9i6;~M zL_PH=_9Vu~!eftyo(%Cr{g1dOINj$Tv8HC*?xUS2JN(Y(@3nDS6+O)U^KF}(ZRh*L z_30}9%Z|5W>nhbZhYzrTGzgEoL%Z(fEw`WM*spj0!y+8$<-vU2+Z~=Sy7nJiWVN^^A?ApZ(CBvN+5iPne=+d<5 z_2;e74cy;)KHSLG4eBzZ=tU*WN1m1oq@7t z{=@{j5?Q)6Xn?N+bhFs70PqZLIGs&jtm%-NwOI=8>1D>iZ+CD5Ir7>7!Tq`3L5=B^&(t;l1oRhwbxAK%?0yxSBC+W`7RyAV1rIh2CNeIXo(dd5 z=q6*TPk>;6Rjhh|pOv?fI}^LN{ttfvo%nN1T}*-bhGy^1`aR0klk4l#XWn>Y8dToX zDTHcAj!YK@vsfrTeQSSzy4F+1!iH%O8BM=>?egW#>CM)#!;jmW_r9qX&1dKW(hR!Q zGVW(}yD*v5ks}P6zRXn`8?;onNtu7|;BdRR{YzB)gk> zX2_Yh*xm=^%sp(DrjSOsGFN2G$|SS@z~V#|n+1}n@LvVf%BRE`*dM?oFpc|wzmzJv6Q z*)W3oF{CQhsYaXj3YQ=ZWEaxwhFR!{f^nmsj0Bn@jpu02JFZMEUry~Y$gXknm}6x5 z1h`Z3*m9Vd0h89C=`5Ps@u=LGLfvc}HVAz&wJH1<) zf!)`rDT-pae3Jr5)IC@LiMYQ@1M4^KhsggB_;EDhMGYt#8BYnA_2%<64?(ENTi=o# z!wW@`u_-AO2_@0&hDu`1lov5U%8A?_gEg8*D;-jzq2PBikNPz)j_mBb***&fs(x@4 zp@mBPIbcH%Wtc7e3zj<*QecCz51xh{yxR7aw)^$*+4I%?+~tox%AM4=hLx@P`P`a& zd~ee_-q)9V>*beowdnG(&@y%zq>D=ltd-Bb@!Fj`SS7*sjQR$#p@jI}R70P?jh%t! z(|7>Qj0XnoKnML{W2Q}wL?B42VJTTe5uAl~7GmNlCf>kqHtZ;BB#r2lnbeA9GyNe92NzQFv||j zO=7gg!tTa|Nv8t-cqA8QA>C2#jSIPc2Kr2~^+H+K6tjr((8fWfBkDSH#O&3rJeM&}NF0xDYtF$tZ55hlU|@x>cS zKO3HgP)jvj9%DKm7-D(cFM^>tOKow|cq$JlEPwfZMpKb1a-&JIz5m<}zhfGgHT%s= zpJ4zUv~7A3g=!k$h$-9vU*Z!SjzY>BC}ZRhI5$z{f!3w!m-;=Ja0$qCu8gTV9vfV& zB0_x505hutcCdKW6!THgjFyv#=&>vceV(WXDtFnefMYD%PVu9S2~e(7`WLEa08Rp? zmyL*wU35GrReRGsMV=+DTt=r4EF_AK%`Jcq8)la0sQ|~B$w&4z<}GH zNVq5hxfj;ggEe+9o;h`D$!*YD`l4?hfW|?f?=1RkN*xZ?ccHCcN82d~1-ztD2n!C# zL1e>Bw;ug%C@|QHuV;xm_6wPQHYsNF; z?S}g%B!4{gE!bfMoxnlhM?mIawSjKK_4$7lj-V}pm4;vvEENI3>P&~!EBQRe>x6X& zkRqgZDILu_@M=I>n6br3Vv!=E(mA%AAQ};RSk#lJAzptufsP*CUt!kt4+CT)v8`9Z zT1F_X3sh}6Zk4LtSSD!Yz&Vi0X02E!4JSqI2oIM4CQ3n;u<5LFOVJA)$v}BSiSlgU^ zf_`&Mw+6DdNPG^lZyV1McM$(D*b zr%|9crCn@27sN#JT2hT-!vJv{V%9;);rLf9*>OKD6tKgiw6*nml7`p%&}l(8eHV>Wga?L(*)4C}F=WJiQl;A!N;4B!X%z$A zm>dI%OmYxuGXN_w-Ni1U{t%{3k>K^2po`1&&Ny=P$WTJa^#F1g(}lhnl5YoSpX9l$ z63!}x(^x4)6T|;EvbjGC(273h^co?5c1D-yXQrmEY;EyN^#OntU%Gsm*K2mIT;_YE zPMRE|Wu7QYwW=9~4$Q7KEt_xSXehgNYB3N^nZ@@3MSHuRf< z-xlW4jJ3z+wBmLT^xv z_sWLbvAe(Za$-O9a;dA!J@fkOZmw8##|8$nS@-7tzDv+6*ES3n6Y)K6V{o+LKbj&q z2>95qSa^p34<$fub+C z@0%c4H}o#pKXAR96AoKRFKW@Ptt~W~w}|l?X+E|Ldr3t_@iSocD{i=%LBbHk}>RkVc@x&!1mIf?vNY~NwIodwWB6d z1N+`|M2>+Q+2d@)_1LOTBf+w2+LLfkg_Weo4}+8l5G)Km2FrBdm8cf=Idn%4Fuyd* zxYl+V-OG>L-mFi0#;$UY>$v*WuXbGCxwx~t+mSENltB;`Pv_F5QpY=2u5>I8#0FBS zj;Ba}?^3iUkTs5xXC=A9%7BK~fChcWeUnX_`c4AOmGWRN;5w zm^|YL*RW+HjK9U-y!*V6;@@#0U_XF%!+rNfaTyS34Q%1rq z(7N3V_ziI$NtTf0LYQ!=*1(tyJJpW1I>AEh!y=B4L1}9+tTKkfo7wciNdaz>X|?ay%8M-b`mx+$ab_O|2B;l5HOgWzkh71oVjJvd~5DR@~{K+uvk^!j! z45;aKf?+VFI0Nb51PIbaqMJ?Bke@R0}OI85dablkHHtx zmVv)#2n4?yb`-U&SHb7=4Pw~4_VV#tU;ld7rL7BF$B%a{b7^jBs_UbhH@jx$m*(5r zx{5>7L-l$WVeh)ydn>(zgD1OAHtlE-lN@MV!)kuR9@Bq9X z<^i$c965!oE0Qbl30VxadkXqB@S}kIxzI!@6PMKC2tHCEL9kIHfphHFHPL}d6-1a+ z({^Fatz+qiS$zHar-lAy zvJZ|xOOWJu7g)eUzA^}UNcUN!6U3#hF7l}pKrixVc7s>2Q$w|qv2o=&Ci;cUQq}=y!ym(!bMVC2C%S-^Y9XE@+FKu zm$|9jAYT3ZhWpUAE@{^HL!pF=k7xx5TbCAYO0;&xl|%i$yU80Gy$kVKF?({N?a6dTJ8wq5>WxyF4<=yxB<3#(a_7{Hv&QewoL~!A^nUz z7S-t7Ic!hc#Tttt637vN6u?{uCL&9SCBeUpCtds3Aae_=4lUIc!<&jfLwO~#BALqNfRR?sx#+U zeE^uf4Xtwi-FGWvtE-j46QgLdR$hDY#md0xy}gQO2}0#u`U;HTPDg7jov{Su{dVq8kAT-A84q4+_i1v_C_8Wh6A)}oD3?|?p^d-z%6^$>? zlk^|xGWaqKh!#w|atGiks^z3WWokyjpAu7*F@U21oGpPHuYmjB#iL39mM1{W&}C2r z1!#9Eo8~g;HyB!$D$^(zbQ8AS4#r51&_Y{^aM4i84rOQRN5WinOi?mn-C57ZZJ1>@ zl!*$lQoLs==Ba8N$teCZfTdiG`z!XuaJ5=Rw~g`ZEevLXU;_Lyz@?U z`sB%I&++5YLM)>LOPR+%E%X+Cq)a8df5TzK*FFbeD&-~cr5#-KJ~rnGS-FPASE$IK z$OeUWG7*zA!9}5BiDAUjB{3&evgw}eWiE4#UC;h&@BGf0D;X zHLe$rCsx8Cp0Mm-iHYM?n>GY^mtrT(*&!4CFQ}B#ED*7-j)7y6khE7YfBz73L726> zXMFYYhbP`yc_2@Xj|{AIU+zDVy_`A`S+V7#moFPh+k@TfiCQg)8h`^(6Vf}m zhyXOT7;=yTV+hGJvzp-5jCKdKRw8&5P`E&`H^h};^h=k)f{|E>Vs`+Gl(I?m0vD+l z_=B#nTtqVoqn*5hoL5uyc2HS_(UV}F_itc>Y2tVcTVGG18*u~K>4zk7{^7|t$6u3f zj$b=@F>~(Z{`i>GoJyO118ugrXT1* zjC0vaVBv!|Q=)6g`P&&4B(VxG870m6_~Vbkj}cDsF}H-n)sym2YqCP&LiF~|&fDpg zP*~`NNOiY}dW5{=D$(2yl3rCYCP9Y={xn%z!!iS2V9yx9)`L<2vQ?1}{SBtVioiMf z+X!YEv(v-2hxO@smG6&trmOK%IvkJlFTM93Kb;L_(`kNUYKp%Pk|(Sv;Lk6eUE15@ zi;|s}hKKokw{F}x%^xl=1u}kG)DU;;Q}meqp^Bj|WA>GTFZv|g3iCax0F#F7h9$r) z5@NC@dE+y9Im|GIX<5s7j9~W^akax0(m+YF##l$;ccZ%*Y2IUr1hVvO--LU!ykiii&Bn???m(z=MP2B&y<)iH`3Fl zZep_151P>F!i@(@kzep*wT!2iwy`+tSb=%1m!)dl{-bs+FwMy=!l&JN}iKUn*ke*JRy#kF(Yr`OKv zrL~&gv$p2d5$|JXhc|mmcN!R$fphV+ub`mVzENz7MmXDF7H||0=Wlem@q+rl!b$fJs2C%tn!d zH>$W(QO(5>&&eeK}6g%igZpbrq(LK{JmDSSg*{gD#t0A44SHbD@Y zr5HeSy%<;Qu#H$O&Gio0W}(nmoetN~sdX`y0T+W;uXD2N(>3agrfG z$aSTULy%!WJOGH;TnM;hRg)>^o(DZ#mp{BsW57)5?}(T@!AU|6SoRPPSfI`Zz67TN zi2@o*2?rZi!4#CgqNubzUQmEM$J>T+B2~?w7ye819sW1eO$ZM%0%Xu0+nn}@s?viu zzxFjV*VktrJ9+)OiOCi7gI8ZQ>#M6~5|N^lNSF`be&Y>ua&z;t*_a0RQ!P3G&-iRU z*{qM0VM&Hbjagzv(KNFVh`JA~dJI-w_Js^-29f(PTbdxVnN_m+ak2(v<8cW5gV9be z!HGK*9z4Sj+$t0habwXCCg^D-6}YTIw*kFZK;>$QUc?gl0v}CtNq5ra*$}o0GA4}v z0K{plgKDM#rRWSb)DyoL13J$C42;*qsqX;8mk~5}$im2%YAOrz%8{#fzTv znUCc2dq~)hH`GM(VNz}w;7dL!q0`7kuyfVz$5w7j?6pB~jxEsWta2cxg{#33mn6VG zgIy^k+48?;y{0%m?%QJ4#_|Lgry#cmL6Q*T=y`p-3MX+cOv@?tV$Id!9%>tiSUT$vOdqVne; z19kKhaSWyZ|CR556CaNnaU*&eF+2LH1}zcjLoo%$`Lss+bU|g8RH>YH3u|?u++o30 z%TYdkG8rbBN{;i*pfAY!PXvdNi2;hj`2PV^bv_Z>WT@gQS@OT2la$g9nuHiW5OzdP zhUZ4H4E$ZL*n`0jWQ1T`2QR0r$E-cbFF^|{$!-IXL_zx!TMq_Zq#niRsFnB_JVIrz zLLaG10oj4WsiT8OjLk0{J<4NVobQ{P<1gO4d3f>bg|lFPE=hR=ajoEq7U3ae^PTZC ztT8jyhoU(ae6uekm`1}8kK=*t8kLf!3L;QHz>gs@_eIFGzA+g0 zfUyS0Aod+P09FVZx(q<#9iI(>KvGT|A#Hr2QO8`4#ZqWEVD3I1cKE0g!wRghFv!#_ zOLGltKu-A;5edBo;vM=^c*sdiDBQ<{0%lq7+ONO%8h8D{1C9vnxYKic*iy|+X2-Iq z0?3hwuJ3dEfj0RSEH7o6!KU{8iquF=X~x-LvuPMdh$1LOk&v2K1WxbJ zZyOgr%QTWC-l7y|&h~yJSP{WCIs3R=MD+?_)Uu~zbN~%lR4I%!k1<6iy8XLafS7#;A$(9oxHMm?u;l15_tZ{)xcq7gqR0cTbX!&%OdiZfo2@ z!iwP;P%}sjo0N6YRF8x}i2|&;smYLG9*ZiqXui{yGvO4_@8HD!b*vSzg+i5jeIR@_ zrGkxEXQV`Xg7km*Pi!WE*r3h=wSEtEi+@DOqm@$XmVS-DbZ&ol^!~TM&7T-t#0&}l z$!o9i+j8e|u&nUZHo#n5!|*YsXz^u@hrXdhm4eBO?s|kN3YateQy+`NlgaT2h6@7J zAHD~?3w~Bh1xL8G(O5jzWY!q1jm8-SlX*cTt_KwgBsfi(vuKzZ$7hLB8T%bbErrMw zsfd9Mo;s!nu;U31O~Vqc1Ru9C2-1O6RI{_7?#$^bRfguE>Z6b<2_LC(!ZN-$Ev6-TLVQ!EJXr59VQkVlz)RzV>Zy2@$qbU$WXddQ6~*9 zG0Zr}U9jP$!NgTi?=+G+YxaOo(=;;e)NKZ)u0lr^U7aGT^P=;Ps_tT1 zIane^m>0jE{6~01Y=)zlD!-08@?<@=W4!Us<=89nYSma?TQf44nn(@x_Z!$W2(G-w zjc2zSKOln~^6z(`DddtGHw{nG-9JboDAGLSgutK7!i!kEX)vQ~E`Y5q8h^S{0cNVh z6-Fo~T-$pt_N2KyMgqVNiM62-R0L09=YyQmXx|5TO*Fc{R1jQ3QwIYCBo>r;A)yFb zZ4m^ZZaStb@pITLLJM?29)Lt0po=L_pnwFx&=3#Z3d_PDnOOJ&0_!8U5=!cli^4)r z$dIx}k1lj$cv;!-!F1I{bn>q==kL&M+#$dS@mve%x*vbF|_koJcN$OZ|ev<(c}^|nvi9<^Z~{jD|m zXYSmQzw+s)@`vxe{k9DLhORF8;*~3MTd}uS9-W$!?PwGvqG=8NDom`;&E1n5)qxf* zdP=tfZ8{|J26p199$YglQJPH~rdLQLZ~$l)WO#^H>6K+z*q{>VCyeqqg3G5SK`34H zcXzTkdHT!*feYUFbh3tmaKdnhL9|N{h#G||h6^WGN3EN)=f!L>{c|!bE+-?z54#xQ z;azAc7!egt=M5{BH-$_Li#t0LI_Ak{ReN4X8x@fb`s`SjI-X{8C{E}d%e<^QZ(aH% zogPBH2=t{Mut_YI`8bl#V(7q-kYu8HzL!RgmJ@W&Nnk8laPlYw8H%TI1%M7QH7+9% z#l}M&i%H0@>c)+{A%T7@mW?<{J+-x!zIyz4x-^snb0b>tX(A0vV|(p*db|;K{^j->f1&rFs=xicNi1GOQRIbwBz$Btv?icehl~-7I-*0 zaPjFv9APBx3q}%78{UI!nzICUHqF$N@gzo(vzlwwxA4m;cr8tn6Ir=l|CLM!2klP* zkYs4{=*lWeR>mS|EAtzuyv^yL&#?tK_@y)-o7>4ka2=YX6IBbR#{gW@j9mCqIJ}&i zLM&=a^Qum;K|us3z&`LY)U;UxnPLZvLQ~Knd6}Y6mMi!;G^)|$!ESSuP0A9h3aT{2 zyZfhK$tKUtE}U6ealx(PW)j^%^cE@=7wjs*><+Q3w7c!kc5zHMo5JxkJ{Vid4Fb0n zRD2KI8E!V^c}#^`)-171j$#}%$4M{@M@TK0W>Ll`q-XZ}IRe8>&nX#XMF^Uhmy2w~ zjrhrN&F-~~3>4=K@;m^Vpdp}t!>^3^l%DJ}#7Z0ux>Qx^j9-Mlp`M$u2$Tk_L$|7; zqYCSt`|TtuKG3986hkN2KcaS)Z2f1TP-(PbglplU7%_lNAaw_s12`nacwVX$wT_4Su)t=HQ#1%k`;4?X1njpwLrr%yD_R=g%9%u!mgSN+Jx8Od_;w25mRF$y1 zHcI1;fRS}z97M@didn#8@J@=b5wfs2O9h01F2SPlcw81NS&wHVTwwz{!}B%S^W;3| zMX(p##z>3+##%tG9nmQvU6IkMF%kjOgJ8e|Qw`vTfO0I#z*zuh9KPb9*F&Txri@Vx9BRvyRTKdwOGNr5h?Y=ADWhhB z56dZ|fy>J_d;qbn(iV6+VN)&Kb3na`#zOma28YN10iCgN>XcE=c6GJ48v}`640#&h zpEJh7!|3>-3!qM_p^!nqi=)QT)+5(AZTQ|W-HnG&8FqS_qG9lrAqsAsh^8qILS1%D z=*gxdZ>ciGTk@Sop}}{||6k1e-5zk{^Jxx~GomL)F+V>`84-1W3=pUzEYh7zI3*KQ z4Vq@N_Av|d8>q@7?9xOS`xWZ-*hi24Q?!BPIA|!yY@px|0t8HEqa;-N4fF_zsVCu> z9MCer%)|j@N@1a4f_yXvv2iHk!Zi3?aI#G6UAGcK3s%n1YUtr&@dPI8iz`l2=wp@q z9y)qH83K_120ZZJqJO7gw`Tzs!)HVI0CT#(Ncfq#&&ofS|8)Pu%MbTI$lLqsWoci@ zgCik7zPq}6>{!0PT+V|WAy1458~Ke^F@8aIB&@@K$kxkpZHx-C2XYvV;>Td-9=+IB zQZrb8{0gRk$`*$<@dR4WWQ>nH z#)XZ1526;8Owe}&3y_I)7XK}S5tRpy=Xh8dBs(Ui~n%2eTO zYR2m`Zh!jGM=QrqZ=Xh93#YO2)+e8=EcW%S%q}df5Ket%a%N@)2E$LZnEP*>k=E~Y zMks0v{`jcLgVWKHBB7iMQ3v&pQHT>(z}H>Uc7;s<(<3@G zaME;45NCDVg~ z7j?p=m;TV-7i-&ZhWcaBH{hlaX7>^bb8#FWKTM28kt0iB4Djqvl5M$#iCqTxvNvccPvxyBue+zj<5T%bX)EuFx-UEgTar(QJaN+Ff>9i8P zy1Bdi{@ZUCj!sV(uurXU_u<0=oL7MyZ~-gdjunmt)| z)tVOl48RhI{2;ax1>=l2<>|UUpo z#x#-kLsPen_HL(885v<)Rj7vwlw5t{Tv1oVwIfHAt?SnnaG@ymr6uL1%}s^#JSEZJ zub^D148`LLO}Z*-IIQFc2iuiKLe`M&GlkvwW#c=9@6TJ39Szdq10{@;f;FD@J8Laj za-f!t3t*7Hpp6up;ViW(_q&-+l(8^42}6pCDe4uRi3Alnk{HX#sZ@wFJE*tXu2@qY z9UY$`@4}#Lnpn26r4UiMKNphw)kNY)+1~<_f+1IulKxMA49?y}q9f9a@Z6Gq7f>i5 zF91>aK&r>%7e^5uD^duDK>?+DF_W33LL-0>d>=!><*@)EAoHck0pcb4G3F*`&`BdM zsr%Sm_=p%4KKbCC2U}}PvqL9edrdwvG$cEfihO-<53|*_O!X>i;mGMkqD$_2p5ieX zP&0u3K=0^AGfNmmxGhaHa&^8~Knbo;SUd)Y#uO>AoCmg18IC~F*zVNl8OBya9J~Pt zlCZ(va%Ibk+L~QmrwT=x!ka3^t@ipAtb#|moy(Y_eB8zCmxEf-re-0JV&kvItbpMj zMbYYoJ`P340wO6x11AHP*)#4hyKvJ2cLqRBddx)nf%eS#$eabxE2i#1IhrpBT8@-Z znhqg4%Xeeq8BGUls~bXaoXnc2ilH3E<|~ofWG%dttemBAcqwfQ!;I##M2rnv$ec5i zbftnOE3ea*S1irW zds!Hx;UP+aL*6i`C^NfCdea)jw1zoPSCkv>lO2cyL>)UvI5tlc5g_P!hGMdRfTE#$ zo~}?dWc47XF+;MWC9;MyZxmvd1g17Ha&wU$zU0vWP!>~Ju*;yr#2^V~Qzh)SwUzh; z2XBu`3yM>D!*Hr-{Uv~P6sc03zQ;IjO5(mdv z_Dgm_Nboh&LfDOHTRk`Cj3&9%ycR+ox^gbzEO5NV=nzgCf~&a&!yZTD80X~N22w6e z3g#Hc4#;xb6*Z?LtFsCpN<7A%X4P!klwvW!-hjABNi?xG$#XxJFslf(x^~ZXH^bp6 zD{5-dEYQ-Hw-*_U(;#6CQ8yNK;v7jmX<1c{96Ri!+5TBvm0%Gc6G<)3$ zrlYXlE)5E6gbEqZ;@Ln&p@u>j$UlL1SCDyE+B$+Ac2oh!^nL$A55hDZHE?~tHZ-J{ zs#SfWSkzGn*QITu{La#!p*oerb#qP4w?MPKCqCaQJc*jD!hEj1AO85S|@NuD0> zkRjb?VYUu5duz|v0T1CKIP0id@)k*}r?$7XaOT>znrB%H3pEtuG}o;qCdElrt)1WB zuZ`p|^E)w7>n!)T6%b$7&H>7?R$B{P|6w^b<>kwT+&`Z3qkte5Xzc>C3-!LTsi3ZXYd)r{MMJ~7kA@%Yczrb$f0};1VZi0ZqI7ek8LrmjqI9H(KyQ)E8}4GP%ap@$Y#f0# zF}BHS+F&lR3RYnYpQo^Eikijd(G0N282SOMoRO7bdNad_$}>B_gQqatGk|7=1o|FM z8ms`%k)#wef3-#Bs?1)&=+%kN`jyQb8bXq(OraZK~}Gr5svWJWRwq)Cc?sc8I*1YFGQ(bK-%+0p>o;xHU64QMpH z=(^|V<9`j3_art_b{g)hkk%0z^V4B7Dg4cHBL*xO`cN-Jh@kl_V71#6st^^_CuT94 z-31UY2El;RH?(LZCgzJmF~)=BX&zz*ra#5tq-YX%D>C*IL7Ou_i~ygAP$fx?XVm%@ zK>CPxbE2sCYAz?Ba}Yd(b?}T4bR5en;S$4+CWQv8v}m!A5mrdh>k(V%W!=Ui(Fn1I zQcy4ad(?*gDg{mP9qc4}oo2oEbfqwy9Yz@f`l{3;<;c*GGClGCQugLia-HXyU*B6* z_g2;2>fYMduI}pY>V01TG#Y5^`@Rz30uTTJZXm%8B*6`=QC?UH3%qBeVANtUHJ zGfpO+Save8=XgAl=S;GW7WRxt&q4bsksT}NpnNx_ukEo2KTd{bKWsPcH-A~3S3&aOXN?;R#o~@W_Hx;d zuEnE;ksSGqF_J~Z+zwDnQF~n%>-9)3#bQs?t069BAK(-Rmvgk7)OGEJmOFMpxmn@L zlWG4i6esx}@KP@cyYj)6k>%x+v%|wDr^k2gI_VZIFc&AUJpC|w4=0cB-MjH*+oN`Q z(#~mc4)W=6OS+Al3VmS+lcFaWI?+x`f{(-L{yowU^_?PM*+Jn9HCxe=$g0j#@iDi5 zDz${!f1P^LuL6&f{9-)FYvVO^eYjUcX;Ep28u61~`7Nl)Q^sj24cwEi2JB|ORCg>3 z9U)j`lA8Zrl=QL!N)4)dnSGtafL$Cb+jbTe>|rCwXo*|toJq7nOcc;)mY8Y!ew0C7 z0yz}H6CQ6g&^SW(4;p_sWWa})Ihfv|$XmxZ%;ojk;Rl%v_>X4m!`WE23WTvlYa`3Q zFYcva!AT)S6p@agWTC>hCP*pi&Tm!7!_!LJ?Kxpheqi^x)xIrT&S{CnxoS_(Ilodl zw@|O2d*;xgb0;5v{M^wSH_lx@apK(E)cE+hokxzGJOAX9m(E@KxNFwFZg;LRt#zJAiVHr!DTuDq)wG`J z8ob~`>ucS-wnJ=J4t(6{AhwfGQ{6OG5p=)m z?)S+FwqKam4uxaWutneXxUP5Ap{o|tntNQ=ynk79+z1otG)Rc!w!blpOss@O1T&wk z(WjIdj8hRwn}IphM%i-&dIk7`23~v!Y`x$yl62zL1Kr;!4|D1z^lE4yqWfUjx+o4P zdZ_x~(ZG&m<~`OcT^oWaAFkY9J1~F8MTv*rVQLl-YF}Tow|A-E(=5{zEjh4jDc!Re zxF%iSa6KcIwEf`Np+io_(}xxHQwB|X#2BlwOmB?MG+_gh)BQ{Goxz?FxPXqd`oT=h z_MzaWZ$Elerx&a*P*QB%s5krjb=tvtacF3Lwj+JvL;9ih2ircv*2#A6;`)MK>Wp8N z=d64FC8#lG0UAEn>DGt`1xK-d%AzQ+Kj{wtHt9;gm0E${=NLyYBba>G+sQT2+}+d@ zyLSS3sK6Z%N5R~CN*e+m_s_kBaVEh1|KrG)3}rv;fe);kFVDLvoy5Rkk8`< z70_W!$YE39P@>VCo69vIdx;qtlHoueV7kVHRQB-ML4jyDv`XbZ>EG{2G4b3g#RalU zj~51iS{RNKF{xahy} z_~ZV>)vJDq{8aZ}d->+g%YJ(g@mHKu`yRG#Cm(W7vR>F~zPFUzxMc0ap!?NT3~PGXhARAB)$Q2!ul-9x-I4w$VAuXXn3M9+8@{q!@oF z>?hhOY5CKsmO_MY^q~+uSn_3w-DNj)6#_2uecM?S{|ob%8Hu@t+iZl;bIU}~rX}|k z5+HhNq_ntLFZL$Ok4KNbP}}LJBBP1}xEGn>*zPPX+cs8THl7BQzdZso%tcs5Zp(yb zFQe&!ORv2)aN@xS2M+GuJ+Lr4JMjF&4-bsY&kvNN@j^5R21Isv^T6hHx3TLyI~TF* zVusaz=vTWMnjK`pB6Cwh<g+1vPA@c92PTx!CTG&A;+0@fho$ zGl^QFd(R+xSy;D0tz;HjYFMHpA8_p-oO+7S=c{ZlTx*LvgwbHqDT?W*b2-ohV*|H6YlZNR%#JpzL8;UnV1@lnLUm9_!L=&k33O>cY z+ID*~-#-P{cZ?CN+ps{fZAY_)H4xi*Ds4w58M(8L0}U#TS$3Xbfj+u>H@$S>IQh@j_@zUyzd1xF-QP4c)lk-22Rh0(&fLNx}&T>N>=vGZCn@l`Tm%FU1| zNY+rH>I(Da3$b`wffS=ws;E`0KQ*#Q&#==|%Xp)HBv?ux;y6#Ghd`>^MwwxGT=V+_ ziOt0vv)JVDaCBgx8ezR1{bZE$=pB>?51c#+1P!XqSta0!8oF(4X~ctSpM-t!{jLS8 zcz#57cw|>q&Qx$Mfq z_130j!}z3g{<@|45PwVW+&L-Z5HNp&KaQBgEC4xKcoa-zVIT%^6Ap~hpc7$oa7^I_JZ{!k z`V8a`&=3SkJXbJdOjMmnhM`Fvjl=#pu;yfp;h41w&x0P^iKHjFkt`xpy^hloOr|H7 z-V`o?y&1@e)f8nYAm7@}Fs#fp-Bvr3e@S+HKM2Cdd)~osqayj)YhQ3KXC8DOefw=^ z+qrYjtJkhM$&{JOWSmBmUVQkSl8+~Bgceu6%K{CUma$JXQGlN+XZFh*i+#qvYcfB6E!lf7s;5OZ^ATz z_v_2R-5-fXG6I0lL@NC$un`5}_&J@Ak#QMGnjnS+yQY0EauMby2961Lmz?q*Am-!y z#V3<=wbt)`kfNw^=~jfy52E@a6HW)Fm#y$WU87g=PS2Iq=~L;cOZPpr{Me^HHMQ;d z@u}7G_uV%YTV9^J_2{EhuzpOHXo^nFGRJ<2LD}HcV7CQ`9}aWvuC#0I6UrPU3u`66 zVOTZ8(A$Z;>uDG7A_P&a5qWXxEtD}G2m*TB)r+AJmr39kuo88pm7R!FP?1@_u^q;r zYcv`|QOI>-4Ld?rl8(9cgd3P{D#vqbWd^kVz%-7+1RVu!fCI*JHykZ33()aMB<@g# zW)SwQM6-D<1L`Th%#tO_uwWe`u>+N1w6~Zz12C74M+~J5>3BHWZ_&Qz-P5z-u}t$6WCpTLPMZ;qpQzba>~kXi zc%M$5*WgPmSeq%5v;b}Tupf-Txv{N8O=T2_#x}gTe*-UW$S)vUU5{|r-z7`C)AP>i zwl93s> z{BX_1uN|ozaaIn!-6NK_#Eo_u*Hl(u60n7rype0K2(A&wkOYPcWriYX?ev%F%19x% z)-~a;x&gvibN1olSnYH~0!yCNggZ~7j@48K3$xLHwGC2~TM`J_dlEo7lr)K2|7p-=+@zMoX^LQyXD^0J7U-`L}degEm zB;2zo%o-qx8C95s0fROtYr7G*h7cY3Sb~fVK{(QQNCClVxY@&~LAe=^KbwdcE*;F2 z?|H%l2u$A5v#3%HN3@s`v5UEk6>-bbON(Zs@Amb@@;(dsV3N~z)b6A51K9&VKv>U7 zR`5?dI!3dwecsOu9yH|UQyWjs%|*`Lycs#VfBVVpTen6A$HzxTBD3`=_R=EP@4GJo zEn13n^oeU%u0--_&GQx`9f81>35kuYd6&BkXx$g^FzYgK)hrQPPPhteEg-sKABWVw=yatqdOI4EM5g z!V&_jzi3L)z+x|@02T9)<^2gPQ}L8uLqAM~kTL1g2xz(b=R~PkDGi&hk?V~%)t`eN z{6dfhGA5KRcj6I06$>~WhDdSOV3HIEx)EX8#D2=yFn z&sCo+oaqV=Nx1zf8gZ|$t{gvnc*l;!{@urRA3Bsc{p_=eeVcaeN=(koBxV;D5|5oa zl^7ZsNsLZRKx|ZoNFZ_T^2LiFMWfNhMCU*|VWNGAt?MtJZ@+ZC6TaJ;_qMN~90qoe zTqn)~c%1lrg_z{%vkf{o4YU2WU8{$FUyAf@|L{pC`qG$mQyyfEems%lH;KT?VD7Xcldr}f>iX5n=suI*E24hKQ3hV?)m+fFS~m#ZrI>LbniZJ;exy6{`*~2(4z5t zPme2H_s8Ai-Ep1UwRXYQolxhPLflJh!*eYMZ(lZXx*Y-wL8sxWIlOS*)b{M{*xX9> z1t%*#7jeAmlsGwl4w)dexV--{_wdgsk|n)E{LO^RoUAT2AB)j(k)<5lrfrhijYM3+ z*M^|5=G+dDS847>P|W)|AWB;hELd%e`UV9%_C6lImJ^e=d^4z29?wb?hmB z;?eDwUf4mG6wyAvybO5e%=Yd6`_FvlnHOI03rPF;r;Z&y-1OU!b9IibSDiEMyd!CR zxbKryw~c!jPWIZz+h7|kY;oq+h!j*uMS^V@vBUfN3Fp?8&3ARo+d@w3{_-y|__MRR zFJ)Ih?NL497FUzQLUa)jgCm2zYy`lzTri+POa%>&>?PJalh${sx)MkltNff(9AR}^ zUCP=;Jtb`EdIY-WI0}9PsQ`5+Fsi7CYpGm>M9oV4`k>($wF*oL1sMkN!}0HrrdjzM z!nzQqurpp?5b=j=RB-7eX*lbohP{nr9G{1ZZG4*?V~uvVsWdsi#B#pCU=!uE2UI7S z0{ekPtK$yYX0DRw9|~5Mn{Bs{ZULOU4gB&YDz&$SAL=M;tXj=1vLt)u%{NV17B)wB zHg~djuyuOl#6~E1U%GtROtG+}Y39vmpMLtFxn3iA?Q*v-ddoA179by}|0F+C4mdpb z*6EXQx9NylRd%DDvWX+;U~?Abt8(!}OIbV2woh*_qI}Zj{(qk5EK&S1^4#u%^KwcJ zp0vc%o>`1o1CEHjPf2VYiP(BN#-KLpSuTC>Wy0%>O#LUc5haBEqLtd3A5NM<(R_^& zKg^$uL-D zi4urjw+})V_;_E^zy#Dfueju|KJevl*#4tIOg~Rnq!U%Q9hTe}^4EvTB%qN!Cq^K58Ng7v%JPthAtg1NjjBbsDo?{F2B_X-N2a_=7Td z1Iqh~Y(ae3*EeVfJ`|DYn|RVr&-P`#Xl)?!B1DtygTeu7L@4$R8bcUs{Y_BuhfriKXiy5lwW`Lfd}fq zb?PIHm6h4qx==K4sc-2H>c1+ai=nix|C(JWx6OU$m|OKTM$x|ZEv#1ieurk_>R~!I z*DBjO-}o^J7=d1y&3Y{I=a+U7pwX;k?6{QGvLe!^NBcC8#10e3pq!wyP4WAvMg(P> z0qz{lJ1%kAJE5RFPUAb(G0CS>eoPW-bX_M+cxeO%TYb4)9&_q2=(88j;!*56lJ!t! zC*8^bsGh+R1Z9xHYPO}pwJ&ttF(V!S&shx=V9%0oc?W;Y;?b%!TcfS99;|0`9u1>O%lrF))X#D!y zZyR;D>avoQ7>YC^aOnKnSHJY7)5huUQ{<%7Rc@b{s*={y%gV0{m~vPHX0SmkS>C*6c(IgOhzIxqwpid#3F7IL z#xl0vN4Jg%mmPPLQ9Ve+lSMiF1}d{Dv~Z9{)wC>~9lJuY4iH-U`^C86)wfC z{?hScIRLV#mf_a~>f&GozN-$u~ zs$fGQPGt=*eZ1$oXfmvBJ_vsn5Qe88e_Y?TvU6qcUVU{KC?`-A{o$vc(l;(FWHS21 z%>2xT4f?b-KCWN5pFTb0JxBGAESj#fthI=t97LCwP&Oy_B^L8h73bDx!}6;$J;S4P zmthhk+8<+@3o22-FqKK&%PW{_@B5MKjt^kdWVEthZI>Jvc+p8c=U6XG-cZ))v##3p7cH_KpvFp-OUyKVX(x{bQCvk7Viy2iiuV0RO7P zCvtUgzmU08t;DVS)BGt0{MoJ4s`C7q=0Q(5exyld4WgyQ{@Q8kfV|mzI#lJfK%z+B zwW9V)_RxPjqoyaf#S`o~nB9A-e|7cj5;p3)04NZ(+kVBKe#n?k#k zodTpV8cB=*ECfJ1n(!vwKc1hzvU&6Uxw-kR8JOCQ;dCqxo`@*2;20LmiYKd^(sxn; zONS}0ePmhy5Ol%ZlShtRuWn(65<(iv3bRr&+_ajD{Vxhvonqrmcn2>Mr*8{W+EcIJ zxUqQcwbvFOdHB|?#iJK4ESC1<_xS$enIlIQx7SCjqq}!69*o5nmuI%lOinI32M#>D z_-t1S*L8j!r+)Vdx6D9pp}J_C4*pji->>Lwg&-q!wQ%anL90vGWeiO@M0JqsLce;L zGMP>eCSlTB!Z@38$ zl9nZ?S$=1_Z)gq+XsDk1(3U@Ug4aCnVF}pYL!LHN)i%~QIM%+0{(u$rIVSV5uT7i3gU#I#Xx>i6%tgAqamix{MA}KmNxKd? z8Y_o1IZL%dB2sNcY6AnptRwh_|Bt(CFv~us_KR)`%f^X?(`O^b0?aF!z6}Qt;#>zC zjSS2ynaYtPnUN;A!?CeUzFf`-6AMGT?%3UZUDv(es>eb~Cr*^E2L<Mg;ikakYNpt zLz)su^xRdj^=V*$ppZnEycIoVr!U+V4$&#|JsapwKcr?}iYw*vh1kf{cxFQ^cIdHp z-Z_NC$)V}FxkLR^Q-@xA^wC4*d?s@USoQMqp;umf{`rRvty_5@zq*(I?Hs7wUbP+G z4uEQyu(ZI*g#MSaqNCNyd7BJIIcr4&D|iIKB`~UJcQ>&D6k5BkEBBm8D8QA_88?SM zF~R!ROf8_Sq(NmfeCAFv)b8u&BxVZB3Hz{-%WC-)Sp8AgKjPL2bF%)-G)M%=Y zy%#FjNks(k~Kuh?Q6yJ0F#0vVE6TKgH! z8VxyZ$T6L$!Z(RhU@Enu zvmnTbRQqlwGmvgViG`Z7Lj!C%oBgnqf#ou5=(Ja2DBW}5=ocnHA9K5ld(xT6wCbA- zGpP!Xdm<5oRSBY|xNz-PV`SJx-v%dPli^1P$nJp%$4!GT=mEfCuL7c~i-E zXCU({>Ai&Ws}j3x!f^Wi9(E7=3-5gAJB3#^zO?b`)xwE0X9};Q1zI?cDth4?Z@*oL zXEKGaed&V_3iWFB;ljhe%2?L>hjuWRd4@W{EPG4f9oSo9pwVD*Ep0XWsbSW{{ce}p z#ArEoaTmOrhm{t=opsICP7^ktHKcd0tVKkg*CGc$5BCyQeCo?fD!_L>+xA19$bJJD z0>f_?$N`Oy1am6n2#=-&y0(xcRq_)CRTr#v)-qFzgj*s)z>viZl1FSu;>e=60Uee% z1nYAwS7h&yo^4Ijf+($3sCr_4MyuN-bt(8Ki?LxBk<= zr&IR}kdEzr)etqquE53f`*v+xSphP0e(z4SgU^qb3+3tQ^I&Jr_cdAA8#^!9nez{x zy?pEx;%uAFca~P$$z97})SEE2gr8Bb72k`RwulqxlFDcucW5|aWD!dWo2_CsVg63l zu1ss)P_)^JO=210x3#}n*~iCZ2|qUAhd2;7wJh?!)VcfF-zX%Doc^k8(M{8%m7Y9{ z{U;{f$4l=2}zJ0;^?Q#`Rx(>S?XFhu9 z5^ltAgr}v>^rK{I#2kq##0Cn0R%zGe006|QnoijTr!8Si3U7Il?`s!r_o}&nsyQ}S zY#Z8WnmbI&ZpG~_V`G%Uo0Dh?*-Ri@Bt<7^YDft8PHFZrp=h#Fw|UBkvsT*5{3g)_ zYTR%a2xQCo!ZwjZZuf~UzRkEGk!?{bz*vh+8T-auy5(538+Q-lBpEDmta>t z_nnm@sB~kejJ@}Sf7FrgXGvsiRgSce)U@4SN4LF|1qy2Mkjmj-5PZTFr~lO1!!cL_ z`e6je+w^bWySJYjynlXXrhl|n>!%3sM>(Z`%kpyn;K<0M{f~C}`*u!n&$q2? zUXE4$C%J-h<8s&TnV@Iokk)RlyeE(CdX*0!Va}=5Ix2(EF&FzcCV>rouLPmm^sS^((0+T?L{uAiq-3XP}_a~%lI_K_7npX1AKO5N|;Sg0WO~c_n(YEMoFDFD}3%{ zcn%ZxW{^jas<8ivYL1mpu(gyGo_SLD=%;fiT6FF0Xgd(hf85?3r5J^!888j=cc!)J`8%W9Xw{1OcYMt+>e+C!;KPgByB9wV1UE2+W;OWZ zY}N4-B?BOk9?4pE!H8sPR;*x00@e#rGf-v{izNcj^?K9k$g~2Y%O4aKA(5UfY2<==q$^h4RT-FoJQH=5ON7Z-Ei4p>&|S$y-`-#&A2 zczAK~%z=Ss^UPOo-#$~{-hjpD%$Gm-+~>}0Tj}kcIy2SXnF((=?z$C=!*^P*WmmIZ z_=Tv5Iag;g!o`Q|*jS={pxCopZ&Xl~d&`1B7x$alnTvHzVyN}=Dy5U-UzfIHD^ldI z-%DwtK))Ufqryacd?sKGZ1YNl?v0St3a5mg(Bg3A#$jC3vk24b73pNBhZ#I3V?Hbh z@z|8Cmmq;!2ZT_Aim!~!3T!+&z-Qzo9aL-u+Ma-UFSUqFC0KMM46RI=9c(bj^v)7L zEevV~dM`d?1fLy)4b-lJoF0shWs(7KHz!j~MGC$3 z(Y{KtX-kf`Cl%-;O5s{q0*&oV@Bq9qWwrm)|DkpnBJ48kf;Z?C(d0H5n(y}fxaSW9 zN%Q;P`rV#8-}+w9r@!@n&y%%Rj-NSnV5YY1%$K!V?LfAt=fHhu&KyW{$-aHy+uiol zwwtvELEB)$xA+pVh>yvtF(wRPU4jp>pSX<0C0?r%pRXz(Vume(=8#~jXaj!qTkrl( zelUFrY*yHLFmMHyo_k6R_QkN4=dO%DOE%p)%bab%$4F%MQIdzkKm=%6r<8-}et zNS1j5a#0^aMQ3XSVO->_6VV_SPd4Czhp;G?q^qCJFkJ(q<1SZ4XE_o}pzvDy$_f({$7u~2%JxFh=rpJSQ z09+XyTkLBw8AgIRDc_@Kpo#YeZAZXc2YZvU?Gd$I?pP_I0T?9zG5lH)nN3P&J|8#& z14{*8-vx493d2e<5%^S;!g-Z|bJoOL&o*S?K#&6u1n90wi z(>Df3#z&^7Z&Z^5Eb-j<@@uc%Xs}M3NZfet`pZ`zfBDj-8()0?GoLwlV;!_d!q`Wh zS@&nem9@QG$E{(XYw@is?BGqhK-hU~SW+FyI#v0wW-={E0GUij1VYJrbb1-8@@SiHOVUmmQmYzuh>-3pfzalv0lZ)3)(J34mG2 z0%Y&N2WUP?4S3BSQVGo-^;t`*H`bp4__i>MP&;=GCJoPF!6)a^&h4Z{50T4UWVI=jN{V293b;u2ze=+|>_0 z`|i6tukP%2TI;N$%PiXFq24MJQEpAyi1I%w7hMdqm)08&UZuFL*X{a5y4!0LMOqQ+ z`_-#X$9v7!EQRQU=GtfS?Ovt|s-gS5>u+pjNUvy&D8NZ`j3cp#bTS7cx`3~*q9370 z=`d}LMp@2TjF&T#0w)@1CbzFp21ixF4}}ZR5s`TYYIsTV6w>L2bCnQ=Xxi z4&pf-78jaW`ZFP38vu#e&2CCyf}CnuR3rNl2V$|8BaOFSQbf01bUnfu`+J@maF|2fRhBSZ#}@a2(#!g#JR-Vg?=%d zJ{GN8MX&692ovrv$(u)7JY84dF}ww@#jne3@}VOc_vVc!wmvfW>NmgXURl1MZ4Y;D zYHVz9(EZ{oueh_5mC?~PY_M3(DfiSmtHB~d%jx)$_9t4NMIL~~D88At2FyLKe3xC| zW4hZCq|S6iC7D(R0V+0+<-oL*&$XJIOT3jOpaoI(TJu6p@})L3vCCq*^6WL=_NVrM zE!NV+5e)D`ALA{T>Xx+S3}F5o6;f_e*RqB-Xt^uQCmb(Pvfz`JcvZ+deNC-di5QWl zUMgk$sOD`_u}qI9Hwz^_AhF~=ti*A3^bGlX1U_t-VeG8_I2FtKf(()NH+0nk0ZnCT zRK*G@)Wu`Da->iF0Wk{dgf^FNA%Iv&AzIIOpj;lc+_V|Bvas>>4FGzn)qJx|5fDKY zCq9SJtSs;+j~zMkOmSN-6`4~tR$btS((%d@mqLE|e}<*(MmJWf>gTYNcY40p^V>bI zt?s?^1MLT|eE9NHcOKUszjo(-?fwgQzOH@!`?AGdzH>r5ac-^P`s$r8YG3^Phu1EA zzkDwH`Ojz1mA`-C+K2J@n>U{cE3Ub@wVG?{SJhndc`==jFT5~@&Jo|8Fp~$VGMZGU z-3x0&OxY6Pi?|LDQP>sbc5b#+-tnQ5W(;$yE^8WUs{HGo*29k?WPOg?$b>tW=;g(= zAqMNM7?#2n5)-0~AB1QZeHlF&u$_+pw95bt;lUdzt1kr-5o5%st?hzv!1VT=|V z7>6{fURcZt+n*1#yk05leO_v|>{CnWhHrmUWC{X-q)U~SOqST=QFOd^;j6%ue1`%p zk>wS9kFlIz0L2F22s{JshOr*OiUdt}8w}n|Hc6|)Uc?_QqivIqMUwW&u;wPcs_XiL zlykdv16>o#pT>v9^3-qnvS-;YsZlJMNgm9*k)|5ZKsjd{o2n+2Tm86HZm7$%efA%z z;M*P5kq%4JIc)7o#o^3`$(G=uhtJYSed@EH4Njgp6A;J(2$5QS)i=>JP<_>~rz*;G z!Dd>l(pP;nXt(4#o+x}LbWfcy*7<7ZGvq%leEZ*~v#N?NB3Ecjp-l`mRkhznH?@M0 zn*X&DBvZ0^3jVHKy4xkKE8N0=#djE}!auh;PQm34Kt$)nt+3m=iDC`^Z+lsbWd_)@ zvaSU@bs_G&Ngi}qB}GTnpV>qvlhXzYbpWZ%TI|ZJFY}Y|o7u*AE|!e% zO`&<@5g~^e+8U7*Fg}r8p-=n7(W5u(E6`MqACmag&m6_rtE7(|g?Sb>LI=B8KvP$c zGs6A(AZ#E{;y6MSRCgNE&QrtE zUCyq|b758W`|je&K~nm;9~g&iPYwi*uVc z`PZL${+X9v@@Lt4@^3u)e^|kh6Lp@;5xiz8bxPz{v7c^FpbSgeji_-V$x6&wulHKIf)*Z$;|&rN8fEJYDiyCIAy~#7xhWmCcVI!e{ps9^#`AR z+PV6`1J0F;FTd>6mzSrf9S;8BL1%7h6D+pQ@zeL6-m=A6Y|hR)rx4_GDu6gy56I** z<+78uJntFjne`{$b=WOu@X>?5`!Qk=9lTwqn|Jqt%Eui$2oLWg2>5%azUn*qZq-Is z)l|o!bl`S>q&bht(($#p^ZJxE{TMG-%7?h_TU9BuTC&QkrRPigoz2PKw7A)3jSA%af#!#^OIrf^z{t}JXK zI^bx zTc@_JKSp(Eyi!;9uD7iSFUQe-S-%1zQzcL-~zArA<TDKu7Y_Iybust?XR|HUs}ahGaKGc#9qJnKBWY15UhPi=qd znP;xN``mL^wnVRAzjAo*$@_PmJbU)a+i$-9`V}U0xhuKWVXk>v$^Sbah3~XJ?tY^x z%k^g|*}dvK$^NKlkA^@A!)U5jsO0*cPF6_#!zY@ZAP&Z^Gk^`fb?e8YBTUzo$4a{b zgXwgs?vcNJ4mY|vgsu#6`(S7Z3ejQqhIM>x0>OO_0l|Q=EYY%( z1tz=naL&`*3s&kC)6YM`Bd*n`ATfs|GuiD)4?bZvJGW~)gK(jA(2gat+{gKt8MWc2 zh{mQe>>7}Up)+hEfa#feRI+AMW;WJP-Gz<7qaA8UXy4=CKL9cc{BAxxKIqKfq?<-|Imy_}7PiU|kw|)>=hj za!da*>m!zi%H*-FTP@a=Ew@;-Bn;14bKMvD?(5qQwept#+TC+WtK^1C3D=!*cg}9D z?W8VaC#)Rx`O)=;^{@Ps$3Rl@OPWjGFP2>dV!*hB_nbO;ng*3r(w zxE<5shbVH8On1{{W1>?^t2`TvFolZ;=^l&FiVNT-7kCkU?A8=GjOE8RL3DH7!8DWb_swONJbb4Gng#jR1$YKA=RIXV#b8K(+mfsK9=$BXb9MQBBC!A~hdr&8E;1G2#@45=u z*;!n@gi4$9@Iwzi=m7q9;1hL*$HtuTsVOHFE5^8;LMrNb482b|>sz2*k?EtZOXVcp z2HE}SmM;^B)HbdbU<76hX_j`B!01?oycSvEw!pGzd8$sQvN4r$biHZ~PZpON)SL~o zmGE>0tPlf=b#{BtH%2ziOQ-1!h=Cb;Q%QCxX6<=si8x+8S+B3w`O_CqjKU8?PaW#2 z)J6gK<&)ktjD=4-G8;rS#O?EA)C0F@cqUxn-SnP>1*sWtm6p|XF86Ij$Z$7V^qAub zEi)XO@Zxl|5C`lNRIx!Hz>dc2l3h)$Sr5H>*Z3CEetc)!~7t)AcN`JJBM?fF^H2dldt`@#7S zFaE~)uV4Ji`429>^ZJ_?mtG(KN$eRhc2k&h(dRC_iNR8==dac zye!pyq+1YTMC3{k=FB0p6|RQ5@&ETc<-9Oz{7U$N;?-(4Lr8;+hnG}1RHz2!t%kx+ zkVv(x$|QmMM=tv{q^yY?O{IB+aDDoYy4#;tV1cMx#C_pMz<*hpxQ3j9lh11wzERMj;N?80FDTHEkUw zUK3mcgEj;HB)XsSj$V~wB>hW(0x4&|zi!#5D5AtA{aEbKxUESk~8IDGx3@PS?baN316_agj90wo|S_mz@HJ zf*S=MF$m#Lh;AhbkBmfPDRyEAqG+gqkYWqRssD(@&e(iP2GW`=M=zjvX`Kdi|AGU>t+oq`m6a@qChdsbJXhi}Hbb5lnMl zCU=r8sRFA_n7w8%>r%71FddWZtOcQ&HEF>rENs5@y>#dCi7g=QTB;_01(x(lk#KJo zgp_;DN_{G7=P#i*00hcKaU3&%g@Bb*b{HaLQkGi^X81$`U2YR{m~6tTfUa|Bl$P8e z5wp%h4p$}NXRC3lKj}Tk$t_ie1!LgArG||p+-5vljzRzGRMP$XkJ5Paw{2f4{ZS;3 zt25)m-kgjNyU}8?l-A3G%m_g>nD+FX70Z{iX}yp9KF_`lSzDxN;w&S8=dX`v6UOXn zHW4Fmj!38WRdHy0(m1pwCO8Ri)FS~qkT%>h)x2=J{!P!nXz6dACHH=*g{S-a>b@`O zw=V2IckIoteC5_>Z{NQ4-lxCyty_aLGq-59-&%R`#an2P+}gHz^Q}ywaO>LY>MdGB zx1a~xzyDTp7AxLrw5 zOAv_g*n%`+VY2;*vr$lYyk5&3=GOd+sgf$?+B$8!^_>KXhhVMbhsd{gCs4{97t{~? zJO>Z*@)W_4qg|McJ3HDhiTOAe5J6+pPA&#~aUtfMUR+#+djxW)qnOAhTWjKpprWeG z>b8VAP4j8;@WbNJ1qAunf&+>VS>(*cANJ8VrEDb;RA|%cO3)LaV`ibuw1_6p# z3r{niBkr4I!OpHeke`DvlxnY8kVF zo&i>>N4?%J6D1iL{=-V8pAAChP_YujL^F~Fi51OChff$r1+Dwf$+~($XA0k>pflfP zs|tI1UR!GB`l|O|yQaPUz3*uNw6!<4Zq<&SJgIHJeOo(l+fd`qfdbS@`573gjHle52Pk;t(Io1rY7De zFodtNMjyHVDl@`3JP0nEJqft02Tkys^sMaiFH!subq*U;e?lYii6n-=tA@bSe(hRV#sJQhrShS9f>p@N`~S7)jXVP$=Hz3Mc}J(=M-IE zm3JXMP?}fCd~;3GicXW*m1ub+K|vj34)j6`0|mbwL@6((Qo%kJalk(XySF1m4frXz z^yo#VKf%JV$_<6D7Hw|LX`Z8`_5HsZi$2u zEKFt^AMGnBZxaHbXdci*BtUg*B@x3qUJa);WHx0l_-?znS0eN++CVD(-l;j8ZOzMR zHGd$QO6$ypF^0=Y?-C1qaVPHxUWM?X*%}H;k0!mN6z^>Pp3{oA(RDzHS+FiT*-{)v zYm+UTnvqUEOY6w+Hvg6cE>}k~K=4$nBC=!x3CA!he@UQ!#`a8>i0hUaP`yg zU3~9>2UcIb{i)mUzPtMSKmYma)fZoR@r^fDpM3VQXK&tI{n_vS@Q15A&g?sOa^Imt z-&p-d%L{cT%iVU=N_oVBI@wR_>*AO?|Fv+!p(k2Pdh%=UqU9w0#C(Rnq*P_C;y+Bm zsQ}w8tX5a5V@EB(mGra7mc(S0+4A*P$6@V}xGjl{>t@tzUj-uB>ZMEigt;%OFn5m- z$oOO7G{V3DqoNjJh1?nN6NKrRNJ`fXEy*US^E9Y`9uTwUX&1^KC~KrSy5G43bLDxv zE?g0>A#`E0Z2*ghXaH|Oj}IB^4V?I?l3m`$i>xfsrs_>;xpaJi$DD+njS5qNVQ^gF zL6tUj7OT#Fg9Q|D3br$e&5J~}y;rx7X(#e&H^v_)8To+0mM+Mc&#;LKS+3)LGo45n zPMUQ=Kv!`#2xIJ;?VO@{>B9A9G4 zE-H)|{sJi+>e!+Lu+kf|v+=%DCr+qJ@ZVy)f1&mnCb8W`RSUM~Dqrb&e|6{O`))k) zNcG95pRPXt|&^ ztM7j5_U&pfn)U~)>(RkohPf^(c16uD6K+35&0E&(JcTfFv7EMdYS(kErd5ZG^;bGa zyr@LH`MZP}x*;^{lJ@pr)SZ6)%Q)&7+5~h@P^p2#onWIW@c^v-bEG{<>vFBOy;j@N z+spr3(n{JK>lEZRn@pOk+#dL?aRxF?)q{|6_VDnJB^;(CUsnt9Ne?*&)s?r)Uk-*d zv55?}Ov^Hw@ZtpL;*{;NPfjsZuJ$ zwpWp0y`uEUYK6kt{$w%EparFwf7t{nlIex%ag_o3aw@V0}bfXCrG4uG^$q{!QjJE!U%tSdG@&p2b{0 z{BC=x_BgNYkPLOs-D#D|vO3ukuCnC|`3`Yo?IgeR2>Gi?%)0I6Pwc)9=2P~Mvq|qA zr$pvNM6_v9T9YY{VYup+}hqr{Q;xMg0s^v=)R% zx!h>fOe*d%k|)%*7?$j!W9Bt2@LV(<5`9Vzww%vjl6roJ1LfoltSQOVFeRR`t*CZg z1ZgEZ>!O1eY7|bP2pTdKou=dTe9sqqKD)Z(@hgi5rUyVUcYkf;p^ugx_;)&l~3P(?X^8u)`_*O4~k*^ z-}WM*HHFboy(appD2dgyEk+K^{P-1TqN3zgT_I3ve))__!8vt_N8*~~g@ykx2HwLE z#c0})@_QJ|Pc0N#-RO8tfK&)X8B#MWrk8x~;}g38pUqeow? z@A6=}n`a~gO=%6^B49jJoI(un|BH=`!(JumJ3(2!rBs}L+;e+%%WVDKPrZEgYW?#+ z`ceIbmtLwr^ZfJmCvV)SZ-aF5d+)zrA4eRxes&!Zle`oex-9!k8IUwoOM&i`SM1Ei|}1Zjm)*&Ssnb+M?S+k+}!M97tw}% z^TOhSDeQ+~LURxA)Al7Mjdm*gj-P3Eo6Eg|(N}V^O&2jE{aR6@S2Rfbo35Mg2}g-c zW9<@D)ag-@A^9-wR6Jg&oJ8A$0^Eh5bQs>*l4pR|HT4lF?gZGiH|{*RU;a!b>ZL)y zf6yoNm`>>}dXElN3Tf&<)q5N=jouI|@(RsL(ey4h(-A84M1~=nm9-N(t8=6`rUS>v zc$AH+xZ$D*5O;H?PD9_(5CH%x7V+3#$iSZgkH<3`d>Rw6@&uqSfd{em0zPP5^UX+r zsR3Pg9mUPFui!-sD=J3^-q+z`5rBtq^)8*H0-70_O3-7;QrVUko=G9l9 zEI-*YwDpdrD_pI8A@n}&kJVf0MYi=)!)9bFZ|;gn9h(3NqK3Ai-&hh;YOUJ0;}w2L zx|HArS{8;`swmW%*(|kxaQOFh5}uE7MF&$vsHc+NyAdlmuGuIRLs}TOW_qoH`m+(n zNn=@K_sETzb-F%@J`-&>G7;wT@E@a91eDjLAdKL6iX0gVxB*O0ID`O%fvq%>?cUxW zdWJqU*v@oH|msB$SM}Ek^*NkbFs|KKqeS^ zl$JNGrNcV;Kb}g%#GGApAK3iP=JEgxb$^7xb|vmME3kON=7UPw&m1J;NsJ(LGop=R z5$(Ab3WwlLF3e%SaCHd2Tq&FMMCo1%p6s8nC0VuBD`y1LtC5g@%4 zYEMp~wPl~pb=5Zc)_9}EIX=`Jd*91^;8?@|*vmYrmG!==f6%cObIJNhWb`^zbW|@< zvy}UXUN*A9%U;is?L{M+eHo&f=u9;-GF7Q?%iMt+6KR*+?Q7)tVP7o2nrOOxaJ{;e zuI+Y&#J;t1P8?F(5L!+KKeYCMT|t_^KVk%Z^al$QdUZClk=uVR0ZE3b=i$3$$o?1b z-$g+P2bZ5pn*B#g`AB9~Z3@K#-ndjtN$_>@uM-tx`PYqt;^|v;&5SlNyRtF?|Cu#` z1Yf7!CY3Ay&b5C>_M`vEb^VX9*JUhq956k#rAU@VOq`dN@742Tu1I3+;~(zWIrty> zcl+7~t-v~EpN9lb(yR^_{|O^Brooo?i{U*5KjP2O`(}6oxiYPV2&t5FCSCYRE*bx+ zrwv$MS@$)5FB=s)(a;{k&m8M%uKEi`W?-PXZOfLX&hBodS!w-hofy=ra75L5i{2hR zg}Wr8O3>sNUtA(HX@1g4t$qFPJCiZHT-E}1BxKL%;Uwsc60b-J{8&YURnGx;{izzW zs7Ndx)VZhGyk6*+6_CVE2po)5#ui?cnD_ja<4Y6#`pr$p`Te07=H+;W1)L;lsP{m^ zz2G`Le@v&Jx?m^LC$nxOJI+&;pnX_KIHGgjuo6kO!?yKIt!5{*1yRA( zMyIz<&(CXe@LKo5w}SOY&i@`py7sGQ@=JFGXGyQ5RGg0FS%$#`B3ibfX9sQhU3U?P z9H$~!mnhS*-UY3gtULae5jVIcUxoqrpU5gMU?ulojO;40`z?GT7RWU?3+OqpdUG-T z_QD`R$4OrkZh>obrK9||f7SEvi9AK{MWRuOCCrbfhl=$QK?Tv{G}zcKBbUZ-$lS-3 zlZ3K$^wRhUo%veQIrMihg&)zx-(@j#G;Fq7v;n%d`vBwnxkRdrW9Qj$ywiDyqmCMW zuf~3IMfaO5D2HZX%GQT0I{!&5or0|NS$+U6$J8=!Rx^5jwtm$~0scb>$a##jM%l`9 zAG;XD3nw#~s5gz60A`TPS-@|sB;03Fh2N9sMe2glo_#%wtJQe=&)9;D{n?VXH2-G> ztx!qF<|~!?SUOrCtIKl~a%OaKWZ(|M0LCTfatI}j!A_pAnT5&tLic6)sJrMkmw%zT zyEK0V5pm`uNKEf6Y3@$bJGblC(gHJJ)7nI5NzeD$=)otp(Tg?#h)~H#;e)!fDHC%~ zF)is$p-t^+die`=Xl5cicJu>bGI%74DH+;gnF0)^LgibQhC9D)APTn zXJd$oe0kNV=W?2*33Hg#Y{hZG8Iu zdeREE2fd}d!J+Fcshg$hjv^dyx_@-hN@M{R@S@ zz9jyB>(PyiLfFUAx-O$!-OK6i?6r?z!0o4*e#f0(FQU^ z%KYww|L7CIWPCY9-*-MZN z%qNxtm|~grQ*XQOb@801grQ^_=aTRv@q(=X6MOKS;!8pdd%t3rJlQk1n%|(0Hk!>* zs^x5U6b{MJo_gIG?H+@-o=QnY+d0U(pdy}yXKoQ+gTra3CpgQsC+OY@!P?g^-)EsB zl25v9_qjQvtc{~VbDDjgNDSe=X>*ffW$v?6Cmm~JiKj$7tV9|zrPT16i-E<9v;s%; za~#b5+>t$OCxbF>*4rkrW!YurMiQ;l|ViH_ws&|y$r9Y|*flEd!OV)wgQD)NE zm520uj0Pz32ytj)5vEIGB@tyM!rU6h=Z&j1ukzOwtzy^zdPQ5=RQhX5>U4cmI=!hL z88T;NYpb^=a$?)Sa?r!%ENCJ%7(~`z zDy~&)gG+XPlxtzxlUvj;&j?=UrGZS6-Jz?u?m~1n2t2-uTtN>FwD_c6Q6gAZevp=3a6$?@sK>rwBi|)6fnm z;mK0$%fbIZ8N}$!Qg%8KJVGr5wi(1c(MLIdPYmk zcBxph$+_}Gza9krdv@;Z@2Qo`%l*r(-?vlGsYG5*x+{@iP&J%5iM0~1>o>gjfux_Gn*_F9f=b4?`l>uW7X}bUoW!d0-y0v-cCoa^yTw?Pm!(<8T)%Cz@;p$7Rw`>8g@)8z!C%Cx;-Lzr7*-RjN7U1iNZZaFO3`NjYDCP}@2BvoiJ|zrO^efcw|*+P{A+n+bE? zzi%FL()W|vChjNOC2Ysh0g)7ir0x2-Ah9%^PDTC6Rz3$ax}u6UE{d#}LO?4cV7(;mN+E&rFg|*RV*oO#pF+EiVuPnx8B4p+;V zUch;^+EdX)HR+kLqyx{Z^mYF&`(UA7&KR@GiPenw_r9Q7?L*SCkG5)Js&5@}ql#`k zf%y9TU7?GfjYM>HrLxjx|Jy%Jx3zRduk_kNYJJlQ4tmy3{JrMw+CH|wXYOQ`;VPC@l3mTk~#sqf_Oy&pVSEz)uyxk z@Ok)a>V#iXHx0uUccN!`wcOV;1?q38(eO%xgWitSRWEJlc{-N7rH>j_81lnhXZ^Dx zg_U|*cyhYt@PD^wr}?IqsYFWstXLrEVn*`dUMAh(NWzUSV^f;Db?e_NT9n_Bm`VhL zf|gzLJEkY4y2QQw%w#1SDJ|2JF83zmxxmd-D>2Myw;xYg4;(yrnhNh4g#Q~P7ro}i17F4@5lN;dtI7Sv+S_~_6q zebG63K7M~Lt>>D>B(<0-xEy&J$2QB;I3ZR?i-U!9d4^TyU{Rg^JG^*AF>q`^k&^q@ ztBsFOHhOv{(VU#jL@Slelk2FHyY8Qi-KFAcw@q_AU29LF56#y&fO#;rwN6a-R^DM zo+r%B6|AVo5KDJf8sqc^$7+%Pt}s(4{u^^8Bjx<-@JVa+g-&u+)1yp9<*FK{4{eev zVI?0BmZM*&j`}>jMpt__u9gl>FOOa{mU}L)T)K4e!KL#{%gYy~wSIA3yE%0I;`iIW zzw;|M*I!$8YuCO=e|_zP&V81rUW&hLKLd-_6Tem!OUPJc??y7TsT6cCVOLcO*S>bO zVxf}Y$Vwhv_-8N^88neJM7BD?Ly_nP^|9K>^Sr6v*Veao&9t6{eD%|XwWiE4Jb4kKm(+H$9KHn`@LTSAV|s_ zDsVZB>61mN96%F_`u!To04g!2{>>>`#}`w&LYc6A_R|7y5DwX}-KM3FqNz*Gu_yJ)GJ>DBNG6&yOtQ68g@^ zS2An!$ENC|onk_%I~B0hw~if4)gMGtU=5>H?k+7Y7xJOmnC*{=<_t85J@D=c+>;?O z7u;hG_HNFLoPoeGCqjb(Rk#xX;<8znWR_kFyTEKaNidpd*$s~8TG z#9Bcf7C3OKq-L~K8F4%Ss3e*Kp)xbzWs7{Jl1Jkfj<0*b#jsfPP{_(}7c_hc3a%8z zKpHDo)kqM1KO*3y?*XO(T=Bj}7K}}Z&GwyoCa=l2D(iigI6a^9^kSxDW5TnINny#< zpJMzdRE%x=G2a8wDQQ{f8dX(P-PZ44vE=q@+7vRwQ1yeA(29g$Acn-669a;@%tQT? z0@i&!F};F{wvo#%f_=J(5Or~|zkd;!MrE<`E@@e~1yq5U?2_G>x1viQ^PV1lFnh3z zk1W&M`&yj61ceC6c0X$B0hR~;0$3lN!bOx=3?ok^7Ex*OF1q7ToA}D~G{l$o)4K2fvSS#EeNS!1mT5%a`<37 z&-)FN4%3oqV`?Kx2RKY6GSylS=CRc#uie4D*oJk3|(+F2km@}x!;+2MC+n$2f zYrj7ICkzQuE%$G$$H8}SM^Jr$xh(1mgomk%^fu(pXadbYAT}n>gO$jj1~CQ&ofGiU z2UaR`L;TLkqX$#a>6#v2UF8cwyG=X@9#U8p{=wrE<{Lzc2pdHSCBZ3zW#K2YA z5;KruhR5I*bO&VaOBYRV7HghM!wu4&u#A@soBo>+H;1M;$lV_hf=ZCYXalX59VtqxS;^rZQe~Jj zjS=96k5R;^PPaxYnYNE{Jr#_5sub%vXqW7-?0;Cq81{37!ap#6-2ic~8wnFRM3TM7 z^2glO|HqbG^cT{d?91?lmWBmUmq^Zb0&XOaG1j~xOf*)>JhpRZ~mG>>8J z9#T|t5f;~ z&(otX%dY^WC2Q5P{L_x!Rxjz6VCKNPK+|aQFv@Gd=Pz~c3su^8wn*Owv(!~X083`JsOVL`7nxmfPCV@jvquC*ZbZzTE5-D{z9wJu(KnyVRjYhOEMo0=B>ba% zoa@s8q9~cpQvAp&s(V&3%Jsv3J$4C$2h#qBpQm5N!qrjYDatmQem8(ynkeYM(fI)pspW2{H6@l2s{<% z`;~3zX}Y5n6WgMfg6Rt3Zk4SKbu;}Xn_xJMZV<#}!qSl=)rHN$bLXmn)T$E$1KZW@ z9#6>@hOJ1quF-RF9`JX&Sp%(0x2+Mk5gchY4tu&Ayx&pj ze|uSVHNyn9PoYyE2KJ#tkWU^ya*nvFY~^e%tzhg6T6~;}$GKWxl`E7r``UF^npy;X z$D2n50FXB_A}Wq*_Dj?Yk6M^x96EF%vtg>bp{yZ(z62e)z|RPv!8+GVgKb0^&3>Y0 z$m|^bU&sV#+T+2*;YcMN7@W}Btd5`BIIyvQ|M=0Z?XC6oaje|<$kdUk&CQkZm3KGj z(fOjl19$VsSm&N~WL(bp5QgV3G;T;Mh<(1>UUd+Q2zjJ*)2Lw)SHT*jK3q0suPHbh zh8*+BB`hIC$Fct41z}K=%{9jQ&NNKC-@30#oekd$>x2jpAg&3sjKzDNN2*G7_fPp} zQ)(frN==-qt(0WVXQi=zW1-U-ZsTpZ(?R@2(+Eg&X$bif=}(-a8+dB#*v7u80|z?8 z|(n@^qB6}Y5DrqbsJ3t|LLQi8d2r$a-Q?^FT(8naq6ywi? zD$H@{ft6)l9j*3PQ&@r716T~s`dL_HfG2Bn$f)4{=J5RSpEKM~nR?&9w7t8TB4#ig zGxd2#Po;|d(Cwi-6s-g~SNK95Y-dMQ+Xh5LP+3yZcVU}|c-xTB_An;W%Lb}c-NGR6 zz)Fq!C}N?NXixwQ14Sz#mocrhp!k$GQ4Iedn97g`KG`rhH0P+YGKe9fBPdmk_(3qT zzP2{ftkvd5<{r4AvHzp9^}{!hKobhTGDMaPV+V@rX?-5u=zpj)19Jr}F^Hjb3P%ig z-P8|&rz>J%)H?|CGu4kkY@E`5)8Je%%<2ZAymJ^NB${bv#3X~eHavVJS4aDYAve;J zZ9j*l`7mnwU&4hol`j#y=o>Ms>hB6?^PsU!!~6p^(Q-1`dDYTxcv!D^_F4uWavvtG zoWuNG#94gq^7&K8_s<cE?>T6!S`|mIK{q!*0vZLnCveJabhmam%x}h2yR>`(?=91@r}U17 z)DW{q4RI=U>YnM`G4ofl)|bv(JXi*6(_N?bkIA9_wRIYRzL`-l4^lg+xprnflM(W2+Aqjpa{8q;=+vpy z6PngP<=}i0&qyKgJlzD(lkxd9)yWzxE_1k7stud>$LkoilF>b`+BcTwJ442KNdG*A za@MmLE-PL)i=HX#E$e;A7ZAKy{&)QgkQer+C|E;v3iUo23Sy>li!mOlQbUYKlf`S7 z5`8PqK54?J4M58YYC_VA(R%2 z`fUHQrY)J?RXfF_)ZiaXwe%{4(o#7CCVhbG!_W}W3cR)flvk1})*s}7$32x63Z|8m7iSgTP%tUL@|@cQ zP!M(zGT-u=kQyiK0#F^L@T~q7W}g2Jh|yo7gPu4j!SY%`J;3bi`x^6Uej!y<;KGko0jw|md!BfIHV z`|3DaF~J#6mlV&`KY?i)Qm!K7sXDG1RjB*a4wPlft5pM?#mR>9G0Lon%R*&l&P&=?HB||N zt=O>eFiK$QA@^rc>?2gh%+Fv%tfIk{5u*a4hMXJlcGW-%^9|JR!S8j@&6FIlQXMNb zXs1C{>_^EF`7H|kO&^t92ppQ38I<8{4}lTEF#2s@p4*o}0b#5Rrntz^6`EB*deo#% zd?T^CQZA;Yx#oCne0q9r6p7uOW14ed%FZQi`_SATwrm^{F|S3-8FDCK8)!ko@Q7+` zSkj27HVvb}z~<-!B7ktY-y2Tw0s`X$s)L%_;ll%#Y*Zvs9c-2R)Uck!D!SJUcY)`I zOm9tV`u{3C)v}w%Li)t+Gon+C5d#2_2;0(M_Zz;1YF-`Pi1NO{!T*s{)!|~JttRz8 zkgzbz4TCw0C~g*-(*J^JfWQIc>8qAnIv&6VPY{3B5?u$>FlwsTLp~_wHs4@;&;wBY zN7L2{h6<=h&mZKoYaTzlw#HvPfBpo2qBnMmPi8j?faYjuj_I-ITsuuX_%u8AMH{X9Vpf5 zhL`$}x-&uPUsgkiTRevK!JqPbtX^gfRp=n_XL42CF`# z^M=-uEfTW@ab3ChljCLI7{|&vVi;Tv~%2Oj!xie z9g^&t#&4&IjR?v!IkgmoUHce-y&pxVr0rVFsaby{o%>0^ko(HODfyi!`R;o^L&hgI43FQ zqmCa7R)E%@s??M{kV@_hX09N6%}pE_G6q^LqtxjbUM6E~fKzPra*E>!E?#ximb=Ae zqz-6mrE`s~V?apP+0EiwzlY`he@)r1Doz9KZ%r9;=KYyB_8aaT4lZstMAd-Ct>W!- zpr#Xc%L@E~hcQZ4Pe>M0)2-)p%p)%jIzq6R#hijRy5v3K)zrF$(!SVgNxpMx@z03r z2k3;YT5AoJo6G?5yXe@mRReLIom#3k|0UM10`}<|s{3H#lsX7D#>YoS_RaQ9^>sS? zPMtWh50-Re-^K%HHa@iUk*cQQO2I5fClv>H7x9gi3nPmd*#iVy?_n9Q-?jX^rha47 zhAN>3AuY?>Q49>*O#+Tf&Y(S=c)J6ZPt)0tP@J^@M?gFsCpw&|svWPWszpU;^N&#G zJBV>ld@E;)j%#7sItIHV=2eICcnvD}lSJu7ss0~RJ02i%Mp7lFiID1qtbfM|iwH0W zr29>MNZ$d9LP~MR*zBL@D4!T9J#+iUmB%lfJ6D24bE%q0l*SGmI8oXY6U4z*m{ee0 zaSV4s^WNudox2S;MEgbaHg*A~gEBdZGC3OL9G&5S$(_bI37Ogk_yM$CyJ2yweN;wk z3@$Y0-pVOx9Z{vwLc&^sG`8Hqt@fJzIj%8~g#eH+p}DG;HOql5m8-5$FHUI359-d6 zsShd!SEH{bSjUfx3)|{Ki{~OfrsUGGq zaxig#dQ604hYs#vsgx?fEKrs(rvK6+XjHbGpLgM|F#qw>WF24(LYvB{KZ8WI#_Y!& zkVr}(OspO8@CixPP>&7q7@XkQ_3@mmONoKn*x0~84ya5H!%G%(F==X#J?-KQj5CGv zxd)uu6E#Fh#1Az=J-ndt%jl+70BiM^luXmZ$r7Z%$s&RsGToys1w>(M8%t+xW3o3z z{)k$=9ID#j_Y<~&s8tT)^2T$zoFD2#dt7~J1X2}nMQT>R*I&apOVclFro5%d*Dk5m z#X#8zyAdt-yY0hBvb?dd+L6~o#M(0MXwliD^%KDEr}eu?XRp&Y>x`?w;nZQov2He- zPOF#~p-RyHa-3y#`G;ezcR71>s9;_9tl*vq>w#1F9&GH#H|7+*4pW*noT;Yi-p5L< zG{K^UY{Es(rlOI3K(oIZqX$Gganb7BjA$pIx63}&PS7#2FhBo6DPPNK61?vSF_1?b zRL6(ypBje(u&Smf0b|*pjxhpq@q>#*sS0r#DW#)+LLG|0xacmE&c?T}o@Rv6fEzG* zFtOyIw&YX>2c6<5PPYT3#_{*>Pb7{zu{hZ762@UZxvVgL4KFBA)p|Q@m0@vLbRJPO z%0#`tQiHV$#4T#j-FYts?++b4<5?U^*?iKOO9{S)ItEC6ma9VV7)>)0sope^CZ(%6 zu29lB%d{_r;XufeL}Zn%#JMbjSz`N9SIVd7=Jp$wL*p{12cXLh3oTA!a@kRp3qbhb zRngjRH8U8|S!t$|(m7?80sy+=ETY;WN)Lu3hOt3N3r9mJMO5F%?f)hanIbT;BbZqA zK8k72uP3G^CXNo2%SWM&bM)r5Yezx+J1XY$D@S`F#;zTRy%|Fc7={SH6Rz%Fq=l4{ zBQ3z$$;gYfWx1OXkU!h)%Gh;-bkrYWB|d4|j&=3|Vpqb8rKFN6E5yu`Bgr1|0x!56*?NGt?gIAC& zjDhY1`C>s$3tJu(0WqcChuRU8t$4^nf-{$e=oL(nuKG$5qS}SvR~Zo#UAWIa&ZG@6 zjgYkTJ zf%%M3-hX&PGyTH|>JK6mH~^HK7AndT0t3JoooTc$Va*v$EsS^nfmsj@(e7C&LcK}s zqEc{q{M>*%&JE139No8a^5npC_wEg}hnrZ_TLZU#*d7yD5dUGPdN+DP?2Et)0a%LK z61%4rELA$|U2}~L4ZA^SJN(k_H|Quw8}jIj|7Tn_$%rr>uC{^6BIuh>aykkYMZQ2I zR>pDUPw{C9RO)?Ttcj^tb;XBf7dj$j$h+sD_w8^lAYk)2V0Z$BUFxTCK>x3RzzWGX zTnkMDG=-BZ{5cjDd#C6ph9Ik;*1;H1Br)rjk&;w{{a|JnQ<_vYy!@;;P%&D(($RIX z*}|y2x&{{~p|!4sI&c3kktM?ZgsthPsP;P&M$>6Pkv!^VQElV-5B+ zX--e2#v#!?4X9!|IWlr!I>srw=N`KR^Fw>|06ROZtWf~m1EocF1pc6roQy$}=3I%|bp$a*UXxl*dc3CMlh`rRi%jqb z4l-Wx_gu-d-YGbmSOjsv^+0|#J#Q_L2S@sY=2w2IIU=Cl5coQbIoe3cco2)5`A!hN z(dRQ`yM*% zezSF2?CZBJE>tU2X6e}WV-iPA&yzwFXH^I(-c(gzPmzcKXSGH&628ZLC(X!XH-0CJ zaj}#lX7RJs%2Dk`)Rv+IJ$iF(4oro_T2W?Rt3C|%4lb@bLPyw%Dso~6RrWD^4SR1`l(drC%arU&K^P-=aU8_04_+@vtRTEiM6T1-_!SPoqe z*^I@y9h+Q+xl*aMnB+5xIG{TlLb4C^N>N%h+^cr2$Yn5!0J}L1axy*)2?A`>NCinh zxP#zKSeW%{=u(hMOGMcbv|EoAmEsNxhH0j&WGDL>P1SJThlG)YWURc8Yl>2};$mi? zX?TUEoAl~nm6Pls7!sco1#yk#o-hvro3o1?$KesBmR*347Pe=La9KjF zmUMb%Z&~&sp-?*&eB{_rg(7$WaJUMU0ek=#Bv(`id2j?Fiva#ZE<-6(HpRUP$xdG@F(5{+vm7xBqYf=X4#uR;We>6RPt%Z5+7|(#gsH29Y0Vb4AplD)&#?MJ7J;y;6 z*7D7CMlDFC<+3Vm*wx?-fcl~a8JF*mFXeo}nId65Tg>QiU(~RpUIFEjq8`FkNgI|> z)%ywXpN{(*Im9cYqq)WU9DHnUxm2s=0IVXh^R=AzBi5O%JG%pjh1g+^`*^5ZIy}$> zhR|7ONj>%i%OA3R*gTi;WWRR|`xj(o8MITM6XAsS^9*U&Vga}>Qa3=y! zGUh~EhFS$xZ6_fk&Vy2XEgJz?GTUps^IGehT2L$SpqgILpCYf zf1`jSKk1o^Jb2qB!<*@7Vnc!`eX^yAd7vdFXhT~S>?PnVxEkZ`8I%~$X3S)&pL&2S zDGebemU*#hh@>_av-|s5E=zsa=T?9+tR)sxvlBz3RYc1uji(U)roi@3p^lge`rSew z8vYKY;$k8hpmK5Q?+402~(5B zF#s`Bz!Ij=6}UVV0|~qKCS3UL^2hxL@sNiu!c9xRXTjMmpnNy<-o0Vb!>!HFw+1ZM@BQ9r+EZkVg27mbdj zu9J-%YIKCju0-ZMJioE#JWL6jxrlWNO-zK+bcMDeoPn%P2-zYA`k@8h)pLM>+CAcE z@2HuzTJ1!QSOZq4jFvTGf2hkfTJvKp9<6muZ&j&g5tjt=M@WPVI2dL&A<{8C+a!>D zA56NLjL7sR_lFpXhiP7TJG`DzC;EeaJL!%B054;d*#xFBS>hT>KV?vH+L+Cwx&6hr z6!2UrlK*b;G};!ed_F$Q#Cs*M0Shm&btgp3L6vL@?D|vCX@*5VJ-wwK9$#;$m33EL zSlzd}zCL~B(xqw9Km+hJP}@*SGF;H87*n9zBo zkY3j5O*30uR>0d z(W!$y)NcfgWlUW+-v&NjLEUT}_uwp)vr$98FmUR|alUV(YLzy!*5bwn+!p{J{`QR< zd>~?Yy1GkVk4}H&Vd+Zr{9*A;cZqlHH!Xc{37w&D5yCSa%gZ8@rcGt1K4`y33feCN z#4G}I=r_IhW8v3G;Hc;tx}M>(Yq=b>(&WM-u0__UPmNS<&Gq@Rhw%twkiAcvcHO&` zv~0`zOctzC#5y+R2jEF%N+GWlDX}4AkOGl-zLa(pIb(Pwvh~;nl+Z9&KAG}W^r-0G zN73}`8fEB`mfgH-2<1K#jTW|4HBC#{7IK!8|0rXML*VA=Yqr`xh_1+Bh%k9e%9<7^ zKDa~SL|NiJ{1rSw9=wMk;Brp_mjjn)^ZwbVGVNNas=4}v%GVHBQuPyy4=1~8lTgxw%q_mhu#OOvi_6fN>1i@(54$?M=Ib3P zIgK_vRF=Khu{Af7`;)e0VC>gYa$r`ljJXlCFcYm(wbqkH3Pq?QNDP+bWepRyzknGp zNcQqj_)^Gc0HZ)lSqcdoLZbd6)PQNz{$~**qQ!aImjVh-oousQer*^f=e|B_+W_s% z22i0`u8*K6?Vt}!w=3CoQ-zQ)I}$A)3`n; zUH=Dua%-TbCj2W`{DfK?*pfF+&5xtzIyo7uQzBxyeEGS{Pz39_VEBaQ%~90!AnK1V z^)j^J;R#p81_x2uZ#QtFuSc@MA-x5qMAik{ZbgUU_JqNic;}39$$a9~kJ~Q;HRY^V zEiQS_a-T7E+c8iW?7zgJU!R!0Ig6Je9ae1n5%dO+p-CU(iE|ZrZsdN$P*466W(Ky``7E|80eO%Nr@lrqr5hKC(eGGx+79eiUL`TXcqGYbHMVms?q;Bv&f4U++wGg#zP<}J3akDQ3>c`Mik$QnNy12Jz@-8qOSPwm+WwH&NMXD* zq;_=W_ha#fJ3B=+IGxuafK9?7*k^;RlSb-s#6uu{N2ukbLsNh{;vWO1G-PHnK7JMc z1%vr~;^@qwYO7Tmcr(c%CP^j^4GbJgU_hiVH{V4EF$6(H!-+C{ZTLG8M)FF}Za{ zO+;*~X_#9}VXyEO_;1M3@L#=NCrZcb1qCQv8gjcS5I&J9oFL^~BoNLsF#EyjG>W^E zthg(sT!^7DH%uq{d#sK?y;+x_h;cV@aHX+!`t+U0FD;*I8S3Hntz%zX|1azOId%Qm zv32!avU>OC?06!9QAQIJqoLF=Yz+OO|L{gj_+wJmb`LHG-^+9`T5W{AGrM!FB7AkX z$%fqna@X?iPs=m2aNA=TcECG`@35w5lSdAahui?T85S(I8`XGBzUX6|;|Ky6%}Hh%D;aDg{R#d5 zXuGecvMbrq(YoRIP7u@)4b>|xy=B|8 z^>@(}qRj|XxcCEo1%JrWbd7SGj&_{fv5(B2P^1(_s<8I3E41p&?z1cKfT4Mal>tKc z6B&`6RYPc+t#f$41$#1XqZY1N6@>xVgQj;BhkO8gaIASE66r*jIj9Y8EecL;T~|;^ zry`rl{e`9RfTB%rf~9sy8EezUk&03XFm~DjUN@hT4bUrFrZNnHo~HWKl(s?2#Q*!? zJkU9Bf_4SyoF!7%iDGCMa$)BL*_ZDCr&F;TNRHumHxth!uB}Y3O;0Zu=a4bvYBKOf z^YW1k7=9rpMr+)t$-QlU)BG={Fjq4#BoY_Q+ML+gUOa%7YWU#D1&>~S?zvrC!*(Kk zz$3H$D9dBX(d9Xdt|@vp%hnz?o+4M0mxE(qVJexMuCMNH%cC2h*BaOYj%&lEz3$z>e zNQQ%m#|RLbPEM);#@zU-^?HDkS^o2J8gJAE`>NafL=;*0L4qeaxKw>zv#m}_>3ZB zPEnsS%b>pBL=BUW50zO0q6Sl#Fdp{ zlwl=JJF~EySr)}Jle6=)OG{@8LlZ+YGiPe;G6WmWU_SMk&DB-&%!At7(cb*154a~k z!XB~9@c{fmR*M-g*sJ&>knvqo2ECw;>-Fe+^}lmwYryc2;QFwk4}El9np9CrA*0O`u4-7o zkF|~5+x0Kk`TF3(@}*qv((=M!U20ZOuR{S4?jJcu=>Cz)G0z`585RbFPh)o@5gjSq zqS%Tt$I?Y(W1PI*HF@Oyr{SK!T6zx`>isY`vM5?bsEw&-(R!z63J@yEfS+VuH0^47 z_Tn6;yF7x~%*C{gEAra~8A%8jF%;NhUs5$VYqZ)Tu+;!`fDXU#FHy?R}US!d`zlVg{EF8D3zC=c+tsZ%=}7wZn<)z z!oOYla^;&9;aIcsVt#He|6-+iO!A-EK7S2vt0(irwuEkn?o@YI;!m(Q5oj2u6c1Q4 zc>T!r&(d82Rcr=98@irh{-R9+ksQS&76wy>$mr(r_sB%{-mQlR3NJA+-iD?s1q|h@ zau8?G>>6;Q23&O=Q${c-6kQ}Hm*!9i7n6Ki$dn=E4bBlPBR6BY$CPT#kdb9bN`HeZ zHYIA@uel*_!Jq~o&W&7_0%DHH3LQxlIu7IzC7=lkmj!bm6+l_Ah!}I4m+pWCJ%^|Q zf1{8rj`a_Eg4r1sUckRn5>4N&%BXDAOXY?p7)@N)cYsoYXKlKFS2z_Alag>_OUf&x zv4*efH@!$3h;$=zsEpTuuF!0kDCYCmrWT;2v9>z8gsZjIZd59wxOVBW$JPpZre4l~ z6P3;*3^}=WGEOVQIFIda467n>Jk7SZ9l0zD|5ymvmou-xGTJEu?_V*zsX(z$W#=c@FP-JIQQ4qV7EwTFt1Pr+j1s1q}KV5{>q%8Wif`V>A({E^2yV2;dve)R1w68)D z#v3AB3^L5W!k9Sdk9&&clNl%qGX+H|1Tu|EvV>tgL7FfIYJfZ7pgn~N=uiW^C0#Kt zNN0@sgYUO<(kt(Ozrkb3taR5v4_r85DOy*`+e0JARyYh8XgOwP8Ok_=IIf+EgNf)P zsm8FCYQ-PIb;KiPbO43Kui1Sm7CplFAAR}%TFn3_ejgV0ti_Ku!E_2#^u3BH*_TW- z{VB2w`H6B93T>!BajTjpD_kAw3TccHm*te~l2T_?6+Fo_(;Y#)h}L&x{;0E@%!FeW z!VoYAa!Gfm6rIVb3duhe`Uv6gH~t*jQQRQVAeZZuH6feTQcxjDr6+g?RYwPfcyrWF zLwk%%i<-xEY)q6Ifc%^5rhzMff{EEW*01WMz-75fiawz7V}&6iwlp;vLIf^`3Wc>@ zs)WV0T@NfziV_J?MtyO!FTafD{AEZ#ESL7}Po;*3mytm&PcAMlXW_<{N8`PX?-08= zJ@H`}8PZ*eA(t=~K~x??HgpX_+-8#2WcFI+enCfkUh#_j=;kO5+d))|j24I$HkAwVIhPl}rdf<#Hy<=_X{S zrp&1amwit_zKiFFYt6#Ez2+%0UTlTw?oa`JSCr||7ySR=tTPnNRe-{@z|!ec?K@}a zZQ60rz}!lYq)2oF!Y!pw2O&w8kqVIq1yv;u7gRtqFjqqIQ9%xMn@;n$hq!I6Cz5*T(ILu+3P~1erZia*rfPY2yimD|v{qy^%o$uCp zeV_%MXti&w>;vOxRuvJBj3`O2|Mba9B9$FAxP-xtCYO`^Xg@ca;AV|v|H(u)n>g8@ zG-l<{SfuDA7f81ZjoLXPPI;4&n$?C6(+BMIcvb%p?XCMPrp>H zZXhbF_fv=H&w^FE<<>B%)esAqrYOBtUMiDn%0>n{(0_x74Ed*HJ$V~i3#SS+j*WS4 z5%L0HFR(a`@JGsesDq?~`QP)XRJ{z&?ctT?ffpbgyL$D`v(G-U@cO=qeDLN1_rleM zAXvEiLh`hA;+4ta5G?D4%W<&GymRcLA92vGW5I2Jy2jB`X2U(OAvweZFU{H z{eR4rBXkQrRQMxt4U+wqP99YztSYQKNS>gzg>mq_YO1P+I2cJ~(ixfaOn+doJPDXU z=Xnk95XN{sDeOc4Nm?@-wk?)3g%;OB$G=v}pzBXWDN7sXc^LzGcP!pl)1arFF+fne zh*}_I1B`EnwWlcU+yPGMPk``@?i~->7O?KBbrYmQ7q}X9ZNT6%$2}BKFw?;j3uv?g zJx(<GI;A%Xvmdy_W&xO{(adnQA39BCq1fv023=_0oh=?oq6O9e%uE@IR_b*7)^!opA!R6;sJ6K`+uTO`I^2hHy}cnGTdF=ba%^v;-5Y4Ld&3?O zc||uRzA@MxNt(v4z~N&)DLD!F5cVX5{<}GDw+MhbBtW6oo@n~vA=n#rqka-Xe7Q06EQJ@VNf{gz4@q#FQChmNV!mxCi;XCt4Pr$@)dNAqX^kj5v7H#b<6HRuh9$B~gjQUgkl$D5pCz7;pWhW-RT zJWZG?_AmqLC+mx49673b{T1pgC(&c{Dn(>h&IQ}WRMTzt_ZOdj^2wqQ1jP!^FBczV z1@&N^gma?o8-$l2d}K#It_6peg{3ZZVOY#X7l-u|$k-#|?;=Kmktb;Nu0$1DBV> z2oZrx_t&`G;GI0GD{(P^RP4hvCJc}<6_^s#UnrF>c*I$+p!Y)XarD7zkea?iI(Eq^ z!?U0xEL5oT&}bBs*%4ocju9#}D*eSS8f%TxKMl9Sv{}-68oT7Pp@i5a2Xi%u zgu!BGVp@dvCmmsN7gi?6`m;03nMKjOeBlU}^b%iR{F}ueEDFz>+}BO+Ye{Zq(Y%lZ z6Y_$&I3uM7tJ?=4{Jb|`MMaq04>O9P{|Nz7=6WIkhy?V0LqwZ{YTjGRh)YNw*VQ zEBzxA!<|ZtbIV&H@2^ zbOY3BU472yh%2xT+K3J3w)WA;a7e?$mVS(f8@Eb?15PMN{JN*hr#Vc>vN)=CD*( zl;x6Xt)s|emMXe4-^O+!!5nC7&M=ozgpDdSaTlZrN(?oDT`lerlk? zBvuzZ8CLfUyGTfNg?N*Vh`)DnWqb;wfSOBUol9Q7g2`w8R!K{Ie(86Y__veaO!783NG+Yds&&fHCC zy1Fmu0&I`IIiHxBnK{TYJS`>70D3_KO$&{KHSB}gE^&oE$YG!%7T@U@?vh%^WM@5R zd@LWbw3!vdP3lSWSwhLG3%Oh+mmBawzs{xjUDCzMvMYD$eq9$F3}RGG zh?ZMW%YnX`s#a^CVqi23*^}2jIZM@^^f;3s0v8EMQy6XQtlIydpgGqZFD^Zf!%`NG|gveNg zkA-)M9%0@X|03LtFo6#}4{aR1PfAj~HH)^Mt|<$4pUMEN2?UsADn{5bpf``cT`$-t zn7un?aV9bsaCRGap^5DX8g!(Kp)mdcAB37Pr(M7~L#lutCsCDE_45n`i26FQX_;yl z1;B_Xay^3hKVedmv}K5zBo!8HXpFX6&>F?#$r8vI3KY0dhy(5_2s)%SLAzLRR&=QY zN~fQKzMuHNGDHBS?=XU+t(y!H0V*+I>oD>zyjTAp?v(?Cb1HETIvgJ&4CeOZ_s?_b zf~&0_S~xU4&EapxyzS@j-{*icY1%$+UknCxH!9pG+OFsii|T0MS=>gqsMV4YP>0>l zpu}`rZc&UQSA_Jmj>{C%_~KwYzEWX;&APOv--B!VS%A}W!}RXp>Kx#-TtGPtC+Lqq z9aVg|q*E1&Cdy!p*AV&1ssOl5`KJ&+fcfj1v^jD3 zBLtGc?ZF~KyyYBom zavS={?U92A+d-qz27k7#p$O3K9lgx%)*c*3tv+5rY*eEjt3gz>&07WlN;r<;vcI?+MJc`^?IG`rW^-yJD28o};Cw~%zDM1HVgG5!_lsC`^17SwuG0T!S zm(j%%=J_h96J3HT2zpRx$VFvTDQ+o2P|9ZC4#fgY>-J4lh|a@Nd7a1>I*b$**6axR zp$StO>UE@dw*}tQ&BTX^C34lfFmm?fvGtYt>CvL(B}TFp3{@HF^XnvWi{9UnL8~94 zg11KAt@k&)VBOnA8ZDE(9Q5d7g@JYy%!PHJvY{p1z4yRi^MzZH= z@6J8EDD(j|o5Q{d`eUlD=S_DxYq-Ek&J^xb(lDtrI91Zg@6D=Un}Fy{key_4-=ML9fZ<#T7_{L*aU>LZ zV7en!|946r{w*lzr9mDC5UAQ29?Fn3J0ry-&&F62_g}<%Z{MwMXHyV&3JX9f8((Kb zVsD~jLuK(IF-?f2J^^*7T|NUU=-Wpw9Nl9Tbtr`=K1iE zp7(Cw!%>LOCR3_VHrz#_gv%wG-iM)&Q{n84K&#(?a;}%*2UaR+Y=Ed#CTX%E-agx# zMD3=#sK-*BJiK?m)5M5cw9DgWT_fZ8SWdl-(OeUX7 zy|^cVqH3&1Gf;?Sh(1g>FC?~@v*RI_r@JP@3f6%1jl&LZf%p6z`d2>$wqgGp3$I>( zY2o?nqXX^wmC}ND-CR(viwlYCr%znDa{ch}&qstq=S< z+|(KR>mvB@9l&_#SgtuKjtQK*s*j#G&$Robbb&88!a2{jA%;G1y@IJwdgaC6(p+>_ z3hHn37ODnllH-%9>!y3f)W^SMr>+t~H=scxkmybZieXm7e8A!NWO;Nu$+Fz=bq-Lq z{>NFJ2matxB=qM2*_)MZ}3_A}B-erDz@clz|o%Gqb{-aUKl#HkaB#M!NlqelnN z#$z(s<)aObybz<_*D^boTCe1RZy+pji7J6oZR8RG5tH&2Q`wcikjtISWOM|B#t`C20K{lCH#w+a zi51KYfHek2ua&?JE*NFo6$*WoylH1&9Ku9t%rPG-;7W1<-b%ULFs7DLLSR2Z{_z~b z7QdhFtSO~YyJX{?cKJx(Ld01{FV;&>_N%kQYt;Npl9fVo#{f@tHO}iw5@CZQ7@6nlofH(bQm8!7**V z(~Ib$M;G!JF(Lw@1l0NO2#FkYh;g;r+q6LxSF%$34ww|N=mlj2K&2Fe)d-1m^lfAVgpM3SSJnk| z+2v31>~&*ZQD)Msg136`;7nmGJGQbi^WyW*&kT3U<@!v$ z>+X7tDxNY3gg)-Mg6!78Bu2Sh7o3lUx582-$!ZrfA#MDwPxoq zngl{{y4pw055w%)s0^h)$At3dCDT3T$!G>r*EvkNr8vbdl}ZL=6p=RAOR9Nx^^1g+ zBq0S#=sb$NJ;{QmMp7ovYK{W!NjOO)0V)Tv)R1&@weW(m&xa^-n$xKv)xM- zKckPhV06QR8F(gG$#|j(_?FlL>?1vdUN0Rsrcf{w=h|JFP!NT9@|jc9K>$d2a`zhy z9ma%|D6e=A<@hJ<=B#ez8qJLCrUcg(mVG&=T4NXt24)X09R+qJ8M0MVd{jFGUV{E# z&dPF08-yWf2W*Luun_=%z`4P4rg@TpE}*)v{9ZT&Gn%~Gh4v}dQ4CBrBe{-0#ZYa@ z#i=+qF_`A_xt2D%Zr2w-C(W(xR?5MG-39SUElW9wOC% z{WKyg_L2PZU6|7?!=3RAcNB%1u|eHZWW|KS9^9ua-pmMSegiO*4V@tAL^qR%_eE7vpqq`N+2`gHtg!6#>U*_?7M#>Gu>l~ zAKhEhW=7G~OE8~@0M>IB^7&(nRo!wrls67i<1q@#zJ9o(n396Oo z0lBEENoaS0aGyovV19s@f#MZK7NNT=aN;&dX4o^u_(X`YS;kY?R*>OQ%#LKF!YV1m z9b}#?IJs8bO=2Ywij7uF#Igl8scR$Rkv_dLd4Fg8iI=b0JKD*s$1fj0d2**zTd%FI z?xb@?Oz+z1pG(bUvpXMn`Q@FFsllmz`*uKu3meqqJBi(mp8oI$y07d%+|^7pMi7n7 zxQPsr`=Q!*RO_Y#z)+sptj8?iMmki6XJ4mA!U&wBBlGA7;GaPn8y)A8x#XD~^{hc8 ztYNm!;{7HLM4f5o0ty;1+(S(nCD@kP*uduyaA~8LR&y#U#__0=c{YG2w9Qb;OI5;x zIIc5XEbTrod!A=W;~g}TM@x)FwmK$b_?|}_VxvE7k-); zS0C%Rg>&1-H*Q_OUU=iR*C2+Uf?F?O&R-!BKuF_mAto_mPh;P^`?Tib~bRWF!irl5N%#tT}BWr?v%k zGo7Bd(J5&ms0A^}J7Rc28WWu$#ho6+_#M>TkD&QCl>&0K%uI4zdOt-wA9clKO#{;L zBzJ}^$AnJye?%2nMjzh_a-7QyGkPm=d1a{cq1&(Cf9dw~_tO`x=Jm(#-@kqC;>FuD z^YgcB<7G@Nxji=2Y~Ef!bLKYc^^raZv%9;-x4V5IeiWfd6fYB^(4JurEOMq)a|SsJ zg+S3hvMYxd#`ZP}sOV?gUG5&sTf1p1y|foh3a=>r!XWw^cR`Hyk_BWn;46Za;Zjw> zlx<9Mce%Ymia@9d=0S@$SLNtg;W8o0(2<&p%Ot6BBGg8r!G@Re~BGX^^{dd4MjR7&+JQd)q! z%>wjI7Z3=m==?_OjO|Owlw_OfW9aeJrA0**V0d|P;ewCj07Bav$7?hCv;AaIso z*=o`+pxG8m-e|ZCF@~^jCe+?uVtCP|#0L@|UpaZ=;L)wA5fJys2m4EnHr>;w&fgA1 zF{Qq__4zHH9{y%ac(cTfF(z5U;(lOp-?X@cTl-3F3kKk})h_MZI;ilM*EUY^53n%8 z%0Gk>dO8Th?We08F#>+{1%8*@6&^ZbnTNZKGTM(*`hGZ2|5+|j`%Gu8sP9UBKhIg~ zRP|cZ%nR#ljwBal$jw;|!~G!c?JTFA1rZIXg|#W$H@1G6fL&~f0pX;8_i851%UVJj zua^1t-HKJO}6z=d1^hLdr_=UuuP;9Jz zVc<*k7e9Kxe&^=Vft~u|!1PDUxt5)24Gh$O@}nR9VEuzV>1}9a+4f+A82V0IML7+I z-enNiuqz2ERf(R=kU%H9vV<>TQUk+sV^&%)3mMATk%nefqMt{48$PlNiLE3{0G=SW zckipi^610C`p{Ri--~}v@9$+sh5h3H2u*U%E~&Xbt`3B+A1NkZa5-RqMNeu&dKiO5 zMbM{LsE}+Y1Jl*fUyT3<+oz8rFO|8nOhgW_(h+FcBFb*t zT?A&+UpMbOk#d|u;3F$raYWfcYL9sdTypToY&3D}PlQEq*AW$OB&xgAfm z0iW&k52c5a$(?Gm-5ea;X#j_2IriA{@(yHBcV z386N2m)^zJJqiK#K+nA!%Mg=z@7a%bBZA%Z{n2;x-kA+v@wGB8ug*1gKhbGK#tC`#Img9^mtg zAZE%wvHYs2HDti?Q~#DyWYCj9Kk}5^DfG#tM#B^tawddYQ$MZ25D`KvU34T3pnf}z ziqJA@xTg@4lS(?WsawY`-#cgQug_0q>)zDa%}wLfnKQ=0?QLUjdb(aW_O+*`jIrTi z0|bf{W95O181CNg9%9eJcr1L3m@eew;YQ(1!^um#_HZ`bl!(O)A`R^&qhw;Q$%`YJ zk1u5SQetKXcz^V3_@7aUsbf}VjZd{O@y=-lFF7*YE1%RJ=gc!eAgxo1*|7((j}w05 zOe#NjuW*(roOPGs6&fAY}Wu_7}{E>Y{o=yAt5kWQ^X}8Z8tdXLT42p6f zBg;k4tIB86l9H6`4Irlti2tm%@z#LqFt5E_DhD9)V)G#YG?>Yhg5Wzb8K!$ZV`5-z zYQxFSqOo!$>CM&1^NE=Q}QkAioCPEE&t3<{S+8%kb}2=LjH;P z{)L8;+0dRH!%bs5z~UUbDXbXFK0`rXmVpMhDWHnbDAo^vEt(BOIQED=0|C0#sMFrf zGI}QgoS6(>)dPa;9)U;S$S)IdX~BWuRSJR-)3TvzNyl)EvXDw)YhW^cAXY%4JxkyU zHLji$)1fUp)n1s;HoNVy}~*LGBE|t4b3U@pZ>D`K+wDmLM3m<5^}F)ItPqoTsQ- z-a?1A1N<_b0c$JuN*QpPOEb9Y*%- z%I~!R4_E=5su1nOIS3RNja)ev5I3v(b$u&(d!@m06m2(ok6|I zm!T<+apPBmATXdIVZg?}{DSV>Gj+o}1|x24@um)u13_(FK^v~-6ipARfVHh(3*&Lo zqLbldFpgZ`JsBSLrtre;R41)eq3KywB^UaswX7tI5M?Rma>bs>7|C6H~vEfy89`9D9TlKSzmpn)AdI3Y96eGeG{Jru(oK5~^32 zjmU#~$l0fK=l*5PnlkjXXlZ#h=e)F`*%*IzIm@6_(Fsog@0B!`ks&(6DC00X`<)bf z%M${QfASD89rO~mQJY4LjZw}(gcS3SI8Cb;rVKtq6AOmYeP{x!RYnvYiq)QH;-BVW z1l~Cqw2zWEpmV^y!8T;?Qxh1*fxtTt@eCBO;p|m*4*qlEFQB5Zl-Phrcz@#U#4jfP zF!86P=UvyoD*lo8^I!Z_@W$KEynplZL2=oeS`zKNnis|3H^2DBAP0)w=Yr40_nhr= zHv*&0jf;`-R*#K?r^;v@@WzO@VioCl&tgh3yu$8YF{ePa#Q^Rg%98K_SDPi~z2Bbw zQ9s9CA7}NwKk?{i0*;9Ng{}6Vc=ot~en4xGG|*lH`ZQfgn=q1 zX8Q2RwBbKMtjlwiDyRXV&hj(~2t5QCc*`52%pXnyD`#I$8Wu*sHt0 zjF-O{u*e~a85I_Xf;vJwW>3)1jB-X?hRj!vNkTGY_yjD|Ko^&HCYkd44FK7)5P(d0qG73aG@ zgUKdf?jlZ+kGL8N#$^oB3b>@x4=Mo=WS^V$^>=%XSww~Tz+S(ExN1P&{Z$SVKEOf>Y zZVLU)$w>hwQ+WH6pA>Xxv)V#JN<&cTx^TUFNZ%#=e8`tV8wGC^nV;CWP|V5DTo(H< zntY?1QLwMkcVm|XQ}$p;%3iaJ2E_5ve`V43`U1%DE!|qqY4#Bu${|$FU%ZMZZyebNdLOri!#ctjPMD&=8pC3VQCQeV< zMjJX4Wulrq@w>kfF)PkPgYju-y}p|G$BCy_CayjESONUXM5@_*_Wp{z;``4&y?75= zXU{I^ckVp&=d)LC+<5)j*Q1ld5=ydRyJju2ZF@eze}!#*p(H*K zfRG@=5)xLX4+CFj_CooRsJzR}&~%)e?DBM2;KG7nDniIhLg>?|r#61^qg$zPB0Z-0;8Ve2V8VzLJ9+_JwTA{KE0%4@Il>9-mq;9Q?)N! z&Id6B#C#HQ&m9ahK*SOr1Vl6Gyv7a!;#u@q5c0?gQwNmC6#NZq*yiN0q`)sFr<|k$ zomg~J%;b4&uZamzl;%KTQpnFhpxSYc<}mYD1=GgSMI4wMB(i@$)jx4Q3!`;uwWEKC zz3P>aGiO?1o|ATy0h7BkrJRdN!mI&`)E+{$0h`tJuK(+cHdv5L8wTsI)HxHjWb#?u0`qzK`#8LM%Z@l)Ud#TiCF-S0Bem?uVS^kZi+?zMK z6F0ff-~8R1eDy5%_Ww`Xn+HjfUuA;f?&0_C9v&X|ePu-6XXRO0S(TY}WZn1KU0qdO z-KB1Is}HqWY7IRg1WOCF2qZ1W&W>1v0W^a^f)z8sFtfl6hZYIRhCkM9*Noj|#4)>u ziEIAc{oc>rGb5|Ap=6ugm6??lUDomQ_j||pzW2Q=+@E}&`=!tS`_J=d9qyN~+3fz6 z&%c8;Rn9w~zj8k(rzhI4zksA@-)Jrn#OR+7y_TqbM$`a+iFhFljTzg%FXVR~Crrk; zB1J=}80@tX(XT?3>q7sNKF{xU6yqTS#seEBgRw3agRdS-i2nhwv6~6^XSetYig4%V9*;P6u@Wzcs#yX<#k@KelO5A~Z$1Rfsie zE2ChClBe6Fnqjq|`T1h6*ZUM0B2+2skX6WYUd5)JC(EGNSy)L;;5ddAu5f0EB+bl% zwZLIZS=1N%iVdohhVVvhDhD6%BIuz&vIQC zExeMWIiBv0J5JW~zCTtSbN+MfVh$aUaU@ilE#=_?v9J*r;AQRSLD`08FP5tjLB<1< z4eZadEGvj@$hN+X?ljHjW9AhKyp(mXK|A3}9N|8^zD5c5D<63MX2yZo!=+X6_;GG^ zM^RGi>GWJ`bn??5`xFF8-o?Ku?sa1|HTkJeO{P|j*QM(BUA^~a^)ZVZYI%`;F&o?c zCNVge*!v{ki6JrkCF)g6ETG9q&-R>LH1QYFbBDj*4S1~fXAA|hlla%ud$2dKfvalX z%Nr=UUQ#ta-!stdt^+G^>t^W8s@9T@o&a!862w%LuwAD7&6Tc8mAzO`7gl5qdF}c&$(=2BJfd++`PQLI6eP?d&h1~ zjrG@$iss7UA9)Xhw-=Ys?VRva^SAm(&BO1dmrtZpCzjLi9X5~lZ_Vp(yz)Xd|GjS@ z%#r8WZE!F#FqX7a%p3YAwv@>C)D}K>v!IkdcW@CYz7o z9bf`Toi$?0h`$bjqH49;Y@!z~q`aYdm;MRR zBiMw^GIAQ#P74mg(vp7dr$6-O+YgnQpZuYJ`opD} zs4q5bH@Dfyb{x#2IQF;+!FW*Zu^JtrDN3H%gC-N$%YvEBkPR(7`D1LBnxBjK$TC~L zD@Ab*mKLqyS_mWWl3>4-bSJ-JvjQOb-8I*~542;)2%uUfVN{+AFU7!J_>21R+4Ceo#xageII&%x8#Hd1^|< z7#G)eNAo#=c3S?^_)E#+SfUNc2wN^9vIjuMt z5<}C?Q;^W}wtNPwrA$TikbZ-~p>S}KvVbLsdfv`JY}=>WO_Djse|QugObRA|JDVH= z9gB4X%mOOF9(mQa(8#lYBO&nsS5mT- zvwVTs-{(?4mHPLom(~}4`1#jQZ*N~ef9$yjcP`$2`_b($e<=qwqJK7CQorwe-g*7l zgS)rCq`vcx`lZ`<9~^sKv47?>hkxkvJ;>GXR|$Z(Vm6kfOVMwb`(mz(DQ(1UQ)X|G zkue9wtZWZo*h84Zy&uNL#XJ>6I+>$t4l(j}K}T3v_c1Sq*tqNAhTFOfu6TNn_6fK% zaPw4DP<74~d5yO~2tq3WLd4X=pXXfx=D_iV044w=TT2&nTp5~QaA{2rdf%8==&D@Q zxDeW1`mjuRImqI5$;*M;6?wnDUUg(hLh)hWvWWA^3--_FSi>oe93N&8aQnAE0ghr>LJlj`z%q2gFJqR124{>1 z*UEDCDy`5YaXm<01<ZxPzmSSE z_=gBok{CZE=>#Sgkl<59w}jKVeKzgzfs2e+Ko!;PVP>l+ZrW(sZmKy|JE7S?XhqAf zIH&WQyi5Zu_P}pWQ#*6YI^4VA+u7ME zKw_LVvn}IG$kjjJ!N+HLeYKS~bRN&k6cyRjJh6RKGA~+kSrwhOCznAy<_*;oD@fna z0MyFJ>ozj7En{k?f&BT;8GH8#wo}o};m&#&G{o7;DUMsUj&5(COl^r96WMnw+&5BO z#Y$~#q^wF>p3lmZ?Zm0h?b{w?c_^!ivmN$bbXcs0i4&6Dca2fBE)Hm4FG_-eM2as_ zn}Qu=l1Wq8`Q+Ru?GK~L$JukIz}(J8g^4V08!_e7ZjgnU>x*%*EcG#mcr> zYwoSt&ovrz7`0T^GLlijd*94TwBN>F>j*v%SqTyOq>LFdpA&jF@-5}4{)WpVJ4MjQg+?_jTuI%jGy?f^T<;#ULh2$~d z{G&%Pbd{4Q!AuV4ixVB%Ww6&-C6C0OPU6InL?wANvsOA@pau-6qPAL`phwdK_A$1&cFmUUwYIPTuCQ z4HAemWTfHVW%Qs0OFDL5nbkx+ngTck`Hz*E6wk2YzfJuoR7LNmum${$3#UGE<0G%V zcH#KiJMUZwt)ewEa{;7X;AilFk?R}5x**-)_cl^A?#Ca7}-U#anB?4sLI z)oO4H)2bsmMx{`WQaxmyrEvx5jjDN~}CWG7nG7I&tq64;{U_Mz%k7GU8e=>wH zK#N+F%b`{>kk(?s8fHu#-Gas>nudlZV8|Orj28=vD?x#KNmFV~tYyn#_F3Zq)ym_6 zNH;(oSk&4O6iem}0gMHS#wM+!vbErYx`4^oD&jBgD_t=|r}<`*h%3KFkF(4X!+E)2^9^OO@5zrsJ={O+4eyR$Zwuz#^=C@osxQ zo6a2pEVGOWchOg}oU&?V+S7oEGuIk-l+t-JDuo9TDm>2DUaw z!1@~wrU(jAAl%!>$voZu1)dNo!qbhmia?Ep#wPLq4wM(E1e>-)U-E0g#F8Ccv?ps$ zI@9+>4xr&ggUij>v>fDiufR<%mpin#x*_BFaR3xFbu2gnB+7#8Zsp`(lNxs57e!?7 zO1aVpX%y>t&?4$!N~Vr*qN@LK3EkucBMaR%$amg@%1$YRsi|t0-4^0se+%#WTxx7R zb7pH|qB47AZLN}Rbo_=S9jYYyK`bn?CxlOoaVt}!l^pzIZ+kdXpaYV#WaQ+?o6!(y zk_NLrNTh)Ox7cahML4v%{2Z2aOnCEn`;R)^?v>E8mbPv0rZ-)Du>o(}l?_FoNZZW@ zU#M9;Wvb6%-MZPvCk%?|eDxNm8?{15l{$90Z3tEuyr&9{it4H>)~rmnB;J&HtBJCv zoa@v~!K^n?X+sCCh)6o(D!hpacAhaIzJo4k5B;VhL<>fIBUHm;5ybVxR#_|z_W`4T zS)nu#CrVhCw@VrZL`sSTQJmbv`q%iAe7?hHn+hAC3aW>zj#}9&HYnJD*o; z;RVR7hB@s0ftO96(+tI{~ru@>Z*bew2 z_TihV!*OA0DzAXOCKRx_1y%SmUua4U6=9x5h$$m{<(rbNDp zIlU99?z+pHX07PDwT;$c$eRYWVDEh;Z5!O-%mNb>qgiG!#*y{LgX>YYw-63FoM;Eb zLGKo6@lR_IVdJ3jrFbJ*eqOJ2xl#igXXcQ0V4-B z-uL}Mb8s0zH3tH&C)hlfS*=!4hpSh|*8`?wei0++DXYY}qs~rg0q^~i z>KR$k97>kIs_94}S}MB&|ArIBh_(R5Agm69AecISs$UQ~haee*1OwUC9HvoJ?8@_H zDQ{(-LuIFd7><>Ax3Q@J=V8Md{yy~wn5;gXYOdR-TUs{T+U#xgMn{)gOOM$C#e7L- z6VNpFzU!tLngoBdz-}}gIbOtaqkrs>{xn}c@9&* zn0(G7GSP4q@p3DC!?x&jN*3q$?O)}@laQ+wudBs!!-RYX=ifkHC7i%tm$p=_PN(Cs zFr0%z!GA7L`#bHTFgk_fA%oCWb|3x>CqO%U*HcsL*&@UYGO5&fXS#_+BjY|P1CI;4 z2N4C{IJYF<&I~M)4OjmN%832Q2`>c_k*bs)EiQm zZ8pYvlD189WY{;ku{brRGawszs>lC%L~E`=E2l76j?M5Kuo%NrxE8R&42P!<+J{;z zaY0#C3CDrwz#(z27wFDpjy88fg9m02l=)_47Bx)ojCh~zgL)4$GR2v7uf^p@-%u+)7UBrvV{wHq=svxyYV%0A^Wa&&i4xZB*-4jPBe{qjz7nq0b*9H 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

    bF2!DWydAu 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�qL0jpZc`^E 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�kw5GW%o!zOvR$Jt(+^_@G^@JGVKm=HUQ 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 AjY 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

  • -qL&&nMX1FgST@4~9bD5A$qsR7AlNK-;ph^rAUV%7pNF0t{uFTnsTPtlG*SHE z%B-!Gem8IS8@#OZKt*Wky|xMkNqkoxr5UV_SJ1hI5~QAu{Y6*Tas*a3Et?>VBeI-m z!CQjod!rl!PncTzBBv#02dDPMgZV7`%Gm^yW8Y5mxVt?}){`{$cBz#kpU%F^`zw$lO$N3 zs7M)Rl20h*0aNZss+cT~WbFal)F9S_{$)G?w6-FOv9J|2g?PCJxsZXe`Bke{PM&`B8~ehc=-*8hNd^@zLtmA=IO%1 z5AMCOIN#PU|Gu^#(=XoFR(^(KALQW-VT#SH4fmAI+Yoq=Bx78G1_aKAWf=gZC9}F8 z73RS20ZM~N^sb0#KtB*1>BZF3hoR0as$iezfZPx}liflwj#yl59f>4OP;fBRKWH7u z-KH8ZCHd6Q1irF7h|RD(ba_-qJRKDs1z6U|q2Zx~kf_xt^R)uhc_CCm9N8CeQ#{mI z>M0ge@$I$w59hg;=ehaC#?sl7XHFd5T>s7z_tFx#H0#VBo_%xnqgnBz*&ogRY*sjY zhWpVOEJ0p|ZJ7P%FTk z*@p`3ms(uxx{sn(f?eZWtK>9qUtlyZ{&|82S(_@>kzKGEJ8~wG9pT5Ow^-ew>oYNU)8Drv!;m?6e`{+is{=j;D$Fd%SF)xJ zbt@O3U!C-V<4MoSj70N1;9g=D;%5XFjl|JZdI1>Lw1s{*#-AF0jC{jk6d^|;W}Hm2 z2{bWM{sd2h*rf@bvkqI{23zlE8ufz##wpba*LR8m`*0jrF!yaX&t{W6DdV5$zz6~ zYinjW5m_kH3&$yA2i5!-ug+F2m9=g`5^})|&w8>W{Z2n#MuzaRPpep}ob13*A5FS1 zQIYe!{4|;)_%)mwuUhZjYm zx02XTEdp3=V9#`3yM6*6k*k2mrQ08CMyUx{F1z^?3Vn{;GWA!RfAp&z@SVw`9M`N) z^hn(-2xijfG)2t;AXZW9nW_{vy-4T%Ml@P0aorQ%Pdqfi1LuNsj8%f1^P%W)%8*kX z5aF`mc2k82K#6i3IEu1+%`U@cZQB9iXF?akT?xd)pq`QB9MDDiyksjMwH!>)ZTW9F z!+wSuI~3ZYJ^jhr;lnfg4{nq-t&p&m*A$^^X<~F}|Aw{JH8j+`0i95?aZhrh zqA2whg;GHxov2x!OPet?kcF245%oh@6str4`c{LZ{7Vo#nMnJP291Cv(1=cU3`~Lg zWULo6+)_L#B*$XkZ~13Y@k5sA$h#hzDj{M6`mcc%js$hkPH3@FS{OZkygpkgZ6&r3 z9bP}U>@Cigwhu2Z9^Nj^O10@#e=Zed?ST#AP1~{UwLlyWLyq{p1WJ~gK9y1?S*{{C zsG`W(lcfjou9>FO;e9IxD@@pmm(z@5lJ`oI=>TJoNsf{7+?YKI=Xe-2+%XJbNcyc5 z&a>d3?0}3PbXC-oW;i#@>gk`Da=wDro@w`F(u2V0OaUc_sAxs5$!Z=YwH_8?IRh)kKSKjT+Zdv1NjD+=4a;d z{U)Y?#;AjpGhLmJO>2XL+H`EbnpQeTJKOpZd)#B|P}$+`7TG?of!rXOCwqkhqeE<& z9hEw_ImDMy)MWBFsWZ^yjT!b}%8opY4<%M2#yUs|8fLd)xZx3&F$w3<)syf30mX?8 zBYcT?wughFFjqj_j|G+D?(L-d7PmqJ&ew!7Zw+&*~MT|1}mxVG5S z)0nz&`8;Cz>1$J$*VivkT{|t!mX}Ws$7kto-aa8}voOlTnJc60hGEzI^s+vI2T%PO z`Yc=@j;FZ+k1N`|xO6T=r?GoP)E>W09rT$ZNC+}xaQtQ{&)@vKkz-Wu+RdxwpN`KF0!h z`;oUl ziD}F_z*nX;27>CjJ5`JCcXerSBdN>B`#t@+R-er8YQ(Cr_qIM6S?+%VPZ6ml`tvW! zN0G;;ph_z0rBJT8vXf0l!+NN=6AtebL%KA-Sszjt-ZSiCC(29&k{_^gveNZ`r$feDYZOwLpY>*B;>BCYeqQfadY{6 ze%p!x(yx{>JVaKLAS=VtCb;S1_-d@9;#4tH2eEg02le$}Bx1ucpve>F`S<+JkMQc? z;28Q0nsHH?18}#z(r*h^Um5dt(b|Rx8`l&5hBFd^#b{B~#O#jT#zMuGcT;hziq&oUfe$f)zHtMh86z{{t0 z5Nv8K2!zkv+p5c%{WT9aQQtdzWW9aRTDIkW$kds;#8DzY z70gM1;Rsz0H0>yO{TBC%s!vky|2Lh;aKVi(a#wcfrOtDgtnjHU2;zzeXyZWCU?Wg= z7SY}*mq3@;+ryPBdO!T^nt&!QRt5ogkhBzW)NA}9zlG~Wfh)WkiKOr=CB(mN1CUyT zR2tYY1ndnvJn#`ZDg{U*b#~@~9L)mnoG<}G1${mbYIi79v!3{W0jk--oF&7wPJHYh zy1g^#V9xiiWTQP{dvRHG7pCi@{XO=wJ38tv+dchquRK{w_OjflWyP&)&zvt#oPJTB z*|bBXIT-b`4Rn}m7{CAKDQ{Th}4|e zkvy^yI=H9~iphfqlj5MdD4Ub}0Z_b+XJm)dI-xehLx^fZazO1NH+z_Lk#RV22ucPS zkx1Jen7Zf_(3acc~S*nTC>83G9DmV5aiY|wh0UA&x4m8gDER=E{Wmiq-f;AhMedy z5b9Wu5<}mhi%z`DO_V?%`oDLQpIq29cqpJmdve88wgRs!Y(|S&LC6-Po04~4J$i-u zZ19uKu!7^-O&!_Uk#V(Bm%v(X)A0x(O5_(Q5x~+za7(NH2!FQ`%$jt5#ltwB6m*fv zPO&HDN0PF^nUr8xP@m9C*0VSh^7bc^O4u+=JMKVO0_F&|1scLcL-KymvZO&MhTg-Znh$V)Yp#j#0t)B2PGa7M0RH-K+Hu~!W8yi#mR@aM>2qa_8Kdquk20GvE&+1bG z`d^SvKopzExa+{Qz<-{%y?IBPK%>LZqJIpMB~3kKh2xP3LQ@1KBYO;xqkQ%;`Kiy# z&%UGfUCyZ`jqDOcL5}zm=tNApvsvVTP^LMfP9G_DO}UvF^xRv6!=O&I+FP5fTS2&7%7};+qQnp# zw5x@g8R02&=0Ig}acEpr=l65U^jtC;3WulqyF1Nsb-yy#**T}|SI12yK3eQ$qw2O( zWS5_krse@M2S5>qnITIG2}FjxDTW}@<`s|uQGI=j_1&)I{^|g|tbtb@Ms~>z=VdKY z#u@!F@O)I~grn@p5(y*DtnP;c0~ZHI$HbvJ1eb*msD1Ng4q|~-O-Yx6Wcx+TUq`^R z-T_!&kZljCerKKR?XTE$v3X0+GzPm<(|sEogJVviP+eUIe`(o1u(G%?Ka(1(uG=d! zGb{Fbbu6Wf$c;?mR)*151pb9nf~WLZ5HOHw6@sh+WC%}+(EgppXMw?L>q)eoTYH85 zyLQ=I#HxCwXocr7n?_V#fQ{K{CWo0`cn||;99^m`KxGN1cLE{BFR1?z;0fpuhouoK zG6qJ9DM+@)J-M(?XLH4w84x#V9gdB%TLmyu;NPKx^`j9T9c;_jbod15#t~qKsNZ-7 ztp1l8V}}>cpI=@-b@uqlWBcchOvXy1&=wo){NyZm<1F{_5pMnL$s;ABv(qRYIeB(n z8CV-~2Urr*j4`z9=aUWurWKrIU}Y3RC?FtP2@2-KEof`R=QzG%9-Vc{y_*8$jIt3^ z-M|=I`Dc4Evj$$)&VJcQL}?9k6_ozZ7?6i&0+)sya|gIYkn{PER=8 zm5&`dTr*7|p3n?hoZE>Vb{7}j!?B$?xfB|i$&_xJF*YxC>#cvKo4Fx^Hp|876*bmC zJ{(Mlg4El87EU=KK2;u%UK9c~OxP!G&&oiCY7F6~MyhUO`Hl&Qb&O%P zW()*673UpA)C!KSrb`h$%KO$lFfiKNdtU2oi#yGE(0A6of)FR(5iPdKb{^EgrW3!{;0RAx;+P%{prxIA-BiuTb<@Di4%hHZPF&nl~^I( zav03$QT9+uG;uo>Oqd?-`Vl~y5($LovYcZ5@D)tUL`=)om=zxFu)_BtJDMv&zS-9K z6Tahc=Ctt1g?y{%7L~e|EkYx37f5hP0$9J#Hso&8g90pgsJsXoAMP7Y$y32{6B`9M z#^t7`ajMoo{|p)XUm+6tEW#t0vTcWMG}iX7t}boP&aO9RCQ?TtsD>dlc1uyQQ zw!%`DrXI9CY(5RKY~gFU-kx5pC4(9*Rj$W{^!QW{90Y(%VH;}$s)$+?te7CTg!Y2h z<*Bj+Aq4yhxD_l=gW3JB0s1BxkVvD6hZT7hxop<{v!I!(^oK$^+X*Ef-L(5AesUH2 zc#kz24wh!U+fI47AoD{eYMre$&P9U?J}pvy;=LD#wX8T2`vtp!3V*UgV8JPscS2{P@3V7-nP@RP#25kDSJ{B zb`9ti^=ZednEN3BFkgggP|MC~HH@B%j3EnQ&Q@joJdQib973zva{x){0=`a)yt z@*%$#K7T1!JbG?)dU_(2Z43_1jV$-{EDlg@96H3^IP~K~eCQH)1HaC3H%7Qa(M!d1 z6WNggK^PdxPMj-ViXPItHoenbx0WC*t?_x(Zu_+8x%t0ti43hrCAXdx%~yi9ZL?~* zjaPyg81*U;S17k6H-;LpUTxkq)4_7Te?8cT38EYYf*07uf~*mUY?xl; z_jyjs*0chl*d1t$k%;Pf5DFv`curAxG*X>aPzUZ#v_Bg<+~_;FAM>u6BPTYt9!%el z5%$7ICw_E-|7hz+Tl~z4t@{@i?%z5wBZXIngz%oUvKbn1#?7O~LBl<f;DiGI`R;oCDnDmouQzIs)!Ae$)|-*AP_ zDs?iV{pEZ$rpFMGfn*|_Mmi-CEdUQMK z2~QBG2jdm;yCF^A*5RkB^km@w>gYl#tj0%~fG-@!lV^XsJyBpr(!4`-5&zK|^w3X& za-f3|Q^dCCRCf^*kh~e5!NC%7RJwz=_{tRGSB;nYU+`=jwCUt2(MCaV!dJ2I)bX2} z*jDp|a9&idLAXIzBAWed3B?(v#~E8wbJ%UXQ3|_uq_iBi3kAn5oCZ_`I4k~(R9?_n zDeu@?@%y_&CDaN&g5hskUXM_A2hlyf5<=~8^1_9)zUMo!eQ=8!f$K{Hb@F%7%V#ea zvvonJXN#B5%AQ(5H?Zv~G_lxznlOqbo2Cb2U6uB5^C_(+>OEJxstRkZ%1Q^@&IS66 z(GVz<;L-y?KbFSMLH$N~7!`h$d-y%Ub&DcA4$u-Fw5gB*+ikP>#|*;*Z$z{Rd=7|o z)0&GOBeI0p3A+HPDy+6nM$mt-tkk^etx<}+hJ6bE8T>bRv>|k4h&hKUj8n+f9tol2 zaQDTtXYYOJ$nxTe(=$ukJ0YO72DQ7c9KH0=;_0Ow?b0P}XX*6fLkhpqb$tZQt@f5| zYXTiOwzeyP3osf4@eYDL2IraQnL-sI{owRu-vi=394L)XaMZpiJSq}I51JKF#m)R= zyWQ`}C)ytHovUR0hBrePCf-vO&>)%^`$N85!Wx{JvBI5EKA8(+qF=R)9o{uKLl7=l z;KNePL?Y?sL7@qz%_sfB#l(_4>o1{eB1 z32~pqxslBkw-AbZgM(f?RB%@|M>K%QI(7C0+sZ`LE_9jN|MM@Ef1${cky~np@z!IZ zKMi6$yju|AyMhQ$i$#K$ZUu0mnsr>&yDhB)_xm?uu|Fw(AG@`dTvxPr{~CcI7W*dh>8C|$6Py?F zpIT6!SAQIjznK;ibEtJV%j2_hiLh%&F=>xw;&H!wM6u%U5h-dd4B_R_Mx%1}!UgH% znKROX6OCiXq=9-}>b5&=&x1$~y6Ut2{fDGORQ3h?g12t`$Z8)Jq$#Pd!Ve6v`k zchyXSkEJC70gmw8p%HNEj|9cwzeT%fAY;YmV9;n6O=C9Zw~PMBF!(g+L;&l67*iNn zBTPNO$ZbRvL60-Epir-4xezd8Sx)zcvG;t^iLG-^L_qx#_UNFG1P7hPSdvwT)Div! z?+v0p^fxGWLgyQ``SIh&_pc1~L?T`J#1_y)gSOr0NwxL4srpJ{`*5vZuN~e_tjPKj zx<rVf_>1p^)&1vj~0iA2hZ9~=J4gq*Eqd1Hk% z&>YwmhndcRYqPje0V939AM&nq0?-I^4+<1iP47h?`cJS~OZ~lSbpUrkD zZ&nli@a;$7(;os${fnXPM$gU1ukIXt(2uT9J$!VWqU$V$)(4wowg)9|K<#I7wRNU4_plA_6oB7r`tM0gX;%K{WV?&4X=p97vATh{OOG?2@GlGbbLN-g z@rjt60C=1|>gum^dA<^6nqxT5Y4ZZFAs{0i63^*y`Bp>bI9>~rsx1c3Qz>xRn4K{X zmnvz2CJCHK54+$u0xGI`pIT4-Z>W4zbZ?m^&|r7~9}TIdIdqZ0L7#4?Ov|{4Mm=7Kg*N|mv*5sq(n9jT)DEfGm;Q5T%H^s z9~eG!etzckq1C0GLZonc`25V$(#-kc%Y}%NK3F|Q;L*066_KOu{At;|Ep4SZOR*Jq z0I{L9niR|v>UHpIupk`dQT~%?YXefe-SZ^cvZD65@eh_~=sIK#d5{*UNiV{syZKU_ zL)OZHjo3ADa<1ldZ?$w1yVUT12p)i&bX_>SSW!*0qT%;WD*6$fOIi3f0I{4L?TrYL z{y{}9O(q~X2KiQ5>cBTcv#GDOf%bdN_1PW8}>CLl2$55*Zt_4%~PB;O1t0^zM7JJw0n1cb(oj zcICkJ(R(+J9ox8f^!kA-N@do$d=jX^+g1~;2SD#If3@qaSj`ZSHB(O7>M=1;7H$W; z5?zjF=g@yQ-~*tJ6gnbQNw9V!BHFKbDE|s)Z}Z*644LX7R6=)-US|`zO5Jhva4rWq zBhD)IgO(866)|TB9j5V|S^5i*XRAw==b50K!DA^({$n`+P=Xp(An3<;oKdp}TqPsR zkqT6|0UHDh5im#+8i*oRY`}~J_qL|10`(=e17%*Zw~6)t5jI@5BG5fz*QkJv#P)|o z{SeyQ`UKm6^FV-X0-5+3aOl1mdKGNT*u1=Wd}HavqxZk@#^;`Sd24mwYtO$lHy~A> zd*s0fPCWD4OO*#6sJ!&rGbiNUrvUNV9dr23D|jHybc_Cw0!ciMjFwtY0ep#K1CBa) zujLV=-JwWq`N97KJe-956|=jkp8Y$>{=r zE>^H~sh?|RhSdFMF4U60yL&-tXN1uDe+67$4<@x|aW@|eeIDFsh+lVJc>3vkuGfzq zoj&}zCr^#-JW_l7v)3;7UbOV0(@P!l(`h^0p@7u1=+9;}0-7@448t#f?I@b+r}Kt^C_qhJ@sn`zzoH=yG2A2f)_IP4Pm&-sU<>-I&3*cga%6s%NXP$Pj$+rdLp zTpO979-S;h>IOt$plVun!I>`UQO5=#-i~DAc}sA6;48pY1=877)`zux^i^$(8aUUOII#lys|WX zR*IjVn7iS_X<84G9%A5R_xM)^k(XuWV{udIQDDY`hlEC0@Yc`NM_Wxyzi%C^T~j?( z4aPmcR<~ELu$o}6kS&-bQki5 zU={H=J5Umgar_%RinnLM;Yt-lsf365+w5WHQDb|i2#UKf!|g{M`u<#>2j&mg zeGnhoYpT5%Q-yLj*Ohi+1tNnJAvWD0Fk3#s8?tSxtG1hnEmEW`eK&&_Aqieq?1BRW zElH^a#7nVL4aJ0W9*Xv9q-#BNO)+`s=)iO6f+b*{r-jXw*5}C4szK{{;+Lo%e@=eN z&sJ$Y4^=qvP5lgURtQw$dQmSdp$@+W-ulN0_x9O)PaV9P0JV^$KXB)AURZ3Ta}%{% z*Fq}pxmR_eky~)xguPSOOI!csT?dU=OrnVjqySMm=ezCBNfsc=GL;BMm8Jox2 zD)9Uc9=l^Q<+1cI@Dv#u8z|Ri<@f1@col2gt>|7W7H8>R)l>t!E$Wi(CF~jOsSJbD zKqJOHJSq^1t1xFZVx)CTgXGbHZ8V4k@aD<{iM29>ZGx2;O1FmvS8)3A#-L{^sK!OB ztoC%t{f3$ve+!^LR(a*6tj+k_GO98onuFdrKpN)f+ z7TdFGa&!z_AH7B-?AZ|fy=W7M0tlHc8+duw@i{&Sh4%@RrkmSXSD`cjui8^;H2O#K zlJsCEqRq@tOxL?BUux?G-~*G8oHlP8B9@~UkGp8u>`A<}K0iVuoH~!@l;- z0V>*>m*G=dPi%-sa|pUpZLHhvetFN=;4#ye-s(}m$wwu=6Qd!yoCxzyN)td;%x7~- z1h?%Rn2FR)0}gX!w=^)$+6)GAB11Eu=WIhi6wZb z$`}$9e!(kDj#U#K-Eqws%TQ%(BSyLqgEhTS&R4J*Rl-yWneQ8Px!^D5g6}Ua`M3Pw zHy~HTZv~_J@M#W zR}z;WdiqHHiOZLts2_RyAz6F-rRxy%)co3|?XI#b=|6Pe23iKd!Ww%TEDIt4o6?G_ zep3vIvJ8Ab>PGh9aIJ&H$Hz`%FCU-5m(U&G`>FO@|0(v<^ufFBx3@r5X{LEEJ{VTT zOw|@H3cFiZA3(};lLoGFQz4QaE_ddad7li(9#f9=!mMB`wkQg#0Q2cVL3&|{(CcuJx zohJbl(7t*AFoO5`G`g4g#dAs*I@4$!h5G~z)0I;wk#u>0=bC23!fvKZF%&=S4h_oP zkTWvD?QclITQ)WRC&qL{F?JOF(>WkXeZ7$Cb)c>StyqC)M(2k35DD zJ27?rVc_t@&;yswonaH>#AnKnO+6esb0+lg)MMq(B-EbV-95K78QK~6m{qiyNy|!_ zMJX~Ww1C={5}HZUEpueFAgXn^@Clk5`zaOqaq#@N-+cyr{uTb^`7Cl53)C5?Y(!lv zVb{IL=fOZ`f}{|;49*aEAgmgn?cvK%WregVH0VIe54;SpVgiKckaPbz)kC`m5Gw@r z(06GSkm2v4&>%6!?`TlKCtDnY?}_1y7;sCcQ` zedejxUV7kxmtGU9_gp@G*nBEM6%WIs1*!6G$ByD{>rpkGZS%>rA9#=`Pc)tHXgx@4 zn@KMe73dx_7fppPLNERfD}Bei{I^xSMc#yv`>TV);}u*kQ|9cLi$N9bn?f%+CP6O9 z&yn1w}j+i^Q_AyJ3`01^h-Y#ddKI1NoW4d;z5W`UwLmlSLZtqVRT zxbU-r@DtELv^`(1EJRtK=>TAGoWm$J!J*HUQ{ex0`5Gn-RIplM2*Sj2!eCNYBT*OF z11XaM;fBFQL2HWLX<6~O&IJD9t&At2{Efkp+p=k;Q7MPv5n`yq5amtm4)3|$#gfzt z61d&)=|+ItNx--J3NeSku>1~f6L-1Uv3{a@dvdu$Tw7QI(c3_FZf$8`U}#^hEBbNJXK`}f*(iEiU$XXPBKad7YenJew+F$+Tehn*X5z74%OH-ap za#4lLcIJ|R*dnQlD%Z>?ZEi-DXyhLNDr|dfnG{yE=w$_$-H<_@=TIqR8#aL85kz%( z$DFJL1*TFBg-7KG`WnZjt~GM zcq`XyPsx9c2Tv}+&%&vEZWdDtA^_`zF$hWkJV`V&cr?R)f!)1&JEWKIT#$1h%SXy! z0pF-D+g{Yq>tgvJFs~`1r)knC7~nV?bd|{Fk6uJ`i<=imqS`t#B!$eZ9lEU zjXe#40MzyH{S6O|H&MG~rU@eUTQ3HEu;)T=H?}`}_p{Gl zy7Q?UpL_E0hab4NyM7M3VDl>{PaZgHD4~t*?Sm(NdV~AvliW}5q=#dLPwjO&?X6cVNt^m9n4pd_b^(N7MWRe3P5!(U5sJf9n*ze2C#q z6p;bcIZ?O(knKB$_Zw_iWjm6jareK_vl@ro_jsBpNMw^vqCa5+uRaWq@aF zuo>y@%TdVdfR#|=p%Y|9=79g$@4E3YzB%xi@D0RlNxZwXu}>Vz{siL~qQuLgH$u-g zmJUp8Z_hL~j~v`stB)*mwOR@Evrj$o%Js9=Lob{}W z7cKAXD}$xwjUx?1o|pH!ivTYe7(wvtTOT!DNnizV04?Zqd$R>k)^EW04?JkGFn19= zNWZtD5Y7hH&_3`(Zc&fR9Y_p)fz;+|5+;p)JpphV*#kZZrB`3n$ zI{Zrp@?u&!QQ~uP6o~RZ1xzchmBwh;NtQK7H(yC6htaizZdW+0;^_jfJLZ76(1h|% zJd<`H8_p$@)6kqC%n7hr4zx`*ei5jQaKiJF5y5=}d8v%aI~9dSB&NZ5L{puE#iA_5 z_fuRBDq&EVP(`Z;9UpW7RCtMhL>J)iuuryxS;?-SIMV2S_}a~z_dLM-#3Ppuj}2a3 z@2Gxs^+#9v2W~uhwOYOUwi7Z4>77+Ma1GJgD`m)&R1dgQGhihp+#D9)Pe z$ly&x44@|(uVchc{A|G&(Zfkl#(~G=FE&tXjTYwpBA@+Dgp%gH{&aJAQQ|B@#35%i z5k22S%aRl;B^v)Y#}qSQ`d8OymiZXWon9)FtF(#p5skd^bG+-x$TA! z3R%bnXgB2(#&AFk^;Jy6{9Vgqn2TIN?SEfm;{H3%Y+W7cU0WNU=?s@j=Xcf*tW>gY zv9So0lOyaK9_X7%UQMnP7lpn)VX?T9M5k_wQQJ4^NLz#b=Cj6IjP_fQRNoTt^Z_yr z%6j&s2zt~$Nu~tg*PKfx_7)CQF!;H^ZD(eGU{Rpre34r8t5uI%plq~ zpC;|LG!ajWt8gjba7`QJNK9%JT{k|*eRYq9|aXp*Zp?_Bh_}d zY4gR$4YUKngJWkFSpK;LCw7G~O}z zA`M{)dol8Nvvr5?uzj8-tKw`Vl8#1`=)z+x3m2i7F%6qe$(Z$F8ZRM}W%KR(Or#M& zwcTm-?k=Ot{$}IQP{-n8wg2eS)vK!;`###w?caa#j_LXNvlpf&$A*W`oZi_^;Acu} zwB(nGd(Mxyf4a^0Z`^TV8{jI(DTK7`3wLbvYti-I=q+uVS{pEg?l5!cKZ)mzJnC1ZTI>;0rPxHpvSbX=emsU(l!z&K#_S8w5!~Hmr>|fY0>0w(8es~a zFw_ZB^ZgAoTmv!xyK8G}Q<92hCWku+nN1Mr9L9n` zRNA5TEdaU6WInBh@!SkHgZ>FTZwi}%q*gHnUayDIXMHpDrO;?DzGXf3nDy4x zk$37ZcWdH{>qqZ74;c@77Olyqe>0o+5>Ll}GR-L5{Fp5X>=AS$O?YAl>q657xj1Xt z{sJsFcm$~XS+X>OYmGtzCG)9%;s1DCpa6Pq!LtJ}D} z00hbkT5Vkx(r*}q3$O_xQ1YrZhWXaEiryRKTS({+;2@wKB(#3i6x5nsjoSz7xQL7H zKnz~SjkKW#4wo$&e~zU!P2IHJJo5^Xe84mIk>m0j>ALFZp<^!`N;SG3?k@tafN)(L zfhrDUKa%@^hq1Xrp);Q!(i|7YDr*4jB~|>7BqCbjr($OLU zDDO+Gi-&a)c#fh8zD5wkNo_o26t!vc`M1E}S@87*FeD5xp1eyzul|M5R~skyjZNQo z<@x8YKU(c8R-Ux5t5P5C-S8EEadawMWWyWF^hd}(;FIvoJQ}!1W^25HS~2du~1f zd8^khpFeW?^gHieI(O{Ua!+ymt=TU{4P*aAIl;gA>{FkAZS&)MxQ{k}w#g5jx_*kk zaq3&AK0fv1Q$If?-Lv`LsqruIpZ`4nrSVhmZQi3guRP-15-Di?yJ;cKoS$qW_{|7} zeNTkfu#$-mAMgaUV9*w($6dz#zE#L?cMj09C7Qzq5)+ALj=-V{Rr3_{Sq@1PqafR4 zQUYUDqy^)w)cf=tJ)Px{_}q)n+}ysXrM~p~>+gQ>^!@kT^?0MqmBklt zUQB&(*Igf^F5Y}mEUN==&5z&8FH(DOSDDn$68+b{t@zgA`v~-e@D3aSA*a~bI1x|$ zBDS<%Z54!pkEz0iv^54?W9g@UYhncTm%~xCoey730nLLOP6EK~5|}4oC#H zo(BgY#BW4Ix}=6NlML)mv|wN!tn#XG)l`>_FnFLK62K+WRIC>0r7DgHrjX#28vbFd zco}zcG6_i@Msa^0vKD~ixhBwhoaPRdlb%(0o0mt(62@T(no@%jJ=(>3799phvh36y zC`JIz2fo}8d8ZoI&@F(*vsr;sX*DN89!+p|0R5nVCCFqv*&LX8J^srr^SPU_UnGjxRd+fD{qhQAGo{o*s;#L2lkJ@{gn^2jaRr01hZB{f+a=|w%imPlkc9IUa9RP zdY66P{~WoiptfXhDUnf#C!Q=S8pZeua?Y@lrsHY8Whrc{g29fM?~bU6O$JV{{4GDc zGeLn6!%W{oQRm>h!yB@%VP8Da%!!rTw77BzFC^WZ;?QSeUP$rqGz3uFz|sU>wwF^z zY7W0sm}s$e@|0nuuyCmjLasw|1^`EaTvb@JC-4O^4kPcl4B|^*2IF3rX8(sjb|N(p zla0e1U)GIb>?(|1q?f;jl%56HiHA8BW}8|UCzUK78=(MpK?BR;1}(fq9K7^GArd>f zn!}4zVAlb2n`+7}9@*;nm&`01x_UVjyAk~#NtkKTPD)WNM?ct!p~$E)t6kGijRd_jKY!kQMp z6L^?!XaIBE#&6o-xaKsKRN5uwNPrWtlQ{A1GX{ z(l;nO=%kSuF)Iqvq#y(;emcd{rw#^s!awxCbJh{crQ)xNmgQGC_(AK5&Boa;zxMb8&%brgXlMB=FMcrCTfOs+3m5ih5&n~z z(<>|2E}xGkj%{w9T#q;*^G2DwQT=(9zoGnG;fopWM&{=k{`v9;)%{B5d}7@+*AwS6 z%KqvH<>w9Y$TSsddyI$n=#g6cmeX`ME%OQN3Ln$2;1$)^ZC<6B1~=@jkBc zIJYmwz52EH-den`_pZn9m^q(1XdFLo988^`x#RJ>dhc6&>%FhN>T)k{a=&O-tZI7@ zFMDDfeX#ex+Xp#>p1@~xAiy!df{+tLz$V@0ZYxd>SWRGJY{o)ijzZM!qMTpO`Oz=f zX^`WTv0obbKABR{YsgUvW+=)(Yg zjj%ZP_hQl-IBaAt>?@UIs8b+i3zkAogJIL6e4ceNf}ARf>*c zQI$o6Iwb4pD4^pH@ey5vOrIFD%)DuiYR&}f<3stFsLlCVn5Z44(VYNx4*{%3|G+XS z!fCCBPBjLH%H@HsdM-Cwn&r5u?1Cpr`{JQh%UTkD1UxR^Rmz4$F_bNJNqR4U9WBS> zk7ZguhZ#ik6?qqw-}JlHiDl0!fHpH_E8zyZ9vO7Fdx&v#;#Cr)E2tX^lWh#pfFj6ouK zJ8C3M)y5tjc;%2H<25cdoej-2{e3wF8`g7;JOYPN>x^<-PgqPBi;2)rYg|o)U~f%O zbGu`UUpxu_=cfQnnHV|O_Sd&Pl4#=DdcD5P_2B>h;4)s_2~q`Z6+ihnU~M3)7wNDMj;C0WS~PVwLm|XtvClA3*8+k%1rZG|P>l>}j zc6CklE?l~_uXFX>xuwFz&F$^=vs+vS_=QjrKV5I<#j}}ED0B8=XKzgb+k&;XJZFx; zk0iIaguTyRsk3|CR+0Oycx>=BY1vvvKnsAkp3$B^@f`q;b9c%<^Y&k$7wsMpEk2@3 z`=QsxId6N}f5|xmU3O$;#P*Kb{W!plGF~mxxOJSp7sGq?n9{2PFKKw^KvMcqD)pD0 zjjb%n&`YdeXGu|jDP~qH56KRCPf05hu_8GM2aaJm787FZojB@dEE$6kiKxS4F<-~| zpBOKdKO4I@ba!JypP5lYZoO_z#}6EcjBlLIHX1{z#d3FdVc+`7Js&OpXps+1kDp%L zch5ch7Eh0Za!>3$eoKh=EzCb*_L@C`-B-6n^G`X=UAv>3*IGhoKUS9fF;~4?;@(mL zV9g~QMl@ON*?-)ruR}N zQ%a|YjBq-R25LGzmlIM;17PEaW{7EGM~F|3^nkMk{JBgsk!}Okk7?jn2GQR-+~^*c zq>+qg9zQh0aa)t({*{&a&_0p-MC9-QLgN3&*qcX5c3)+J@!pHK#oM=dv1aTMxkP3} zM&zEAnNhh_F14#lwP?4blB%@2Y=akJ3u9wryDg?M#?Xebabsb5k!-+VjIll4(9naC zZ4T$mnZud!{4uQEG;|N}C-dFki-?RYm7%Mw%&e*`$?x~>?=Ii{?sqQ>&Fxk(beasw z9Hdm9iCuMy zQ9Oh=p^oC;>7@)FQ`$(I)lO2jxYH<)AVYW>AD&@$k8dZJX=?TaXDxHDP(LB_8Nb%@ zG`ZZ)JfjKeG^+EdFc(^ojw(7B?_Uob*?#aD?Op8PVd-f!k6obVf#!sUs6J_6TRCkt zrC#v&!2H+&JM;_?!XND|kMp;$eCX1LKKjwy?ak@UT<-P*@4x>3pZclWy%TeDw;w%x z`0#!2yKQAMw{M<$_l;8r2e+Sl+tY8`-Mw)80)-TaeUMqxr~YU5b^o`HeLa*4>2`4D z%%r3883%hb@7<_K$T$YbjTB)ub@*W_jPWaaH!S|p$01BJk`Vu^SBQD92M?)|93R2#Mzp)K=3axnjBu@ z8oNuRUOT~@7vVrt=oHg1o0u^3oLS81*8GI&?7cJ#R$tzRi6DhA5}bs6SFz&!r|KC&f#N-8rxMNS*1Ca zhC&TD4xy7pN$M$lKSn*nTi|xD-G7x&jP2~i9t!ej_o}yUm9{5u+}LQ`Y%eTKKmO|W zH@E-WwqV`lt|lJJ?`_|F{PCOHd-;bFR~4iC$i0Xz$GgFA9u1~_2gd>pedu=uaP$oA zkmyYUE}`&1Ng}cTjs@B%h#a{+_QoT>N7V~UEa^k^8fgTb{q~?6yo_EaR?HZA(Z#YN z2P9A_<4H!Q2dG~K4IA2@>?^#MdCJLbZxT$NtvtPbut?3cVTD`94icC-6fS1GB2QZ( zhA*mHNp$*32{9)^P(x6$`3ND!#$5vmOLVQk!}9Y@FgM!?(JSlH{b(?B#>Exc+m%k= z3W6NOcjEm_?oayL-hT{taQ)HCmmj`%^ZfZ6m%6UoPCmD?^7J{wdE3Im?fqp%e^;;f z_IW{mX_>orDS6IW*3mVc*O#4h$xGMNwFlNlayy1_jU4+(dVdsj*jLdVWS8Oi2ST)l zlv~!Yi(Xg1BB0a=|FCyQuao`d;8;uo)Xspce`BTEuByU3ZPoNh18=*}T;b18fWi9V~-)C_LA z_|OGXu1>y;Tdg@+?EX#Id8qrvG5Cc43U31X6oG(an2{^uC0-vJtLAchs$?meh%1xE zT6YzHVGPra7WUHtNsqG5D7*z=Oc`vxd=Q@~$d5e! z9*%qA;rCxTJbdqcu@7Io_`%(&12J#J*H>!ay2TYA=UO1<@-H2{dhpEy;iWux>+y$U z2l;rd7SA8V9)A3mqCB&JjCByi`rSByn8Q03x!wpL7=6iXP&o>34SHjPVAf!AZ~b9K zdbdzpBb-{D37^|$_0vp?CXp?VW(_E=4u zvqZ8mJ4B zJF8o#cTDFoxL+dZJqAc#-674tlNh#A?`JyJdzSThE>{Cf5+XFZkN1yRN*Opr4uev; ztY@PydxA%DXd9l*8>J+K6@eaj7?*)YNJ4S7lH*{(Cn`9d`p8B?1WVk(3szH2YEPSd*zQ>TJXp6#6BG!H)_O{-}JwNdi=TBdI_q*?X??XE~_y5@A`}^;B z)Am!(KmX*OFMaGIKv=iWZS&vU=DxYdoqq3+ZSP5*C+%(j*n3aQn`dA8z~&uZx4+?M zc;Tb#&K&OG0~r8&Ptlw1vuC>Vc;$pA(~D;}9=u0t<#z|FbdfR0DC7Hnnrw)<>VN54 zGtWFQkI1jXh*+Z9kLg4ByzwKPxgdbU2>ChKfMOji^f;lGaMmS|Yi-C27zS`+?0tt~ zfFO7o+ryS~{63;uDIQObBfVNSckq&Ltl-0aEUzUX;3hKxehWSeB*nJ-9t}Htk1oU#1Bm~s>d_D=$3Byvs=0XoE{5P?`Ks+XWmwZq6PIj$Vlx{h7~f{!T5Kc2+v!HeOPpF^&p8yJr;J*(^sRyFnI z7fmsN*M#Ds}?H`Sh=PC=Fq$~yg=av&l% z_)HliGe4Lh)0H7(W*G#0luVN-AcGV5Btc3G-isxHi=io?eb`x`_VN7q_;|%}$2lv+ zI4%yOhPcgXI+yu60LFFC@+uxn#7Ti~G8Fw5w2XzXce~4-&U<)kB|Dwr%d2letT)9k z874Yp5>zxW<=NdrF%Kz9``jwVEOUB>Mfksn{Vnc)k@dVz((|4)>g(%#xmM$gBE|v( zzE#5Vrqsyu(uM77=g~V~q>X#zf+L~ld1^NGTSM&eqU%UF#ln2OFFqJ8IV0U2R58E6 zaVeFX!HhR-&n%R|Mr(7GaXw#W-Ji8aqj3gK*R0dx3J*eT4a@)NWLi}^NGhMp=y8;L z5|?~#b2lx7n>&KqoSntg_Q&({>uV-y4Zi9_njXD?&2TP7HMD|VaQ}o|T2!qS!7-ih zr7V4BWknbB*w_F~^~O46jAOA)9d2x>AUJqt_L*n_gZF&&dhsx1?bOT1n-14`Tm<&s z8Gd*~4#1z2DYVdEIPI!%Dpim;7+qS0FoM4qra;)nsHTdM4~TCmXvO-#rLxuEZnfrT zW0}=Jgxp5!P53*8^vj8?=caf?vcGWeo0 z->P#C4YuJjlyRYP7jit9125%4Sn6QfYG{N!Fn$XuL5gN4&qax>Uh zz49JpQl|Jhnvqa`lid_pfx~d{KkV=J#ulYsP z55_7zE9B$%9dxqgy>h2B8E2wELmv&QGu|LgDk59zCrog>?3G3TSLrshj0#0dB*etb z8S$4f?vCZzaNozAI{VkW!wgW>gswAL^n|e~H#^_pD=RB_d5b)klsRrSfk)D?+x{f< z?cuHA)X~nB(@DWk#}`jP9|Yn)z#SAlrG{AF9()~mInAq&>5@urLETftk&X6DMXe`TPuo_h-y>8f~Gwn8VN=MyETt|3A#? z;s5&?E4~ApIg;HdARL7Qcv7~+aB(@Q*Eth68<~e)rnOocmyN^r&ndFBZnzKWLEN*2 zOQM1i{?(Ktl_m+@1%cRTl#ze5b@bC=HXA{+#1}hnPm&<(7i~i{ly9(muqE4;;lazN zJKnFPTvg_r%mlD8EI(;X1d^YQ(3ro0L>qCps*KyW6I<-1SLZX+#q8$RcrqQJ2IS)<)5fla5z-jR8;Qm0y4q)AhKRoBeL9mng?A!e`pPNlTiRFUO zPYoUs^tDtg%jXx~ZIRb_#W6)gjp8fI5dMnk(WYbhSP9JL*fy*SjQCKxeM9>gi4UV*kwH$;nhc4OUDycax|Q+_)@a-bIT8Gg%$V|srIf}T zC7Rv+XEwMDaje$4l){w|UpW!gD#SDy^_0_nsm$Tj1X+}HC6&hlAraFenh(7}7?B2f z%%$Q~$meUdrw4e#!I^e^F@L%qD0e z>2ZHpVYsy*j>s>C)!--BJm%28InSARHdkO``!Ynf`B6tObWW z`h*;db{x)8joMX4+ZAi$tGJR8(-1#6${JX&NYE0fHZ35BnG>{iJV# zZ5pD!;W-Nt7EXdolb88`*25%v`J{5g$OK8BQ)TZ-FoETQhRuT&Wf985@+u@K#kmYL z9cW2x<_eZ?_X^_>Zv!ELU7*)Y?9@~(xcp@KaxYSn>kq|7{hx*U_U*6<}npZ zhDFl`8$a|AR3^iAd>R~BLo*;lt6{q)xFWbFi@8<^y@m0|*)@3uA;}hhgFWy9(vx?r znF546Fb{cf`NBh4zI@}PPzez^F-K2Y)v;-0B7X}1s`k~x7wAOhEjKYGy0NLSRGRXV z$*Gw}!*wfDm4Rb9b{upi*oh3hC`D%StdwT4f2atfyfcdOkwLNC6ct+AO~GvnV)(Nj z)}^~b>h=pSywEf)>jlb67P+*F!DEF>3;zM~JYW=LB|DCVmqH%3L8Dy0SLCpwqk2Lq z{-~iXIC?_uL4Dx)v}{Mw<1g7KgN`uWM2|XSlNs z%k-d_nshQCPmj5pTtltpHa5!TxLR(#Q_z>o)f}I0RG(!Q@&!a5Tk2<`Q7`p>#Qqp; z)`%6h6+?Eu-W^Lf##dMQYNNrU%){US->g)0el)-iPKQnmSAr~nc?vqDe(60BH-)?C z(~t)z(9cVw3Z1?UrwfQ}?zhp{VSVrrOd*T4zE4;-014z|#v$&-yj7*mz5$nV5M^yw zFcto*DqKR#^xvCQAlJ`pF93!F>I6U{gA!xD-QGc#rhGmHP!xZmNs2p__d5>iggS{tsdy8b&7!DFr1ttu-<6b@;Z-g4{Zj zQPJCY65yJp+(z6l7OASFj`%-dw^o!(t{}SQAXw;Pz*4P<7b{N(A?gZG^f4 zeSNjcS?;^mP);eEx_g`UPuv#Nm3Dh!cJ^aIz4{n(MN|4R2K2Gw5f$c6suSQTX^;9p z#{N^^Q*~Jk#}shb_LA|KRdm&M(!xV0+p1U|@4g0}b*%Nkk%sRO0PM$bW~lUG_ZZsW4Za8mU&x>;49dVG=mXz9z!3f)OH0m;bA<(@_>3pmnk9XXq2_gy{Nv+_4DH7u+`+&!OLl1>~4_@ieQ171a)*HVGb`3+liFkQ`!kVjS z_J3$J#>-)%!MPY)MjmTLFI5O1JZD6y~^}jXRDHzmd2;1TGFY#^;7ui37JeH(Lx{1 z-|##P7P5gs`bag3A)uCU&EM~ilNXv%~lWr=Wm(|M)i%2{Xd8teuwj)@#f()EY zL~bAmvy`2hi5+lDlsaB&90CfQUBL@O@^uROl30NPJcOSuIq^bRp5{AY9`exYLrS2y z*$3(m-l&?fm#W;@PBUJO#j5e<&X{Dc z1tkJN@vj*SRUIJLMaaaJz>_2eN!(=Y3VdNX1pE2FDg0_tBz(9`96)T!7uBhg3Apx74`*?DG@eH=U z8S7?@f8ms4m61jbyMFHI|fn#%G?PeMr|&*Y|YBxfB}YZp&3N`UoMge*sz!j>3?8*l1u`t?A7b<@fA&Pzin~j=_HNv-Vp5!+MC%YM zMcgj50uG9(#I)bSWt*LS55<9AW)}ak#_VHIk}>2jV!Q$<6n5a?y#5EfZM4se*h%-p zj!M023!QdWIkDmE`>WU5%7(tWs&6RmYtm%$@WNIV`91o9NAZER0*97_V?(P47wSk5 zV*&V7bP6PhaR-70U@N+1biaoF=lIDT;j@3HVn~EnHDR$`=<8?^`|lTkxAOL6zTyaOvjlxcv7%1a zA8cCer%ts+F@=je{vQmOdMwip8elXVYS?y1r!RqB9-bO*+lHU(RC* zV3)OMn4!&uM@eMlv)*{l!+0IiS$DC3scq7PI`4B}`$$-`V*7%j2``}3EL+ZI8Z-wd zuuDKw^o;9H`CQNdQyP*Ib3{g|t3jxI6@j|d+JRK1{JErL0;b@!HDrQ(YP@f?M5@jQ*3GU{y3_0pNfe%RV^ z_m;OCt-bB-y;dXcoGf(`BnNVIbNdGtU0Y^ib$Ku`yg)#eM8gaW#$xw*k-0Do*$gAX zARyq67lwEFYYD9a(UW8-X@w*R1ENG~^UxTtT*Pg~_I6vBdv&D{q&lS zl~r_A?`Brayl`2goeN|v?8Js{j*O+xQk{#Mw0EWlk%t?c8-7)9yu!70XHNk(4r~hL zcD2l>N)oXv7olKBvPDRAbGq{t*dBaa*-WAlglkzuhO6jY>f^bz?oP1tazO`J#qP>+)77!dq?1}cd;OGYNfJK8rmU|bY!NX%+ zD!yT`v-u6pqrowC=V`fhF{M;F?2};WQUzPN5?bm->^(4d^^;&F0QRoiW{JUEWPKhIWuaq6D^_3jjYnpbxh8@V2)Sn$YXFoX1o4gf!3C4;OuWJZF{ev(Py z$do=4D4fK=E!o4u0wzPEYen5MDoy(yYw(THMI?L_vEZizS@nFuwr|;SKPh6_RyKUs zIWU`ne;e>eDGc3Arpsd4R@8$KxVoLB?ZAY1f!hHY%P|2(t;X|e+_8XWN&L4ViBU^( zshI_UqKidQ%}s$0Z;2Nz9gr~GlYY57gE{D>s&E$nk(Zw-v{HO#y!JHSfffJvU~U-d zC!y$vHJQ!>UY1XxP#So3()>>WPmg%KtG(=rg=wQ(Oe@=ylil9dR@cHpgzntNM%WEU zO2rY-hY)p!iqP2rLGPy#NTVnf1+NKObc1&L4{=UMiN?QAWC9^mgg~ICKB;@FFdEdw zTv)XM8G~C;`teY!(uvs!eRhdXOx3sy5BqzkS9XOg)UuIFmGp%8gm0*|x98DhfHb#1 z{$8Y^o8*i#^#)*Mkkr0pLn2K4R^*HZJ$LF%Mt=HSuXeJNfNjKL>HStKZI_Hvt(M-| z+e;^NUanY7FK=(h(of5H}4{=bb2$+ON9lgbgzg0wfq1EQ4E#kKQt}*UGxjaS*$t$GMb%PsQHuAl|rsJvEWZ* zXH9O}Ul8{~eK~sI!6L1G9H&os-hS8)S$-XDqmC{Pb*iZ}tFY)b%o^|Rnd^;z>w%L8 zAZ%ZffdZ$oPDxZce0p4{dmNEz-=;g)x!Hut!cveZbB0gDKwzpP<(9Ap@Vh`xp@QYz zI*kcM>@JY3E91*Kp|rC_x-3>EVIH#5_H9TTmooE7WIyGn5ycJZWr(PvwC!U}q?<{d z6xyA8(5pGQiItV2DeiLd*8Kc>v%Y*jmNR$bIF#l1u9=fMSN5rweN?lt^Erx3baUvS z`k`qMeWb-jk7Jy(#HGIC(VjlnK&dZqW?8mWF8p;Q%d@lKQ`)lC1we1< zDITjLmT@lQ=rhP200RxAh*)`lxr#BqccT-0f{+2XS$zib=eqn#QndOuMg4LW6F9UJ z=@NRrMXzvi>Fk9WU7xbW%I2BE(uK;IGnETV1+gBRJy^w#?$Ijcj*}a?O%>L+V~fEe zIu9W0(c&fY(sWEicF@r&v9xDkfWL-SH2~%LIB3BOy0c)ovIx;1M7pwPCntqMl7rT^ z+Tg-B`$m~}KxzU#$}Zr_L4G;K;kdu0sy3*jUfI*#x9fS=3o#GtzPo!k#%H%z1$8Q~ z{|*Z0;w1Pz)!JJ%a?USXaL#hn;~QAof5is*3@8XT6T+8GA@rj2+n3D2^q-2RKKm1GNhp)qy zY-G~W#>`%?jlTr4NQbC z0@e%JUGWLS1Og)Ro#NRk=rJHu>U2I4m@8>#GPA<8`vjW z+YbmVelgXUcpRihL;5^HtOOg2TZOLs9p=x-nrN=$zhj$g)caeCt@iSTa&~Mo<4Wmt z(s0US87P1zGh<~jQJ)nOERPz}Y*8)JPI*w;1I7B1Ln zQyzN=OG!-WJ~YEb5lK$2?^{TjBznG+=xv_B6N-!L>vPTWUUqED%7}PIdcJsTbv#ti z20&6gD5}`g!4e{;OhM}iWyHf$ib9$2Q9=^lz1AA`4k(-UQLQdfUV`jx*y6-OYLt}7 zOYW6mUVJizY_^Eq%UL1J#u+o8OINTUmk$$0_N1fi85r=dZk6p~_-{49o0#llv#qtCmv$5bdLX}I#lF`{*(}yRiQ&7?rv>^@g%Y$6l z2WI^@@V2z=xQhzwus1ooJl)=C7OlKEK3-E>ZSJ);_o*iLQvUTkzua!-RW;viFN?dY z%&GK!3UV+~RU4jLKLhG7MP%g?u(FW?0ai7vA%JZRF3_FHA2lzYhj+pXnRjBo$MN4` zVrObK9v7exqm-_ocrL3@t5Toht-@oEJ%-}_F-im=^DFnkDYnD%pQ>TV4k<>ldIzilnLXg z55`?kU(4et4?5$cv^^X|zd9JQkmxEQ6C^;IN~gi&4?nZhK#=}dFr7~dU>-qp585DH zVa&wxIdK%>uVl>JpD4^(EmddAZOKFsp9|&bA zCV{;cytuZFWN>eGyaP6Cx1LM$g}FfcHZ@K2^#Y%%)~SbV#lK=fV`)IEh`NveA8Ldw zG}tOY3YU7>(rUig%+>ezCrxR0wV2!8%@tSUnYFHeY}F~bo6+b)j6RA!^#(f)vJ+4T z0P>NuWn6+r{{k`y3^qm0M{-oC66Qzj2!G?Zom8sHi-Ks5r84s+Zh5>k0d8PumOSSv z$PUkm;(eC)qLP5PsTy$klyMcqX$?Nx^yZ<>a7h)zZ$qryOvRxCj0Jm8w$&04&BKx# z)4hp-!&K@r#O-_?lK9dkSBAncpYWSXazBT#)Wp;^W*_=-=O57F%OZy%jd^sKr`>9N zwN!FrDOq+GS61Aqg@uHRh%>Az8UKJj5P6Lf<7jLos*>Q2@qC0kM3v(k4dqxi_s5{( z%=&2|3klEp(8>CKdQW$LCj?^)EHw~sc+d*aY(`B@%#(LKV;XAs&J!CUUp;jphar9! zQV{%{?mkbftaLlghmGkcm?6B3Ep=Ak8%OBEpQA(jIx>>!zOO~icT3^}ZL4Ds`i7TCAW^I}cGujb6UD;-{sVm|v*nYC+)d&CK}VhWj9e&-$}> z+>GdUFvrpNs&pHoV&DyWM{2a`+y z%Gt3Y4P;U18QrZxb6UNB=GuLsTuH@ zi3R{Gg7hpR$wri7%JUVb3i|z#?rDBw?!<|lTh*&r{MqhybE!g5s8n*ht(KYtr()=J z$)b*9c|)dO-YGi$ob7RemyPI2FeN+X&6;Dg9i^Zov?N*K%ZnI z{Xuw~ysH&C+ZKp6V~(LSDCyxODw^GA5?Gw@#5F0q8Y)n1Fj7!9EG6K-4RIIkP+k66 z*2h9yLENd}l!DsS18Fvgf^iPC6>vVpgeCkYn!6!1uN0wq84I#l=^xa%ACw5pRIgxVn;oOTnD|&{4I1fG4RIAYRa5*Fm`DASuHR%jC$wu zySQ}e1$k}ov|TOmaccD5ek3wp810#{AyF zLi((KaNwU!FNo5q<$T33B#Kc~D2;|GN?O<<^uM48Jye4kRzQ7pH}XP#_e9Q!iB8=$ zWQ{nYk7GM%3S^WNS|IKOmgh~wXz)wyVhcDI?MQ4^Dcnmnfp4M<2Yi8Apk9h9f{(1N zY!rK7@xL)~`E9Yo?F$Tt?%Yme-SNzN0{IK;aW0>0$a&gd>3@9;S7m zhZ0yET2q)fgqZmNdEwxtKR6qpH&QqKg&k=ACDJ?H>8ff%t=P0CG3>Afn$P=rVFWRzKw81n7HsM7P$v;%E7`}U4r2Sg@$P=Bv(l(oQt0~m$y$7- z+1~H%^MAL`?RRFH&6&=ATs^sfxHppYpj3igK@vEUz+<@{4vI`>4oPqH1|MXiyBG8^bk|3O+7tzN=rlq#_9ltb%9p#dNL6RWpv3 zn7(o2#@kRSJuW#)Sj^bmjsH!N3yv<2je}@Eo>%1Ts_Hq8Cndnl@Dl`cVHH#;2?pGv za0MuODs?S-qEyM)NjI+OV$=ssm1MHy*E9*h@rQ| z?#jl>*483ARFjLKW&BGHnLP5K7Kl&@vW_9{M8I#f0p$*lJ@860#V-;LoB^^lO8_qh z`#`ZyRDhOap&9>eFjNrmt9^`5u0ST|(W+Vb8uP4-A@HRn3<4y+#L0X+#fMYnryquk zwtE>x%AGc(?6L(~fTzlnxPAO8evsd#zW3jw^A=71vHK(%D15i8D_lH`84$jU#aE2D zJv)`&?~PF(mvu2ma0n`w=w2Ni!QH$Fokxh&m$@4D*vOm7c33jqHz25wvk9suuEdy4 zD5Z&+CFH$j$f|Hy*s&vV5M9myA-5Xn!!CI{mU|ZIjV)%!WUs=P<*#=-OYQc1IsIf| z!QsNmakSW=&;M(_Y=O_MUK7*<6YSLueLV1l8O<>L`Ya}5_2g3dflw$|eGHSjksmD$I=EBCBmD_aZ%K9*KpQ}a!YhiJc3?nP#vG%c6TNV_C z0d(?-EpV8NL{f%mZH~)8Yq(Tt@YM_>4ty1Eq}6&CmslH{03ClheND$en(_q?ZONy? z5ZN-cu)%G{QhGDHtpom>fCp+`PQ@*h=&AF?_0t)lbU06%UJB#={w*qR0SuiQV=xob z@NDc-uQ|nWiPGtW8tdlH{+-yAk3wh;OvZ zpdZ~vKlN=c3TFK@XqW)8RC~TMxLV999U;TVF6iL$ex(6n0&0dQev~#^#a>xh(4efl zJU`1#$9(QJpZk=}ZOosW=U<)w<~$Fgsy078J+Ik5RB$E>!f0~Dq$(r$i`~>gqJ-09 z&Z@5v2X7q?jTBdPFd9Mrn{cktgCt)yYyJfJDf4|M7v8>oyOuJ!+k|bsnanKAUs*F& z-iLp_gCbrsXVC71{`T%o_~mSNUBGs$mYjb8>=I4B0yQP^_wx8rN#h6E&VC#KQBCuAN1>6 z@Lb8UtoBtGEjdloWw&5rv8$A6W5ySPzJP4#nOCuXA`J7>>exM?5$f`V0R0qX0>m&M zXg>|QbKoXj+|TfQh+P2}##^ni*z%cu=|b!bQb=iEbf->sbtK2+s0Y_) zp9-=XqOaH#IcQd<`V7=Lx;?Du8pgN5^?8l28SbW9NjX@T0%tbP7b@7f41NG#g0L$J zha`G-1-PQL;rtoea}lBeK5OWqws4U57K{HT7h(}l2X_R`m0GP62!6W`iKH~Tb;*eo z`Y3t|bIuM#us@S(RG&8!sJFl^5wW!oO8;Fmu`|6% zYw&>RlI-i?`V5U|U?Nn_ z()KdAqmj!)*M?cpu*zQ`0VT?uXrQ>>_(-qUyNNFOn+@$*&g#Kx?Dd5CRk#*naS0%v zI-ovVCA7oE->Qmu2pYUw#Fp;L7NFq~|*pUCbd1M02j(=P&qtT*kTR!dq_ zE0!fySE`eaV2@X^{IM;;KnswJ%1$RlwD9ATl3Yue@wz8!2%da%o#(XWJXS=c7vBwZ zT$6v9mbr_+9;NRr=lBb}o$vK$5YC|oe?JhG(wMk&K9gVC*tkBwWv0dR`K@$%D}NsR zqsy!926Ru@HNOL{jBYr+5jeOZVE;poDl8x6?L*X`lC-1RsE_EeG{3=!#C__>qJtqY zOvgdC+$t-Ow8Ne|1;_MDwv=+halV=~u+=4#6Ovhh#>eUq)KmEt!@JJ$9mU0>2FJ*m zmu1UQ@=0WRkc!c9Pz$9Q416rT9qaE5@t4qW!-NVusGr7q_mnRLg|Ug!MovhdMZH+a zVjFkL^vy8gNS=>582;I6Hd}pMr>zQVz_2~)A-xVCK)rxy2NTe%h0sH#Ev?sTQXYiu zm9;fV%Vu*qX=ZtO94mQ`5`G-z2#!TxN0Vi^*r<0H<{jPUqkA7+_yGof?CcjVrWnX6}KupDpnAAp2yW7iX*PEC9v$_3l zzS+!_bGZzU!S(fScQLa#dIW<5=qC{UoR*n}jDcyY?$B=>qQK^E1%Bg@c-244PsF9&gae66XfBq)^0mKzn`~o8fd={}N^rP5Co8YwV$MAM^6O?s*XhishYX8jgqRQ%Bq#i1$8pH!sBSnqzhh4C1LsZ7 zI!`8)M@mvp*uA1^{|0gKEs#KEo^y+UMH3pA65-D-fHJs)Y2{ofH&z1Wx&<-4M#5fI zjdOy&k)BO+g+~2)5^6}|XKCPH`C8vsiEQ5_VGTa`LJOE}pjnX8(z&_CjczsGwvAWM zasRx?om=d-F+0^=JSTdmRzo67ALU~aT-UcHcqs-c%)>T1{ke1mfrxVtnlFP?1GV%4e=Ou7*R?RJO%2)Dztr8BSGH~Cb8&1lkURd?&6_vh z0UYm!hUqe>$K{Nhzgq(`>|(acOF)&;hBOAq=u+CWG4Cu}2?qjGf-X7}jQ4Oof7Mqs zTY3OvcBTSXuVxllRZV)0-$Bnh+R-}I^Uuy7oY~l)#~nU1FDSc9b*BaAJ%UXQvI&Uf zpipL4!S6Q>7V-S7>o^Kb&EvR;^fKb$hiXEjy@QLS_+W->nq`GS){?Q5M6+Emry#9D zyKe-aCRTLLNlm&&iGwOE7NQ%)NLmPcrc24()|1HGY^=zNZ$0XR*;Idco##IVo8S{3 z7Gy)XS2G3UV?1~5Ecg-}`m$Z0Pp_>k!`yV~3%+Q?zuIheW@n?h7(%M3I?VTRsxveh zx<1A=o9XWEZn_MbD>z>1R;QC*oSE5A@88W2_5D%AXN4b*&Zkckf?t7`i9GX>eK7Al zND+o09(gV*c3?gzs^>nmbN-rU3q@Oy>2%`L)0hXv?x-MvMPbOowh-qyYv(!;iVkoZ zTfyQOPX{oAJEor5+{FAEz{>zihwwg<>~Zd7(tz&kuej$RBcRJCY(-A`zYmmRdioUM zo394oJ5b_!GP8tJTYUk@Fip<>6K;5qjcq-d#;o= z;?nue$#hL)a4_=yJ7CU!3IHcPFHyERxJwkQfG0433cda)7o#(S*;SB=;rpmyGCFz#I2gZv4@R@{7ix1ZpIj)&hL|hk z-Q*JA;5dDGYzEA}wVQ#gnDI|TB}f+u%m5}D)lGkonz{w_f$}Nz^Y+H>FJ75H?;p+w zdkI z?mn+eGgkm_U1-~ySkf`L@Wd7tk#<2?)qW?9{=07vN$S&*QT#og6 z#cKPW<#QL&X!f?wwwEtT-r2LBbaA;YnTP6$9mk}!9se6vl}Cm)Bv#BbO5;)Hh|`L$ zFquoFyF8+wHgZ{y&Iu=2A10gsFK1rh?1GTeIqR%q-MFv@MOM?sPQ#Ru)3AVEg$CD* z_a;ZJ@fZ`wN+P53T>m2?WC{rUpx=H0(EG})xmXWM>R6Cg z(QRLp@Zy4C5l#0+TUXUZblw+<*VT9b!xZX`7nW=+?1Q8cREp}Hfz7bB26D~@%#PhX zXo3ub=+WUF%dKAKvZ!B9kT~swy1k4g#67O(Bj17urjUXZ(h3xzJfmW8BnsJg)H}+{F_#Zk25m!6%GTPh7=*(+i%=K|CN; z!X!9wkH_8_JKvi`O?cz6bK`bQs*P#r?u@-BR zk+D&8hwVK=d5)V%#o_=58=_$hg~#;^%f|>UgCq=j2?A}Dd7+kvJx1jZnOh$d8dbJr z_ZVS@PWxyA2gZqbQw4h=1#)Flv)WT!Z8@QR6q`7eLSP%N>lx$VHpL<5tGohhTo97D z!z&O=LzBJ`Iwv_)1c^8=NQp58gM@)EF0Nv47Aey}cRLXzKz|GUA8R8=nG~^1R7^q@ zSQS-Y@fBws)6rnCLabJmu|?YQjJP6xXnZrHKzEo}IF@*h5?=~I`em#MkuW)qIXbAj zD}o-F&!5$JNmigYD{0svj>%3FodEI(w2$DsKv*V+e0oeX9jvye#$rnK;?h#pEkPsW z?1c-}%`<0`RkoIDP+sA4Kk|^5q^JWMjt-E{nINMO0MpS)Q>h*W9eB-tUH-3{^9u;Z zg6GK)97jsR9e{e54^1Y$j35-(-1|V$!%T;D!vQP@G=zDBEZESp#s_hLbfN#DG$dC$ zIV0|2E5mcH`!nybsp3QqtV7Fw8DPk~?&fUE5ltg}9C-IuX)=S#tM;%5Wk(bhHb#5D z5jg~6nEW|AHQE+H6PQcrhVS>PQ~CUOY2mD!O3j#Jt~0-(&X&&RFnK+nJ6jTi3%fNS z#H__TaHak30JCfIs*!p3@A*;Sm4}Bm^aHmpK3*ZIg z5_Ab@CPDD$xO4)d)5~?!-9_fZ<~Jb5v4cGEkS5HdA~i_4*v;pC&Ezc*J+Y8lvk{Q2 z+8H>OU2M5E{do+@<-i%97WR=cPfve5Xiq!{Vyq#3HU;z##;9(2Col_5aha+N;%;TY zaBTKB15EdVYUfn;;Do!|IoRDj=m=Z$#c-lO2^4Yc*|GFb21XMG0DjKGt~Yh9d--zr+Eh=x*w{KYgD~1|A{1?quQ5aF_LH{bH3zOICD75C4Tlf!R<`3? zj^gsqdAMBgS9U3(gPUbQz%dzCFG#qc0jEOin2-Cpe8SR-skDzR#yM>M1D)9P&OPlW zssz6wMkBMq<)l!ZRA6!6A^k@s5%%KPLgaa-oX^)3JK()E7^AWdx~LNHr7ADVNggRW z_@bZS^{w(`iW{3MJ&1s9h+i_Pu>0LXE^WZ8{a57D5rW=}t@jGLU2Mu)wGi^sV#RK1 z1rqTsXiZ!4^Xo0r3_0pQFckwBT=WwM%0fn;ih|(LuR%uPBUWTE(1e1W*HNi2grO2+Z&zfy|G{= zldqK)rSx8qUreVL^T8ejds7t(xkp$>-wUy4hg*V2zvK1{l8-?bWswe~@9T*`jK_yv z!8e7&zAyz`{00=H;8`GKr~v5>9lZkC1@wa}sV5C*g@7v@j8?Fb<73mFc92KW2V#R1 zTzRwUJZETOFf~C}2MU-01`Od_lubgGYw6p}(I>i&Z=3?5cJ81q9aIy?+QJBra8rYJ z9(`VLHS};X2Zck7q#6P)DWdK2Z$U8yIfck@<~@pat723y;U7#ipUlmBe9$gG3?=%= zNaCaf(rV4-m$S0DW|?w%Lz6Q^L^gyu{8*X64`NzGov6Vi!)Z)1R5q<7ZYQ5hV3mT& z&mJ7`)9p4tDHcfDY_-{(XHH z_QGFA`js>6<&h%0K3=$0OvKsaF3q@dvg3?n#-48#_~r(KUAnMQ}#r?&c8!F zB@Q`p_d%nmeDU0Zkju4;hiH4cJ@@RvLhwslsp>!Pcl-c51u|t7sGwu@tA%5vc!lDhV8GfUc5w(ACfVho)p4iL2Q|D@B z!AizKIyTeOs*9UROJ&^Ec+xUx8YC__IY+3U@#&P%nb7c!=$WWs`G`2nEz1&l9^)Th z7Wh@~c8+(mxR&ZiH8%l?X3Sx6!Wf9U6SG={O9zT5m*&d1ICTvgWV|ym@e~AoKypE@ z75{BUDR@eP+?A|55&xYs((j;tKLG{zZD=Cz_ZmLht(*7BvGtS9_~F{C4)p07DK>2CFSK<5^FAU&ypAtVrYKQ6Tfaps_0u7lA z4pK&ui!Zqt}77gr=BaS({MU}H>6QMb_K zbDzdx?gQDhN)T}X0o4oO6&?4jv$IpSh2=bwo5ATV7@X(3HU|FO_auBFvj&C2Bo6#d zNl4g{et4p~>*Hd#+drG1Pd#E_f>e41dYx&{ejHY@!3nw^X5b*BV1lx70R_lp*B7)T)1>e*g1b*0Pzpi?Z^!uVkCpR z-M{7oOD5EW9TRi^uw=^AfL$gRNM@V?cXaC)@y8@b-WVEaWXcprk015is4@4k(|4LD zshz@UP98vUmQ!4=SV(aEE)Zb^2vtFizr*eFyIjY?_aXPSAGP%&sOKJlQKAJS@t_jn z&}BoGeBAs)1@CCr@b-0Q%mXh8H3F72fmmDyTlnDM;Qapn7FLL1afkm!UfnHEC;40_ zcZ0ex;%m?j)#Ps?By~CsfEBa_1l}RiYk3`!=ZKG9y0DmVoSb>)dVu)15d(LdeH&!oA0qmD!l2ly&P-c6~W$l>H%R9gQ9 zSORggC|d8u_IkC7w0i=pEXyai-E`W@H+w%QbJB_OcD~okZW-m!{or%#NGSx5)KnvNEG(JjKSU9@%~>7vu`HLx9W=87-Ral~bFV`S4LNHO2Lr?< zm$p{pW7&=6Wp3rZCi+)iPRXujN%kmb>$;33cryu;Ut0PRr#|~o3U!wB1+1yTaH_z| zCn`<*Pv+-WQ(0&Lk~SXUQG{_O!4QcMPIUFwThbDj&o2?gSpl?35T^n`MZ!4srO~e5 z5Q!RGVk+NZQFvh7NJ?;{nw??_GC9KBhmAfszJJY(-d8^Hw27FYbLFhvv$P(f2c;(f z(La2L&0w>$9NEl^D=RCe|2d2zkWVu|E6k5O272x?Q~+?dz{kJCR=#YYjWuE`l(W!| z1cRxUJsf+C=ESZCrIP-py*>TGM;_66NzyMq@W7!yD(^i!0{AaFgDBZ&-e)lk(GDKA z^CBc^pzX{|CAx#4gB-OeMhG8AsWUszK?wN;XgM3+Q(7pvK|FMgoVyAyLy)Gr3;ruK zo_#3?P(3SoU_dG==b~}^8R8si(6FWYiNFnvUe!6&Hit4B@QWrTs#5u@s z(TNfZr-fL29(dknuYUDWaf^%3#a@hmE6%?d`&8_;*tcTwN4JQ5yY*Hr6+wn4DcK88#dgAGbT zNnz{(D%X=(7o$6lGlzv7&>zFe!iyzqsKrCH0nKUFzu=O#F|(Ld{2cFD!oNX*iqpfO z8yA=3c4%=|*_On|c}a9IU=jzc!W-BM4(Es@iPuc9x@2tam0aHYYf#8+P?^Z}~_c!qh(^-o*ITty%&gzptVjR?2Xf5BZ#<_I5 z5Qb~8^|l;dhK#K)UkXJlK13_O-)C7KAcwgW+v!2%UOByTaq(iUwgn0DEl7}WZR{TI zoy0BYkXL@Pif<>EhbYkFHaVQYz=Bc*enf#A&+_n`=qXBM2P8E zIRG7ncEDwtH4x-L)xrf8buo&MONL(^$7G%6O_VBA$S|jh&`^QMX5cxRG!8}=zXxXe znPi$c$)Np;j$!aNv{HOw{H9xYA&$G#CnV1(xmmjtzCYZ!vTl1y29 z1^MGjt_^{($>P&s{_65)1C)PXMo~yLa)h1#{g4HB8n*Zl>g3wxd&Yu^c6(zkldtUU zO*eL=bTF6SNvC)6bAgyTynb%cz&<9N4OKUmHUBji#Ce5ad z1F)E=x*Sgx!z7=;c9F?+Kr3b;JTHe%t8*`~C|&+il64{Ul}y+DF3zgk?Wx#MRxOU9 zze`)F&ja{G5v`q8EXl!CCj>Zuw&n?X!^d`N*VJWwOoqh{HXgai{GzEB%t3FjB4;*x zTcXno|Gwwn`6u*&D1VNCI1^*)ObsF`By`?~~sByMerLHa3uPazKF-3Xs z2g?^RrT|?y!%|G=q^8D`&Dyg}+vwL^0u}%fr#oqqdIlq4pdLzHN7`;f+3!IQAl1ne zoqD~O$xqK(=@)z4>$98)m6F+XdN$uXAwrl{*`U1($2zu0(RX+#cgf*KQ7K0388s{% zUB70=eWp{Hb9A(@p<79qIC`%t%>czg!BH%Dd=uQX1g2hgYm9Y&Ht;9Tf=8jPCg(DI za=LnpJ@@B4Y!LqqR=WOt&^`2&4k1-gYstWptc)SsrMci2CMSm;?2q94BXx~4vD3Xq zpqWhSQENpHJZS(#{i&8F9$SgA;Bsa;xJdV~uMjHBCSRROzjEbZ%C z16m75{t6F$%y3xf9EQejGP;o?xtyJ=%H%%@}B@+TkM@4VptAVRSQ53nLS_K283wb`xzGZl*O9gdTcpIR) zZubSur>y2cG;x{}&#|V$Yo0<1V`9u>$kg|UR{|7#JN6Qk*U}%%>eqk#;hl%CU*9VA z#NOK4R_vLlp1ObQewAw`iAjhlN6C>D$o9A$+O>?%EM|n#YTm_0 zI&qO|lVyN|2Io}4rPGwNiUF}Cxe#I>M9Q#JSUtE5JNCF@%KDn?IBvp3oN&zBdR(Cv zxU6E!yCi7EPso6A;x0BVOYnZJRz-@wL5tt;Z}c%RiFS%6qFbv==nw1i#XzJ)GI5^8p1%Z3_z&3xPQ+`xCw8$n zF;#WUrSU=sD+=;+i*fs)Tj=G@UVhQ;cJ0M{&y=>L(-(BO5{f^gmtxRm@5dk3Yo~TD zB{%F9unLg%&W7&Pzrz@4Ty9X~{IKrZTX58um`k{PxeFHoKagtA=KbCRi56 zaxddz6n%qZ7lSmd82m_Gw`BEmz+!dz(>A6HtlxX>wbeSta!c5fYSSWW-SL7kq}46l z81RCzRq@@NvXO`SS9-Gee1d?-S84RHAHQi&bs4$#X|}8S+1S5EUwr|*Aa4BK@s?mu;Uwt4ZX(@#8c`l*Y}SxI>8@;n<{8gVT+#gNezaDF(+KAOuC zZ`e3txj0Os#2gvfljsMO$aS-;aIk=oUYQ zdGp$vjO&MoYhyvMcJDh^0W8*TcGd z5EnbRJ8&QlUreT_a~L`Y*89bDUw3?CY%=vaa<19glQ48QRlrUs)vdYRjF6v3re*18 z61H$l<~2yAi#lpn-Nm+5Lz)E4X=%6>>C(fEgM%}% ztM|-oY)tLVt*p$h-@5WDTKatH;n+QU>sPL<@7)u7xFqKm-~4Fu4jJ>o)D62AQ3yWD zcL%5oweX3zkX$@Eb^I2q9@r6w10Cw9ggtg)2yL5hP~jy*#W4cxnKxpkT~ve&k$Y;( zevadp0M?@knhX;01+AX7#MGFiPUiSrQ7J+5G!AMp5@V!$j8KJnkO|X1RmU_l<}A7K zd*fxEdv%fdLGp%%^{!&Z5H!M%Gx-J_x8_V|Yts-UYvw@<^}Pf( zYpEev+sOpR&O9g+N*U;kl?*dm3S`U3wcF5_e~nM9r@PR^X>~4O|A{7j-b1T+(0!tJ z)c|v6z`Vt@ogQA@sEgwKbVbcxy0X7CeowfOB?fMGBNX}bn`05MJVHTXFJj=Wn6o-M zSZNWGLBpC3)!g8HP;74uQzkel#Csrvls4aS)>OO5eiyk? z2Ysi@v1_phVhg?OeVbQiujkXr)AxRAliR$Wy!YPZ_04$qp6MOb#t5PPLma@%I7nv7 zD7=u#M21VBfN`<11I{5zhK{8|;b`lF96SA$QQvfQeE$ySt;#_n*(&lW=<*k2O$p;5 z^{a0&-G|&cPYc*WWl>2P6M4Qd=ll1%rc64d*25kM^OhZPSc+t(NeCsDNCdYf729`0%qBO({ipi$t|}E>DcvquNm=^mnE-~i(k0*sTj8$yKpUj z`EvZ)h1jyBUfN&8Vgx$i!3mT5z+p#@gC!^Is0l=5GhUQ9Ql1h;))9gb5=)%s2!_~4 z{VPWY40EL>U%!7k@ctj#STV6)dX2VJFTn{rwlNmif}2*|agR$COVA|&7k;#2(GZlLit8Ku`|>)_++m}BG&~N!M&?ggc=vAL zUxR`ongYk#CpdblivEAb-ZMCo^gI(pW>$KiSy|o}3I*?d!xT(6(A{Y7(B90n8BRB+ z$Is9XMN!nO3?)jUsMCp}Xhb$S;*3a9RBLrh>a-gtin~iv+8=un7qJ(yNA2xh=q}>K z-M@R!`(uT?ejj*6CqcfB6dg(- z;ZeWkD>#r_glDoUY|vQNqcY6%@_OT*$u?O@ov0ADmQ@!QFP@-rpy6-i&yFz7^J6KSP5%CNfB3;hQc6OTm| zu}eL`>K+|isu`O*J04^QypyY|9+LXZ;!RsKcQ{XNHq2&3g_ zsx4_$5C>J9;RJy%okCc1N_4XK@82IRSodi%@E*ygfk3eOjnR}UU@-(8sv3gZbTP!G zS&N#b$$|tlg$}55LZPHvH8j3o6N{soSXU%TZw5gg1POxfG?n^78YnYyKd^!(RTx!F zL;M5kx4B5y@-|`R4)pGv**;tt9GsohdaiEuo;lpJ1+r{Wo$LohJ`M9?d zxqdpKu``OrUI8DO!F*{{K0_cIl74iS87G?=1gS~hDrleGwo}?04t&f+FyzWfC7~jf zmNEWOPCFtGA!W{7kbxugCGyFFZc0#zh19eP^-@97{nIE(R(um9<8EkPd#UM_`h4K< z)?fj(3?J3E!zTdDq3Kiq!2Y*RYvNGK29y_#!<4T{%ej0u4MJSBZY03jGg1PAONN_C z^Pgn{{cjP`X<;JZ{NeuRb)w54uwINP`zb0GgQ!N4uR{Of(D;Fa6-=p$W+|6m+&_NM zOhb;vJUA{E*8AV}K}kh*vzevveNAcUGIS~TAOG_W}YV8sbT5*@a4vIKU3+0|crS$gwz>BGOM z^j%LY76iCVU#WrS6*f0v057Yrm!J@lA4D4m^?E=;LH<=-JYJ^#0gV$YHN#3s-~-t5LGm(^gxS+6>8to z#{*0D&u4ZP$1XavFa#a@iknQwxuecHM+X%Jh$c>UAA(%q5?N8BIX8^97KkhXzsCXr z4nmB37&nlU&to)N6B2qs)e@_^Q-(x$8a*qNGc)#Z1!S?7F{DHIPgjRc0Y);Dv`~FB z5-L=}Z)gri76pyG_sGawFooO9wKs>JMHFC)@4(ht;@^QhQZjUXQ%XUor7wd?Q83{_ z_!Z4{phsQV#(z<*yNhYug>((qA414dV1V=2FnCzjFj^%(%`hr}vNbx3XKBuJG7a`c z1Ov;XgD5YcvABHv^yy_%2w#2@gn-o=5CJeO#S>zHJqIq$UO;IS;;HD6QWQW-E|V3( z@>A^-_IL)dK^P89(TD?z?k2)ch5}H*hfh7lQy}rdBDQq5ii!+?Xa-6*sJRT7$uhkOx{2d*P-UzmnEb z!9lYM;69t?0MH$z9O_@2sD9yS|A*AE#w6$g$57~6f>>1<+`dTdm#pNvW&Zxs(ys!m zw=YF9L-pDVC`OvfSF#g2%*Jv8ZZVtqij|g#kS< zu4jE~25)1e9AevQF%4DQaL7FkRWy9Hj?M?^LFkasWq}Z}%eosVnBXxy!0cmJ z?BCbyqkw^G?^Ft#rJt1AC>j+u}!q%S!}MgWqJFzI$3GFC2R*hvsDk&rE|z&Uoo)kMYNQcy(^Jv(jl znQV4C57B7^Hl8X57=24(n+z$Nvy!Do%4_(BGV)1K%_D9!mr#5*#j^lgV%G(AR}^I# zT%Azmu|Rua-Pb^*2;`WyAOkER0(q0<%@v37ctTaacF|NFNQ*TDKNOXbA5()4_{j%4TQBvr#nGfRUm@p-yPI- zsaJOgNe2XSdbes=;{ubhVnEF)lqpy9Fi_d%!1HjjR^nR*LY0`P9u~@CD7zoAs?J)3 zCE0E@FK?Z{bYyp5|LV}Zu6znD1%>->3b%D>cXeJ-=2v$wZAs>tgC@n#apjSS-pEFg zoo9b2pu<^4fWejuTpD4x!8kQiDMBdW!mwlC*Ce+IL)P{J?5fbz2}6f<@Je_^rvPyt zy$>UM0W0(o!#2`D^`>n{M}x%aw;TZl8j>C?tSrdDXDT=c86aPgC;yrieA?8ncBdt( zQ9FQC09(EA2|Tw082W~5*4g(I4AdS5tWSgtYHr9R?iDPQ0aT&MnUX<-{q4%TmASmeBtoQ z>3OXqS{rH{hc<^HbE32jYsu_?7t{fRw20i=SVlUc;WCDrKaw=m9hM{9r(Uo=EJE!|e*my;BzNc&Q zb52S&jnYawXGkmS^LZhd7#6g5@8^dKT)s)NemKtGgz}#)eNG04pK9n=F#;A6oTaZH6?4X z$FN4&WSWC&A}YqT08TX-0QM1U$-2{wb*JlSBW!M;WW4fencvTq%_`=t^?r9Or7A;; zquUtbq>AnlYtujkf&*+wXOfyCIH@yfjKlzKMm_1UE2?uW3w&b&Z$p8RXbfmj!@#VB ztvZRSuE;8YdT9t+X_EILO@g4=Hw0~?IFaTv&9N&$B_Q|)lG%>wk)wE;aJNa!3oJ)A zw$&~380c6Yr?8wugefjLO{k!{6WWM1jS(HnbYhmV--*m`xv z&iDewB5ZLe;Gpb|84Ls+KrvDYj*+~E<{&f;?Is#Ng&mF#>g^`z68Twx$HY`Y2$BLC zz@Kmu5P}!_sys$xQi=#F70_<0wwU(L1MkeEV52~9vJM-7Is{uz(D|_Cd?$%l2Btr@ zzsMIiM}==dPiCz-Kj#VQ@r^;C=j%>BFp)4inPKszbQ0)^gruGT?R0)T%V8knw!r|+ zHUQ0WqRm$JC#d=SJK(9-F#Ga)&j))xiV2vB58r+4&YofV-TW{OwOpFeu` z^S8PG{SEHB;txgs_J`gO&z=?E_|R?f(yPxAVkTZ_%o)Lr#p_HW^Xz$a<1ssg>KfK} zHu7q0eQ|U{!1&xFpFaBXIp*SsOZUmYCX5&&E?N9i3JE*z?lAuKQdz6!xpW>QRyu|a z04;}#i6u*z+T&6;cs?m63W&>rRncI3G597_lx&Sp2asaW)gy?{R4dD+4Q1IIuXEL2 zn{+dm5{aZJEhsZ3qg|;}P394A3cQ+0qOYNWBoC!}D2?KTr$N7j83$1nd2CApj6;GB zzyT_zRt6dc9-@(Hps7(TQ3R1oWx;xtK+KL7p2kZG6bp0%4s*^UhuI?Bzj(y=v%VkV zFn_{O>LMy9p$6%*JzK5bLjS?*Ds)E|1Yvoq=fr0J_3ZX?&*o;&@^ET>G+3y(bN(LNuiS`(mr)`%aPL%kD$g_KyG$Zl} zN&XbNx5UD)Cb*OjTa@vuf|BK3UVep3+{JqSi@k6-EX+BaYjK%YFp)U zd7bdZR#}BuyvCJZTin9iS$H_WQ&YGnIrYgev`yip=|94TV|+ z#4K%yeeIO^!uE48^J8P5$*tTh1D_;+1tb)R+ELzGDi3EOyF^)1mE9h?J0I^k-x|5T zwRPp(xzYKRm6_3x-Tv@fJh1Ay7eDmYTiodFw{jo)Q0}eUqhjUF_Z^$)yHJU&ROj~4 zVz*bEJz+P9t$lP)n5^*Q7a){?LSEbX7KPHWnIppd&_6IN28yYBUKg4)x|)x)0^|Mq zmLLo$4mdp!zNI3a1`Se>sJr2Y9oZ z2f>$JLlw*P)lV*>j{r9WR%LAZl2JcDil@^rjdp(6b=9HpNBUUJa>{hB5gx9}Hr0 zZC%jj>f?|_8yUO?w3#V>(S&|!;@uE&LkMxYMLz&PLp&Qe(n@Zrsg=@kj03J<3~&Ww zfGg-cjE%LOGdXG6KJw2Y^Bt`xJLd=?=`tY6ML(<-Ks-Bt(t>nN<#A{`Dh_yP+T!k6z#sn`>52@d74PF{yf?C|1u* z1pKrizBaRWQVMf@@XVX zrkqWu3tkS(**}Gu@`XHlh}6@jIFfpZF0%8GkNpg~GL`1(df)O`0lLby@15qp*Tf;#9k_CTX1N^$9 zwt$0w7HBY_o{L58><>i15j7N9Jxop}RCm~hiWUfj06D-iLuh$ z)zg>6Tx#yprMXlNm6Pi}-~ipD2y~%4Q4Bz!kEYa!F=pFwA3JaDD5c93<1EfaCy?5S zumRn1ki>Q(PV~Dh`LA|m*_f`XQfZ@`Gh2!d=3!~KyiX@Q9qF7-)jgbOl60K6W74Y zhf8h<1_dW(CJ#+RJCEQ5_Oc4SF80+_Dx(WV-WHb90dfOigjL1n9Un#nU@zWwBeXiH z6bn7WQFjs9&?e~T2Xt&;VP|r(;P>|Q_V*XI4<9bn%OF%=+S-~a%)mCpGF0sxh-_?J z6(?gGWkU>s5z_!sgo2`YR}9i&SHNL@3{|uzPW)%RCb|RY3#eJt>uL}>^c?{#-I!9` z=Ns;L(QyBzZ`B#M5;-e|28Ci5nqT)YmFm=>;xH!w9A_xwSp4i1$f+}+FTo_S=}&+# zY%@ER^*#REZGsKFYmRxaVYRVBvoe!)+bX@ z+`7yA^&+Hrmreb!0!8oug>E9>9Ic?rm{C!jP@i|aEj@M4vC5nSic)Hb6-l%gnKy@! z?T4nAub>NNSp9yv2}I!R3hHssfu2dQJ&0f^p!AZGd@t)G1~r3MSBn!Kl*Fqq6M|X( zV~i9^k-mJ$tVCGZ9BLMe5wFrM@cNYx?^`%ES*eWKYVX#e%Lh*N62nsOsYLeKv#ptC zcCQ->y-=JmhB&spRpT})AZ!58x<;OdY7y`}%-zG)x3L?2Z7cC4KTjCUe{Xxxuf^)g zTB$t5_hqt+Rjxh^gc#@ z{%yGTk&!n!V_$6u`r-rSy96nazLG-W=U?-Z?n%04XjZbewuIPd;i#iY(3UgV*k=oIZ^IfCYBPkYd~TD zZ;Jc~fK%*Bhw%?pAgE1BPz&5$R`J0(h3laZC>rwugJQI}Q5x3?slp$der83mc^uyX zXjtok4mB>Jkv2iTFG9gB-2Ff`X$*zxUg(Z`SnM3mfA+Rj#A{KVt#MHHg z3k@(ehY3Ld=XL*!D4ow6K(%P5^OrV;!w^26Nn4t7_d}{ufm<$FVg)I#DVuK4Nb-fg zVtR;$slQdK*58lHlP-TFNtH{$S62!{=mt^zPKfs(_h|4xvG)O&!qJvF=+wo*o)d6D z^>SaKZ*Z^FYh4t;U0^+|>gQE^-&IE3%*tjcCXxf8XgZRzi6|;N zQATAwfl{ZO(er_xNNbvx<}&G;>m)s(C}=W3Yi^HZ^O6jf9etxjBga#{7ip2DuV;W& zixydA3}*j;HI`8s&LU5L87zUhS^Jn$6p!^37h6H=*s+1e=wuB|>#c#U=#a*yG&-E@ zfKsGHnKmcaUj9h4k6E zSg(WZ#SdXCmccW!g_C|0SS`#ZUClNc!v6Kt`ox5A`^XVt*;q3+HiTzx-4dk5Md93y z8^Zz`cJ1&!HpjFroe-9uQhXn-AgnW%6Ca=2;%Mhov}J$^A<2@{aD5=K#Sao9`$?gH z=ltJ*`eUG~V~PW=*aA4wIV&(}m{}A6O_%a;tmQhNElB{z$>z2{3CoZdxZ)ruH2;7Q zai-7sf9#58BQ_0-_b+6o0!{W5jKpAkQOcp&qi>k$bl&C^**#nz2U)=g@R{ie%?RqQ zDNbdAkr6*P@&Q5LtT!`UuE~syExx0hz{kW^hA^AN@$zHfix2iZ({sD$`JQvFk%P0d z2Ns_@HZpkgj#eu9kf^Py=b!y~pIbaO2p#EXpH=-kgU1$S{`$$4y~8ivQ%RxerjPiG z9bmmWa*q^X)o@kjFxV2CAH)+Z;>C;N92PH$gE0hW@x6d?dg>m;SewrS^HMYH<#EFP ztAhHz1jNUHe;cM$Vvf_C1|GK{p&kItiPFOXMNb5n*T+|<(pt5>1tr=7O-#XmzEgm& z^9`?vzO>FKQJ{p26=h#93hDh%foO8TAe0vjeJ}VA1Y={*2K*7V|Kkk^ zIS)upV*nFJac2tN^2~wJedFV`*~P`$WyHbfFI}n`$v)`G9@*WUtnDG-Xdm|Y(1)>I zHx`-95>7Bqe)z~99=Qme20tD0r+^z{BmbY!OwhoghOpOGh6cDwQ}N|e7Gelu5`=0P z%?%_av4a^8&VnupXCGFbo5!DUyhHo`U@?UfAj+%B+4`s{m?PCx72VT{OQfZ};MXw# z`F>?YcT^VumWd36bor&FMKbPt*7mDR1}r+S-_MwTxeUZOFN zwr?F{XPw+C9r5sy5yRjqPCLj3VY?9rlC=p>yT$iWdy1|A<{a5gc&x)3ZxRhcKE=|+ zr~J(kSba^%C$wR7@4;kgUx(}?pgEGf-*DGVy?hsa2*V@ZJoJflsp=sf?BxqSU|*|& zvG<(QgbmL5djKt|7Vr5oG7_6lVk{d7j9?CV2*_o&G%pLOU(oR!ZjNG1e!N#W{HTR_ z07jMe0Y^L-;xEX@5`QX1GB&4uy)aL5B)B}ZkE@fa?_5@pSr^FF@M=JFpO)R z06n<@BGkNPiy%eSEH0ln^c+B0Rf{n_2TGsetb@l5+P)NdCqA3fpKQqA#5j_u>sH+d z{h+D(HB`m5+;ruhi$z1ROJCM<2FfDFI`EE$G-&!x@tOc=20ZB>3EKWW$Nej|xo4$S zRC|d(#YVMqomI)GZ&$r>YWw){Y;}2YxzWgiNPbQ>m zy`!fTeRmD6lPwOyUYi^O@7YnN50uofss`dpY))uzV6mCJbiArhwJzU6KcWaRCP|b0 zlw91;flykr8z7IK@l@NIM2{_LCRC2+hshX&C_}AcxO%KmC{)sF0a$XLO}6JSFotoa zWWM+SJ#Rz$I2v}QG`k39q)(*nBJ!Jl%^5)FPbvjs(m>MaCKQ0HF$6pkpz0>5HJ0T3 z0$O}KwUM-t9_+gf&N)N+wxLRfOw&2U824X#{u<{yz`W=Tszg_r|GeB9K6mu;N^w6w zet3p=4hMWAmrJKF_g0F<%Qp`nzI^@JXD@^6^YWQ%*Dm8WJgxK=rIhiBr$;*VWI4dL zLXlhtTE_ki`_3=H1Ly720Y z_~IIQ(CfOhShsp1reW*gRPZpHzGPUMtD$ZOc#?ww=|IAgXgvcp`WrO6}IyAGI@I1JJHxX9#mnI}&1M^!8N5 z`PSh2Qg*7T4h&?W$&)=a4m3j|ku8%-SN6ccgW1LX`?GnJevNEQ=(pFS?){9SNdlxZ z3m=liQz_(;K?%ACxDU~QO3-|oDUYwjCwJ)W0vshK)QRBx{ib`!QXFYY^#GgMIrHdp zlC`GH=;Kf&?C&3KHd{m2ib^_59Zgxxft^j-oDCEYvcQiRjW0WPC;o_QAU}f5fbJ!# zO5vm~Fj^PaW~Zw8a~IqS(9q`Lvu{=@2HvGO?^&!JeG4ta=He2Nc@(dN(Y2kCpD%T2=rqqS`>5^1KjVsYk5 zN;7g9KoON0tmg&HGzGsI7?pNx2TpYsUUTT;y#u;%gn;O0_;8cq&4oeHRC9Q`bq7u11B-O>>(RW7~Aa) zw!7^^XgIoG`y_k7Qe#?Iyi@To0hnaaX;hQ|> zqTn$N;)>=nf06>aAAt!lCq&u+1Xz$mjPXUNzFUyNwVisv=N8InwgVpeNz*4NrwY=r zyC@Z!HbzdoI!I0z^Tq>S+pJKVd6=a!hWt)Eq* z{j2rMmFxM-nN|O?gxGJ}oLXO9H9=u%g1&Ojd{pa@-FX^4?fye|z8yPIAk7-|>BtVV z@4)9#o=$#`=F`GT@_%RY65E20@M!~sl%kNR&kcL1yEU48MuV_U!s@5B#PWjI$-+|Q zRj|0BzzVc@DQ_%d6XqEiC>Zj<$HNjxpl_L-Sm!MW$r{#M@N&>c;SEeoOSTOJjO8UP zj1QtD3tsBdbWy{!tG|sD61_J;KTOrMA+i>1y^*ocggX$y#RcBf+mLTG)CEg911wZCEpYp zMX>PpmIGTz2!`OMvVo8(nLxJanFjRFra)7r{>EiPJpOSEX9$V{xk}ABsJoI;0GsGs z0a)8=y?zyfR!~DV5%471Mitgko*2Wl8&%k}!$#?`B1a^QJm z3rkC5cW&Ms8=0R!J$CvDi@(>+QMf_p9eqApLiT~haiJ-xu~q(=%R0Ar`_g@3Ncg1f z`v)xpvB?U!Q(7QjXe3~2%izf^8{cM23%k=^TBP5!w8u1zq`{_O46{{9@&m)3R}vsO zq6r4xK{O4sLW4)W@^=y~!`r}cySjl;1NdoG{!?JErYik;u2k;}*Yab z9lJJ|^Be$x4asx!XkFEu6y)l%*fmUVW7lA9LWbNQqdz^2&Q%LH;56_7FZI0EbG0>c z_wrJD?g9j8)2TT-f5v(ptGt*t-An%UkuHo~^^jj%_{r!VC5m$X%a!9UhIw znL%PZg8%~-h=m!HGm?)bI2NiZv)DC86Na4&H=r};5{H3J_Twm|N56nB(o?rHwoJdq zC)R-(K&jDiE4*TJDbCjfehUJ17z|XEjL6&jup{7s)!g&EqXPzmm>bpw_6%-8^CW(Y z=l7>%IdRbN-UkzAIme!sDt$6pu&cABEE=&^;vM^_Iu z@!uVpFx|HjpHI98X5Pf-C*GUj7mglEOt|hu;?U6r$=)Zkt?McZ#LR$f=dfM4L_loC z6fUe^7G9?a8H_om0NaPTC8m%?aS!g;V-OLx#qmZQ61lXUO8{=`Wv=?-^eDx zZn#n;nz=_@a?Nh^b?v z6$_&n>f&~qXUy})i}w3~s#plq(AE}mV6=CS81CI2-I)`lv|*|k_Ed7v%1LK{Jb_&5 zK1F}V)1f;Aa}te)qV>q&gbIld*rIl!e_xTWwAL3iR7P|+?bw#h0b&|J6_L||mFg&L z&c}Fdp#+(RU}WGK1{3^!3u`QWGlaV#e~cBw!dcl3MBq262RS}?hMvDD3*K?Z?xMV2puVs>hm(Yj^Zn7J!Cdm5EDf< zv=t2-)jCQeOdt z1sb}ODkOWfU8E~ud7;ly?}ng$B5zineF4>MKy75TgZ62}UsdCg4aWoHRbSV8DS7Qjxd+gkfXK$lCXz9(5S& z{Q~+vulJm3^&g)-bMfHp=Gw)jR~kK)?BMKd_SK6QvoF5#N;XyS3rHAm-oJk(d!@@* zcdtL&gD_%bcA8!Ol0f4@Sl4uFR0xL?X*iscpk}n7@?%xNwA_THMl=~mmoy-b$pM&> zCq?Tld5SmpyS!l$-3B#fc}xSjhA@pSIL2e_kjonGkZp3P+Zr3H0tgs@w4$2uT~|z? zDU6A6yU#N7ptWZi@yuP|;$N$haB|R3L zR+x<;)I$I+sa4cjj-X5N0`?0ik(=ilufOEoYu!1u)7tX#t&}(2Y6%L!@0U-Vf>34G zK7|)#PdFdm6}CBWlX2OK_1mV{`Ny$mAq%?z_YkP?A!CD9`(ipL(8)OY&?`lv&vCwWRfma2A>lG#I zrV2B-NWNs5uYe}?-RBGAd9E?_K{f>TH4_kl#FsHV0$`AN$FBgi=j!1s!GB`?rFn+0 zxB&H;8$HO$YS#`N;8zxti^IeGrK?x@No_$}Ugqb;84^D_e(~Z#zFYS>x@BFLEqY2Z z>Ylz*)Yt2{hiKkE+`D*)H|#Ybzoh}Fr`)K%c1!z9K&KEPdy#eXa!Laj^K=q;3Y$~w zDIq9J0rfb_#A#QknAOj@#$MY9G$rHA{v*tKNlEA;0*#(U`ARJfpjoY_`|~^Cyst0k zM;tymn-P_4-Ijq>>mS0~#~!^OUqTZ^k1QfXvCs$m#K|jz z<$YOE+!tgr`yh3^Z{^ArdEXP+s={m+>lxB0fd3;rzI%Kqjy3sa)|iWU6j))HR=v|< z#rN6Wpr{6?pMHog4?_^u-*L@V)82D$7tywpgbBkvj{G&}OL?Tk z5QF{|+oJQ#gJUf8^%MvZW#GR;IlwUm3+mf87(+}?2SbKte3R40S8PKm?B9^{kjD@} zkqW#3G^sTdl!3`CfKM2){D5QND^hg6vx5Vn$N#d^W&h*4?vHWOJ#xqSELzL)NxvILQ%`XX=Pwn zX5Ptc0JibSOcGlE5XHmG8KMJ*=fB5%{AyAS%8;Ud-b%P>)sqtC&A^+6Gzs>EEqM);3K3l zmUwyqEsm&O$%>X!m+?K^3wp_!s#Ahy^-P4Gx*gG zH~@E}ui1R^J(zAA@fY}{3|$PaBDjK}bNfsnuT;-*Q~CT9*FU)*wPBd=HRL`H)N9pC z8u-G&1374VfP(>sadhvF0KBO(+RU$jd9wJ;|zkM0a2L#KQkVH zz>s8OBnL6Gn~+V@p9a~2p@@5oI|ez?Jx#QOAC?`EGEvA&Jr4EBqnHIoPs3U-H5#?r z`cSq%TP&_0pPgOLBu7WrT}fKsId*K_0Iyu@@Zp8^Zdv<1mmvNGn-RxG*o{tEK8jx8 z9?9@Lu?mE(c#8SyEc^e)SzF{BHx%d6*0rl3&dcfcblqgs3M)jdFakn=&Ap3D)W~dc z|Fmgf`bv>AqhJ~{g~i3|hF1gaE1_b+zgrWwkuEd_AYjoye1WA4dxA$+q4`gU_rH&h z9kJ-ufU`IOj0;8lsFgi)VZC%Nd)GggzH6OR?;ahUJUrUpzy9L6bL;o+-(SCe_wG6h z$&a__;@rLyPEs6#VHj3@g!5yu9vmf(FTUI*#6|~L!U>Pf`5r_Uy}Fwl>d95huC;Z* z+%Y+{aLLoDNoT%>ARQ2_SDPv1N~FA|DMd$<~CuZ^kOe;>ReCY(}Q+DR%-kio6BhztC%=AJQAzn?N4covj9@ zLotMx%t+0NUbDH2_Z%4R0q+n#L*AEK+wi`C_d%T;vWB!V{@SusJJnPXDE1K#kM0&Q zsraIbW;e~4ih~Ou$7n>kK_6ZQ!W=MP?K`}*Ssemuy}x-eO`hW$gw+(o^qTtG+JF1M znZ1z^^-w1z*4I1LY98b_Dx>+i!3j)}Y@C>z+sK&a#u11D`RViq0MZ+4J3EUTi%;>o zvAv1!4BZ&AEKegojqVWcPkdWo_?u6@5}l>Jd&_WdV2Fvc_LJ3FSL_S>528qEAQPVO z0L%kVMLE>sn<4#Iu&dF!vI>T(g;C94z`8U66Of73Yz(kSgP)l>6Sy`sl`^ZNS%fZT zj$|VY6p>M^0J=0TR{WuZzDXRKN7$EtWIS|cyAKHE*DX~@1bq_|!R5`(pgz;Hyc_`G z6=adP3c=Cc-T9!K6(=&#oyaAsGq4q$sZ*tZwe#X8^drq@Y3dQe=`cN|bNm^v zxdR6{Fm0;T)Cb=UXZM-lNOV9_NPOKkSR2450;V9Rm;~YRFxPO*BesnZ33QUEXl7OE zh0ue*VZAW90$nd%bAnFAL+1?{g7D151WsyNM>o?R9VAR-axSF8mP7# zg4P1~i%a(nJPRE-OZ*%-dJN@{hlVD`#+U^m)|bD5?{$Hxo@`^j&=tIRMqeFR%iZt} z20EZ$SLW8%biluKz`u0hzIODTCm9bi)zO~_c|i`A9r-wVOjE>2c7hrj?eEgAz@bvY z6?S7Ob&AF@ex@aP3FR=E+SyjW;A&ts;~NQI2C`Sp1b{@FD$V$!Dd8d-_h6}A$2j1L z7odbs!Y}e^z5lAmt z&TOHDaR^FoK$M;$&KR1*idPq77lejc-`Fr3jdW2LlB3{0Gku5#NO{v-0ZD`8y4kOn zp(BSA+f4c}V?KIAYkL;+4}BALv1l>l*)&oG^?_X^b>E9rB|dR@y;s|w%8lnrrS0>p ztJ|66+}t+Uf40x;?rtkRJ=+IQpB~zVs?w9w&)5^PGad4RvkT8KL{u>h7c5Hn$w!ji zK;ZF+P9B>m_?f}RFKnH`!mYysAQDfVH=Q|7KvL6E%Q?>FlPN8s)G9bn40g0n00G)T znr~^ZE=mBh8G;D@d~)(YrRGuCkcTj%3Lb3FOq+g+WHB@YvJDl0ck7^4K)3r8Z?y8` zIX+h@gW?Fr=4&>rM;CL9!O*#(F7+B%!>Ka(&st~IYuxv*ao4t{ifWO2So}WblGSDP z68HT}914XKm=$}-eIHVjRrLh-{S(}Yix<@<_ptf>Cf`IumHXZn_uVaSYq{FfQ(fLl zWKRw39y+v02`QGloslvr$ICC`3zxw!h$qoA_9=ZKwDHm6!lHDvmLh7Hb_Ia!f4F08 zjE+V)=uG2cbZw0gWm8Ft9-}Dm7q?Ss8&ZMr1u!I1N=l_D^&g^|47LiRmmn74M(Hsq zuRCes6++X1RSne49B)@bT`Rz8{>8+^UvSzfv`N5_q&tC=w+c$`ilqSFA*M%3<3cV2 zDr%@XOc|ZbLRaAW4#YWju|v68%fL^?*$DSMh(K%aH_g*w3IWhbk>K z^qq+ljVufNK6INxe*pmDkZyRvcU^yv-w(#Mn0*f_^N5(~}B zSV7FTfaPVj1lc;vP{?zJjuXneRBoY7q4kFk#hJx;*PbXQoJoof?dJm3X{4P*00wu| zp@M38!*Id%1;D>7&`ctq1@lw_@Fi}=P8BWxC7AMK;I;nK0P~y_7Xpor8BaRYdiVn_PV9UU}i>B|!(W6WH(o<|T zt!h`1x}LRBidmc9aUBdk7ti*MbR7!qqo@BhSd{98F7Nc z;*EHau9KKQWyF&*_1H3eHc+LS;oin!To-NMM-LgJA_P@55C&Mr7AlW|!(eww~ zy~&mE>Q%IU`b}?(hCVB8r$}nim;%ZWcJzmehG{lR2VG|fs8I|Wp(>*3DYX3iJQYkB zGP+`brua!d+4yR5N&s-o5HU611OX#>%=c`?SDdb`h$E06gWa82971H#3$2;EmzUSq zOEU`#CH16qa(cQ1Y*EQRI%*s}aiVnp<(EtNFZUfeQp#5|)kdQPgwb|syX%P4M$pL) zAG#0uBVUe?Mk!Q9*r9*yV`mp|9l!~JD-lL7>~=7Y-araS2AOtqCf*Nb+1aQ|J6VcS zqR7ttvdC*_^PoCNI=;*785_00el&D%y$bRN9m9`yy{y^uW>E)vpw^3Vu8QDWlL!Sr zwy8T?ky_L+sZ3KdplnN;#SHHamA7-b zN}=$+$1cy8l2+&PggZv@cQ5c@F&+}p_m$mrO> z9!nqFvq5{e2h}O6PqB_gyFa(5nHgK7xZh0cO}P&%F!nKy>i7#7x$Aq%26UqF?|LYG z4^j+va}HER zZ~vO|+0Q9`A9fXRY?*#TwG%%_0?g7G=;?u}-r}tsY9Ja9Xm--!{k&y?aVklluffgk zjn==A>RNfyOZh*6MfxF_2zwE;47YQii>;xZ@<`ep91MbyK4So-@e$-cBXzkU>-q>% zpb?3$)kY`<8hK(0)O}B)D?{BU8 z;BSlSVbh%r3}=Ggb0(m29Av>=49q&<9LAfPLfam>=_`*Ob23Ym3jGD9alKLe)!hlx zH|6xNCOsb9Qf6aR!if3A#P6yGO(MB}^H>)2#Q@Fx*c}kYk=SH@43udNn3-WjgPYM5 z*N0o%^UDv>9hzCAYRjRqfrkU!fT%ZW4>4Ic(*F?S>Nni%!z`DrS0A3{PG5Pq|GWMC z+9AFFM)k^->WzN=(3+gQcw~~$z+D(RXj8=liDPq`)cqtP#G=Dvh)hD@q&TRMD~bfR z!bZk!HqBgfq-y!LSN%*1qoYj~Gs4Nh*F0zoP!^|^g#n4q^*`+g!mx+|V?vJ(oD5~J652%_R3BUi^BJ%loumKRDqn@{6lZ7o zG!*Z#rY%OEPS56H`zv4x%InT7gfI^!z!9yx;4ap(0n|t#|0Cad^g4hBEW8iAE2MGY zl}QL;c@;o`5y_)OkVWAfQ@wfJEm}!2Wx42vgM}qU90L9T_=na74p~xn#pNrWg;BjY zTIyhcDV`@?Y0}mXXH9AL;Bd87%FQh278VS&ER5A`qlmyPl`_z-FwmzMF-E%VKDpn> z9e17)K^57Wu6RC-@SAjqQ9p-m!IDQqNaTiDx)gOOsEbYS%=JED`SIG$^8Z&`@Cy)I z&Isv>2>9km^0hgvwxTCfb3u)&j#LgXG7!weKxD9y`Vtv?9n^q0>JC_}0KW^5`s$kFyhZ4VxJJVin%AN@A@KxMpUa`fgp)j&3m*Yeh1)ICq%CCTcjm0Ts>UflRLtGU}9|RwOAiiOB{_)MvrjP%-^tgGPRxM&$+S z%aNL4>DTGd7e^pxR4KoYRdv7OL4l`jV+e`#_c--GK%L-f&zsQG_!!L>y#C_+mC5t- zsakDb@csFZ-n=q$eJx)O=u2+eL|f21H@4?uwNZS)6LfS`BOrwSj^>w z)qVAPr6RzT33F5Z#>!#?QL6w;Cg_uc^6abtJ9bDo)V-;2*X=!JmMi|0t`U6)e`sH4 zu{YgQJ)PLKE5lx>E(-r4O*WwW8*pMHVqq z!iOxXaWzdE{ zp!RYc14vE`;_V!keLXh;$5E-=Wq0W7D92gy|Aa~I$;q&@O>AF3?$LoH9>Ch4WQe|3 z2y1_Eq z|3GVVVkA580ExwN>cLI!=1#TPc+lV)!~NqAu5;I)l{xc)$(fZx?}M}4*=z5nxYW-0 zv%S}@^*%ekladmbk6}K8{0&v|VpwLJV6ZGB%qhB_A_xv0|5RAsh>ILy)4e2z7_moucnm&jQ=sgfIx2ann!6oqx`ja}%K5l>w6oO%H zVR8U0Zs77Lf5NfL#H&ntnI$5COL1v>4kX`LkyiU%z~L@#WWETbx`OTUlRUy#3Nksl`;+ts%=3StfdKPYh3QAHAElzkis=;G5QtICZGK^~>vYj}%F)rY)?kAT-KWGz=7R&P>cCN^Jm zlPC$tO*$vSN2GnYF!XmIj$$~dk^7Kv!E05_-Hz);=$RKmcbmtqg5OCjn7)+-bPNAW zn6yyU6-;G#=I}r5Qdrmb|3G~3cZi6)arS@Ey7l(T!xesI?(M~gi~Qp9+t(gmdkW?l6c4lK{9{O-ZAI*;A%zFZ7B(azLync~E~>k&_hjxN4hVamvS5pz48 z1oIK%kx;=ii0$Fe-0Lp@Aps$$O_J;d8RZ+eTP>GdQ4t@K$mv(m8HE}pH20_Oh1HlNirB*~?GBa7O&F=>9-JRZDv= zmm24qNuQNWK;c1yx~koO3KC9go#M7W#r@}xX6jK3|Bu#nUDl54X~*+Phv?kEBmjqF zO*X-u43DUmeUsk4QYC>DKn`{bu)xUrdu73-{e@}zp!TA7#`Q?kcKs%tzok{>zi z>`;?cBSY7DVBqGx$D5sO=04!;i~OF9ouSP;r~04n!hHva8qsE-XS%QA823A>QpK0b zn4Cc4m?-BC;_df*8&#%!X0O=O;)p{Smih{2X=p1MuYEVmFgaxl*Rna3T+9I0j zg#uspT_om$9Y}z$DY_~2o0@=z6343_^^H6UiUONr<T!_ zZHUw7bg?E&Z^*&dv_uNv%zd>yRh@KCEt^OK$_3NmbF*I2&FjH1M16J03G4Q4&RBzr zDwnTRpQEO|{H-K1#fbVl!aIk2%FCE-JjQy<_j_LHd86l-TPKF+&oGX&rGXxGHg=9bc!_)IRVV!*&84?nW}ZmVUi?%K_xXF==U?UK2YT)ue>MN& zi}_cN-|HEeSNxmzeKP#*n5u)9gENRt{UcApPbsNq<=D{MGh>e}#csyAB4vV+?ULs9 z$il!D1+m*8Kn(JeIQF97+36>x@GIag(9V`Hdqm&E`&SCbImJbnfoS~H2`Q1nwoTh! zOKX639w0}vz`0eG7X=k~iJ@dZ&!yBXPJ*kVd~Osr^1n{x<92~{u(_0LaV3a9myyM9 zluA>XH5KD9gBdgfeFG%=rk|`LECx|7xXmRaXL86$Qwdr2%Id|Gs-btC&ZKh*2`Ol; zzf`&al|ZOJ0PXl*no$U92ch)(V@9Ff14iADZ{SA^S=Rs$^dffnJeywqAR&`pym4mr z_|>7+zN@9x+|~4i_saI_>Ww$AUcG^W|BYAQc;m)%ue@>tIGaxWt2;Cc?N|3lY*dIP zzL&?xU@UyPx)p)vYrV9Xp&jO4HOegAf=Jf=@p$j zkNb8Orv1oBq^fB5>2A$0RDonbnu;DShK8Tbfy10bQ!9(2u!A1A>r&lVaZ@M>iOwK+ z9?OQEa_p7@##6G^%!fd9)9h$ z*S?p_E#-2BR4Ok^@K&;sxB@&NsIBsaAX&W3fh5k_%A@F7EpKD1xv^4(53yYp5GyK5z5nvd*;C-l z`;E_hCJT&jc5Zq)`^is#`cAgHgtq6_#K{eLt`OBANlof@Fo(nzGrASBG)EpQYy&?2 z{q}d*J&Ta5@r{aqHXR~Mr1&+oFD&s1cZI&*v4MN)GQTXVJSIV8Cj-S9kotmgStL5Q zY1vlgT~Jq>1_vS!$1U(#um$lTQ)b!=Q_5LgNBYFTZP7-iU zfP9p^q=xZwpb(uL=m8X~1jVCGUYi5)7MC5ZUH1r;^}AGJmD{RA)aCqtp<|aq4WflP zt2cUn3EYYGV`tC4`TBwMtrmFXmnSriD_d{f;%-e?*2FDA{Mcddib$6)t}MXovC9^J zq(`!$dx-X9sR2NV!c7E8Goy-&-5P-?$N`4A4sKq$Q%qoGZ}3HjzLK?i=!L8#M?e`m zc;Rm)?2+8T&af{wor7o_Lv`q|?tEJ>L6T&GvmM@sJg{P_5_bZHA9!qsBoYdFR=e0 z-@@(3VU-hLpV|bWBM9dqw0sbQOz0!QTPijtjy&nyI>@m=&zVqB@`6H}lnGh>!x)vS ze(TuT8&H6KA0~Or*G{&!H^%N9KdvrAp+bH3_HCqcqUWi*&peY?yD3OvIipJ+l~ThP zH4O@MG%>paRn(#9l3~N5y}59OA!dVx{+*P7w)hcD02Md-Vyq~AKaN|D*#>7#i8`2D zm44m%0Pm#^0m~>kJSJE??6_)Xn2OpU=aax7qL@TV1pG*a$NXqkf*2id06S~tRVc=2 zViLr5B{w_qzN8Z9yrQ$+xw9I4WCRUT*>SGxVD}jTO5d@RmqBQHAJZ;r3m_`he%XZr z?-g2LU3X6Nytuy5&*$gwr6_Fqs-Y!J@mnE@J#m}-XXIXlpqASzrodwyTAQ23P{?$q zzdwv(iJHQ{WL~a1Kb0|HRdM zp=Y095_DxMs%mKkc#VJFXncHf@?!%MbP0V`O6dqPp{?N9qN7W}P)e@$&!zeF#N-)Q z)692atO}z!E;~?rALESqtcOWC_1&my8ux?#4XUOy$hk-z_A{;PZ;w74R41rP|D72peQ7)KRg|k5$DIBrFI>R(=g*?Bk{mNF01D`NHru)ZwiyUV=2>{;eHcj z-tZ|p=y;F-J1RKYh<^}s>Pi5%l5y5d07<(h|GQio7(rbrn?8n1$4$TDp`Na7F$0bgaaa&rTX>FK$v2M)|# zymDoZQ`NcS7cLx}>*lwJ%?mw7CWfLl`a?Yi>csUSMCul53xnV}L+ z*Z0`*ezXLQwqBGKeTciHI!02^FN?MyD?;FDCIlREbN!frL9DH0_MbG|>89o1$6D`0 z&#h`gGy_Waf_WQjjDi`%^_J;cq^QR5O$e`Xc|MCU1HM4j{U&g{(9Fn{z$h&nPOxnH zTZHM|5`IgzY(#6`4+X+^VYvbA&B`c5zmrGg98V^O$U4Gzku52s?|%hqnW#m7usF4{ zat1;{XI{B_^-Ohq{0!(_&zwJTVsrCM3R*#D_GksQ4SDy9vwB0c6rCt4H11?K2+_~> zAbc8?Ad{4rhRx7AW_qWg6o9}k?(#rSgQ4#zqm^V9^~ELbu!0>qaF}i?Xb+=$Ukas0 zfu#tG`dpCykO{QD%)73kc>q(&SK7q=$wCc#v z9_QrM7r-6qIG}yt{FgH+1H5nem2ek<%}bywQQ;vfppTKkKm(d)ozKs@Ky+XPL7G`i z3jWGO+;t;0n6NIr*|Qz_-{)F$o7>yoz(C%+bF{Uzw6*cm2bQ}XUJ?{0i| zgZGYZ++LNRc}8Bny>Zl&ubpUQD#TU|Gc=W6K$)4|SfznomFULA4@`ZQZco^^A>$JH z0BResZZvBfAPfsPAx0I1_0Q>mawDpcQpJHDpPaIGuF;pU!=}4d21W*@9~ClMlAA(e zX>&#?!>3^qP!Y8&b;Ql9)nio??;pqQ*;8*u85Gy&$Exh2b)ecp4Kvber7nW~ZYaNj zPYTP$8uoN3pOF54%HBLU&igzQ#CP9U-`(hL^Z|6^1_%(1gSc;k01xm0?*qK=QwJql zqN&SNVk!0{PBL-Ua>j9l#3Lz_#4+rhNVU7!gq1@+s_^~Z7w{!*2dTkI1Aan zhaWR7GElc`0t=SU`3t|ice=IEG0@l7aAabl0cD5?CVMy}1!}{};lmBdTpj4j8+IHx z(A_|bek*>N?sqjjs#vee3zQW3ez~?)wwY(3;sls?@$$ptvdZ4i zTlu~Cv^aY&-C!&?RWh2J#(i(%q5$s&X#v-5%lk{*>~cL6qtevyWVQYGQ~1ae5F-=L zcnFT9#^!*M&^0-%TjvKc=@gwV6bYV#t*=&a{E1uq?LZA+l67PLzU~*uGaWX`USino zgV;QqSh_wSz%xy{Y+UHH6cg10*TsX!fy2R|mHSZ@&KIv1X-~KmHDO>P8&3^jZ!kzg~A+HD`>P z`eW48&wcdK0ShH!(+C`X;wJx_ptFHR@)>`ro3Ej&Uqn7X4UGI*?2WlfjQ6Me=XQ*5 zyS%*2ZSC&p;DCYW&R@F3)te@F^xV1q-2TVz>&Ee=ds|`AtNKrDBw^enHMX5F6s%ZD z6d06z(H*4-hN_O0;hG}DJd$}YmrUqjS3^$Ut(4F3ukkJ`Q}IH#eu_gMML-7<<=~Sl z&@M-(VO1&QBVX$mFgTeF)#lYbXN-Kt<10)zH_K#jjh@1z;XxH&a9u|&+KTj*8G@sjWr-o zuZ^#d^W(j1``7pL`%eUR$ftWxoaj9*?+D1nqnY^5qHp7?ab|63NhvkOnlLI<{NK3q z{_T$tnWP|ly0AF6ed7K2tvr-9n9J^1vZ-w-<NcCEW zcE>O$kG-S69@jJl7~~xB(ZD%GVYRkxcwc0A|2p8o`~H!ixcO}R)GtdSex0dKR-GRo z=;-YoZ_V{z+%;D}HGB2~fcas5^3a*C+3U0XyR)Cp^8LH&XD>{iIWu`-wtiQ?qMlkF zY0B7e5Ud?plakRut6%-4Xa5hvC02(jqgGi~ym9w^=|x$lMrs3l#mrgt9SE0{0#$?a zR5YeG%IAba8_wcBM=k-5xP(v1bhDgY%2FT%R7EtQC*d^4@ttNfFlse`wm`5WmXIx# zN?&^%OMxB3B$xxi5^k|>$n}UhCE&G-E(#FRest(UTZ3tUy7K^41i{vg+H)*}1@VT} zkXen#8{+YMPYmt+P5|w^$MBW3JE9f!A!0DULhL}Rdpm}w2B+rc)JwZ}tLH9WRL$08 zrnRwAJ$&}8s>=d+HL)n0#X(hfOn17XCBDlpM?mG9N;*Q0V^ighg_sm(GM|lnf$nv! zDBwZxB`FwWQGAxC{&i7kzzx1;2C(~b5S=QZ!LX4vYDUcn?R>xMie3^gWvFBGZolvarRMa6p)s2hQj27Cm`;F}ieux0=(h?a!fAhx;-FiE}r^2o3}IjcBh zrt$$0mAO?1zU30S_usYe8$o(>&SFF*f$m)iBYwu;GsMMJpne!}J7cK~a5;iiNt1c-Y6=M##4tpNSFGowP2e8au~RFY!e)v<10ReSq&6o6p(H8? z9#@kxeh zKmY**ZH#DR_FE>fqA~cZPqegXp1G<#B)9*F8sDd|X}eKZr5QzV1zl+CK~2>g zz^GYkt9RqT0dM=vCgM?vshwXQ*zCb z9DJSpMdQ2k+a{`tPo3xzWiurCuoe&0;^A4s??_fg-Hk(NiOTxGt zkFgh7(L;)vL=8*wgeJoSa0!@W09|-V3@6YWF+3B$ocEj?@H8{^4DOn}%HXc=2Pi)N z7`VOO-s-;eA0sk8RrgZeD|HX*z@hcxrK#h~L(98%4IDkVfB(S!^XCVOcCrzp&;$2g zeRV+X>}+cr=;M2MSsu9g^2-YYn-Ioj!?q!w8dJw!#Mged$A%*Em9@fUvsKQxH=8vk zmGW2?IHn<+C$NC!w@`cl`{$D^Jhh&+Q7!)#N3?xBhJ{9Xtc`>uvO!x4#O1hNw0RvP zqmWP!sE_f~f}K*>UczBzAkP(mp5?J_t4(W)acE*wd#n$`hbn@NJfE|@Ka1)q0$x%@ zG06gKE-oT{{GS070mXG3vw1kE&xBU{}SfV)4qjeb~+YdDk?(0 zC>B1{11tdUQHU0dgMmg~or-Ub@PQ_pZwI{N-(t~;Tn_Pk?f}|zl0v-Q%4#Zp@A&X| z*HC}g;L*vJMilwu2ahx~i|NIc`-5En;AH$rb9!YZ-FzfIIoJ=R&(3`_9=aQ>mRk+6 z%XO5Eh{3;N#m6!e?2}##>$3f-3L*kTan+2I`7;)-JPxO%ftoU7WQFU#TF%jHxECr<_;f7!A%u+ z=G%@(v*`HQ;uZj9`deCNpNIy&jY3V;pj8=+{+dm4%`(nKpZ)d3_?Bz?5}lo)(fP&2 zRL7;OQ<~1LL`o-{$^qKOeMas=dgDLT zUgK78gwEt_lwuDnJFzBHB{=Yfz|dk9d7uEr^nrr2+9Jy{P22|{5EZ~$3AS*7&()(V z8f~YRMq8F1cR(zhmFvWlZl&t2Ege}iw+o-&eBAexMbU{dBF=*w!?I0T4suPaN@|Cr zCS^I*6Tos0u^lU>b;J|mIL&lnqmsG(5|v#V>ETH~^Si+svG~kJ6g%7K(e_kX+u>`j z9uM7d^s$-2nf?1Y@U?Rtg+e^efwi5JO(+`&()JQpdaAD}+q7~?g&8oCLlt-iqf@9< zNS??bt5F$b#iHj*0kIM}SA#s_=zXR*zA8j?waN4@htx44>uEgbyY>D0WnjvXd=%fL5L3e|8&S11X2d09}CB<@R@F_eDcBq>HZ0=wS!obHi z714E+1JIt0IWZuXY!q_E@Bzb6;8Jvx&5TVbFfY zP=N|0MRuwanskuOL>?XQZcjD09mh^uD-@Ev!^irDhwBD+9(uQpOSMfGy<>xi4h5RpRU*Wp8+LKDD^%mo_0Q!}QEjbqwwJ62&h)tsYqb8}-tTvafxa|+)amTy09 zwrJo8X6qZk5`iiW;((Ug<~uyYV}1Jr8@5dUeiZS z!bdjO)jHc`9}l5baNKU1ZS7L!mF>$iGkmpT1DPJxZKy9;t>=&(#8>R=>IEdpOddp4 z9`37T{=k$ey%psucMB_WE=PL^%aOqPvfNy8sO4UI9`8c(fL>05TC>nnn>m9&d+(kD>b5xE$WlZi{fmYaEo%e&C zd*On5D0X6UF}8cMOU|5)gX$MEf0H58jKwA~@i&P{KXH=i$19b2mWWp4HM-B0KYpCH ziS4(X4>7Mo89qypkSJA4Ik>Upp!}psmWwo`!BQw6cH&#Z3Rg=BprmK$(|_dbgH%v< zWgfwiD2-_DwS&6>O_H%u5-@Ra2%*1axp5(CnIYIWRLsEWBnUxQozmg0+yM3_NRgm2 zu6h>gabSHC`>qHRS|X~ZWOHU}S%ZH1Fb3xF5cN*U|6;|+iDgl7I8OKods#0dxS6DC)G z&S?TY`xB@$K(70?htIDj4W zt)7ggF}*K9hXlJf_P+r!*)*W!PwAwTCt{KzZZUNw)dSxDU1w2KJrg465J%kpK2PG0 z>O$Bla)|L+00p=*KhoEnNH^zl_KBGpySJ;o-A2#eM%E=s_O8Q+8|}tg^{T4Y#sxI2 ztXmYLp=a-}rDI;F+y&TN?dh#eO_``5xI(e`EbaNfIBTEmVC{B3q!xlL4%U~3!50O? zmJr~A4DE^?n3pw-Vyc{C@WHP>t`y~{?ZcEMYXDcaVH@t0F86k6-{Z~UNoD(tvba~x zf-n&+WX%rg5ghkE+f)pI!ya!kek)i*TLj))szeim6vE%?Ou%d73#GX=aP#%<*fzN~ z$xRN-u3hD>w(Zj!)*85m(L#LfB6snM#HRbS9HGxIymy7$F}p8*C3oRM?n->$><)!L zyHf9+}E2#X}}6TY7O z%Q%&-RU(&f@|0D=oy_tbGzm~2F;9?$(36CJX~E14Ve2q$%+aE{CKIn=7Y_)uG40=E zn{F%jAZ%noC$E9>k0DsNNQ^`H@O}zmS(LWXTk;E(A&Q)O_gyuAi{X>Ibv7&DzV2ac z89=&V44m>V=%MK^s@mFQYyj||N<-&6ai~|Ni$Hu9{!Xtjdi6f<6k%nbM-|~^th#Dz zD|PKVcyPG&#p8>+ckf-9%w%@#y7R((efYr{)BTWZ?b-3@mE|M!{o;@l%=#Bpb%~ z!g7>4Wl6lFxjlIkpI>}DT`I@p|3h5IqFEk5$sjPS*ad{BK>_YI3}T07fb`Uu82|@_ z;(?|lCMcR+?XJA}MgWXQ*Bb$7>y&K!4| zyI|g&zI;!7~R#GcMg(jyU)&Q+p1az*5}{=4$qJ5GkNhdKFXpc?Hq+TjC^ z5;&?%&TvPHR^SfgG|4c~Swt3DE3*@y-+bIsmItHXP$7vZ2O0uH@g!^?tOvVBV*s3Q z4Z2&I3T%+2bhl6jWF!*%p9l^9jaSopAU{N`Rey^v_FnX^X~GtM=w9vb-ckk5cYuBbGMn?lv#9>k!=GEMJk_p{z|Bm}b(W;}TgYQQMenqse z-_LPK3u<4d3M&#`k^$>IpabV$0EPC<$nH<&oD~=XX$IhpVU4$(4EFpcz_JD^HxTe* z
    uNvvIG6 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 z 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
  • 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π>{|aJqYD! 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 z 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
  • mz?P`UmjMb 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≻rET` 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

  • w|RBQ$YWnm)DC+dpy^JTodajs* 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�=(s_m= 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
    m#-;&ng7&N=>)~%bM{Ts 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
    <%@8bc+Mlebx&wk*n6G#E0DvyaY2-*PnM5LlR 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 z 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
    plTvR=WUD9q?^aY7AzFpwIDX-jtwbm zG>2Rdkb8h}b_doZZvoR4W*vF)`=zje*h=QdRRSmYHK6g&bwni=6cCk?+RDPYqd~2a zWPzio%>Ba@8yz4!Wb30GTn%W!CCp5Ehz2xGLW5`uG8XfPkaSpjqOhHbLott-DAKyA z$^{QN`ke{sB04q$C*iyC@lrBb2y>B+i|8M0BOdE9Sm1aWde%ndBVy9Si*4G^O1_Kt z;okWTft@&g{Eo%)#1FswOCP@b=G4pPYtKBGy{|k?+h3WQDzk;9Jlxk;e&o65%5zKS zmX?>x)k33?&Dv%AwnDQ>SVUmZ{f}0)Bpr?{3z1k92`?_I!k~0yC89#trME z8x101H&!BRH<{_7V(Rp>B33uFIt>P9Z|p|qPUJ3U1=G|BRGM=z-I%oCU_XiH?MyCK zc5G#&wrdoX-{Lj!<(%sZUG=3()EmUn=VW`x{kvaO~@an`*SF1-$MO$lF$!+!ApvQXQ zQnqAeN=l9TS+-0_SSvSaB%32ZZjA&&d}GU++P`I5=r4)d_b>}~qOZQ{v6ABO-km!SFRZVx9$vl4?NH$% z2@>TUxpXWSj>oiQqeY%{TU68t5`?<}(k=&t88Pp=5Ds#un&(JyHtq1Ne%TqJO9di; zMoDlbsaR|~2P`m>(k6iUs#;2ua|5xj1+P+yQG(ahMfjUl@3obLuMR+WduZNRa^^fm zEo6dx%nz8x){Si5)Qe7wnJN$H-B69c2gP=_oQ9pv=x6%s%zUiAc2uoaQ*1Z$oEV!p z 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%0Al_)WZw*V##RKUfceW9 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%0DWtAtZNw9PAc}+ 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

    Br-oTFmUkT{Myv;RDb_`vZ2t>)iu8~ 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 z%0D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

    kHB54CZj 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 z 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�+Rd1LiBx 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�eY}$F6Vf-ek?b_ZJf-ocCzE}qC)sB^ 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 literal 0 HcmV?d00001 diff --git a/ruoyi-admin/zhFonts/fonts.dir b/ruoyi-admin/zhFonts/fonts.dir new file mode 100644 index 000000000..fed95442c --- /dev/null +++ b/ruoyi-admin/zhFonts/fonts.dir @@ -0,0 +1,4 @@ +3 +SIMSUN.TTC -misc-simsun-medium-r-normal--0-0-0-0-p-0-iso10646-1 +SIMSUN.TTC -misc-simsun-medium-r-normal--0-0-0-0-p-0-iso8859-1 +SIMSUN.TTC -misc-simsun-medium-r-normal--0-0-0-0-p-0-koi8-r diff --git a/ruoyi-admin/zhFonts/fonts.scale b/ruoyi-admin/zhFonts/fonts.scale new file mode 100644 index 000000000..fed95442c --- /dev/null +++ b/ruoyi-admin/zhFonts/fonts.scale @@ -0,0 +1,4 @@ +3 +SIMSUN.TTC -misc-simsun-medium-r-normal--0-0-0-0-p-0-iso10646-1 +SIMSUN.TTC -misc-simsun-medium-r-normal--0-0-0-0-p-0-iso8859-1 +SIMSUN.TTC -misc-simsun-medium-r-normal--0-0-0-0-p-0-koi8-r -- Gitee From e1a26b0388372fd64f16a67a16f4c52673163c7c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 17 Jan 2025 17:12:57 +0800 Subject: [PATCH 389/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E7=BC=BA?= =?UTF-8?q?=E5=B0=91=E5=AF=BC=E5=8C=85=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/org/dromara/system/service/impl/SysOssServiceImpl.java | 1 + 1 file changed, 1 insertion(+) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssServiceImpl.java index 496113742..f745a9911 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssServiceImpl.java @@ -36,6 +36,7 @@ import org.springframework.web.multipart.MultipartFile; import java.io.File; import java.io.IOException; +import java.time.Duration; import java.util.ArrayList; import java.util.Collection; import java.util.List; -- Gitee From e8acfac09190e29b4aea8cfc41d43dac099603a4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 17 Jan 2025 18:03:00 +0800 Subject: [PATCH 390/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20=E6=96=87?= =?UTF-8?q?=E4=BB=B6=E4=B8=8B=E8=BD=BD=20=E8=AE=BE=E7=BD=AEcontent-length?= =?UTF-8?q?=E6=97=A0=E6=95=88=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/org/dromara/common/oss/core/OssClient.java | 9 +++++++-- .../dromara/system/service/impl/SysOssServiceImpl.java | 3 +-- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java b/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java index 59c599bd0..e3b20dde3 100644 --- a/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java +++ b/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java @@ -32,6 +32,7 @@ import java.net.URL; import java.nio.file.Files; import java.nio.file.Path; import java.time.Duration; +import java.util.function.Consumer; /** * S3 存储协议 所有兼容S3协议的云厂商均支持 @@ -239,10 +240,11 @@ public class OssClient { * * @param key 文件在 Amazon S3 中的对象键 * @param out 输出流 + * @param consumer 自定义处理逻辑 * @return 输出流中写入的字节数(长度) * @throws OssException 如果下载失败,抛出自定义异常 */ - public long download(String key, OutputStream out) { + public void download(String key, OutputStream out, Consumer consumer) { try { // 构建下载请求 DownloadRequest> downloadRequest = DownloadRequest.builder() @@ -258,7 +260,10 @@ public class OssClient { Download> responseFuture = transferManager.download(downloadRequest); // 输出到流中 try (ResponseInputStream responseStream = responseFuture.completionFuture().join().result()) { // auto-closeable stream - return responseStream.transferTo(out); // 阻塞调用线程 blocks the calling thread + if (consumer != null) { + consumer.accept(responseStream.response().contentLength()); + } + responseStream.transferTo(out); // 阻塞调用线程 blocks the calling thread } } catch (Exception e) { throw new OssException("文件下载失败,错误信息:[" + e.getMessage() + "]"); diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssServiceImpl.java index f745a9911..c2eb08c79 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssServiceImpl.java @@ -178,8 +178,7 @@ public class SysOssServiceImpl implements ISysOssService, OssService { FileUtils.setAttachmentResponseHeader(response, sysOss.getOriginalName()); response.setContentType(MediaType.APPLICATION_OCTET_STREAM_VALUE + "; charset=UTF-8"); OssClient storage = OssFactory.instance(sysOss.getService()); - long contentLength = storage.download(sysOss.getFileName(), response.getOutputStream()); - response.setContentLengthLong(contentLength); + storage.download(sysOss.getFileName(), response.getOutputStream(), response::setContentLengthLong); } /** -- Gitee From 008e02a40663ccedb5916644911ab2dc639774cd Mon Sep 17 00:00:00 2001 From: gssong <1742057357@qq.com> Date: Fri, 17 Jan 2025 21:58:43 +0800 Subject: [PATCH 391/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=E4=BB=BB?= =?UTF-8?q?=E5=8A=A1=E5=8A=9E=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/FlwTaskServiceImpl.java | 28 +++++++++++++------ 1 file changed, 19 insertions(+), 9 deletions(-) diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java index faa7d9394..f95821d32 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java @@ -138,6 +138,9 @@ public class FlwTaskServiceImpl implements IFlwTaskService { // 获取抄送人 List flowCopyList = completeTaskBo.getFlowCopyList(); FlowTask flowTask = flowTaskMapper.selectById(taskId); + if (ObjectUtil.isNull(flowTask)) { + throw new ServiceException("流程任务不存在或任务已审批!"); + } Instance ins = insService.getById(flowTask.getInstanceId()); // 获取流程定义信息 Definition definition = defService.getById(flowTask.getDefinitionId()); @@ -180,23 +183,30 @@ public class FlwTaskServiceImpl implements IFlwTaskService { this.setCopy(task, flowCopyList); // 根据流程实例ID查询所有关联的任务 List flowTasks = this.selectByInstId(instance.getId()); + if (CollUtil.isEmpty(flowTasks)) { + return; + } + List taskIdList = StreamUtils.toList(flowTasks, FlowTask::getId); + // 获取与当前任务关联的用户列表 + List associatedUsers = WorkflowUtils.getFlowUserService().getByAssociateds(taskIdList); + if (CollUtil.isEmpty(associatedUsers)) { + return; + } List userList = new ArrayList<>(); // 遍历任务列表,处理每个任务的办理人 for (FlowTask flowTask : flowTasks) { - // 获取与当前任务关联的用户列表 - List associatedUsers = WorkflowUtils.getFlowUserService().getByAssociateds(Collections.singletonList(flowTask.getId())); - if (CollUtil.isNotEmpty(associatedUsers)) { - userList.addAll(WorkflowUtils.buildUser(associatedUsers, flowTask.getId())); + List users = StreamUtils.filter(associatedUsers, user -> Objects.equals(user.getAssociated(), flowTask.getId())); + if (CollUtil.isNotEmpty(users)) { + userList.addAll(WorkflowUtils.buildUser(users, flowTask.getId())); } } // 批量删除现有任务的办理人记录 - if (CollUtil.isNotEmpty(flowTasks)) { - WorkflowUtils.getFlowUserService().deleteByTaskIds(StreamUtils.toList(flowTasks, FlowTask::getId)); - } + WorkflowUtils.getFlowUserService().deleteByTaskIds(taskIdList); // 确保要保存的 userList 不为空 - if (CollUtil.isNotEmpty(userList)) { - WorkflowUtils.getFlowUserService().saveBatch(userList); + if (CollUtil.isEmpty(userList)) { + return; } + WorkflowUtils.getFlowUserService().saveBatch(userList); } /** -- Gitee From 4f3cbc4bc2d7de023bd92795144c8539eb36271a Mon Sep 17 00:00:00 2001 From: AprilWind <2100166581@qq.com> Date: Sat, 18 Jan 2025 10:37:42 +0800 Subject: [PATCH 392/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=E5=88=86?= =?UTF-8?q?=E9=A1=B5=E6=9E=84=E5=BB=BA=E6=B2=A1=E6=9C=89=E9=BB=98=E8=AE=A4?= =?UTF-8?q?=E5=80=BC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/dromara/common/mybatis/core/page/TableDataInfo.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/core/page/TableDataInfo.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/core/page/TableDataInfo.java index 8ecfb54aa..370f47995 100644 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/core/page/TableDataInfo.java +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/core/page/TableDataInfo.java @@ -50,6 +50,8 @@ public class TableDataInfo implements Serializable { public TableDataInfo(List list, long total) { this.rows = list; this.total = total; + this.code = HttpStatus.HTTP_OK; + this.msg = "查询成功"; } /** -- Gitee From 001297ca7af5ccd438c42cd381ec99f3456c843a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Mon, 20 Jan 2025 11:34:51 +0800 Subject: [PATCH 393/540] =?UTF-8?q?=E5=8F=91=E5=B8=83=205.3.0-BETA=20?= =?UTF-8?q?=E5=85=AC=E6=B5=8B=E7=89=88=E6=9C=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .run/ruoyi-monitor-admin.run.xml | 2 +- .run/ruoyi-server.run.xml | 2 +- .run/ruoyi-snailjob-server.run.xml | 2 +- README.md | 4 ++-- pom.xml | 2 +- ruoyi-common/ruoyi-common-bom/pom.xml | 2 +- script/docker/docker-compose.yml | 8 ++++---- 7 files changed, 11 insertions(+), 11 deletions(-) diff --git a/.run/ruoyi-monitor-admin.run.xml b/.run/ruoyi-monitor-admin.run.xml index bcac3d594..3c2cc61b6 100644 --- a/.run/ruoyi-monitor-admin.run.xml +++ b/.run/ruoyi-monitor-admin.run.xml @@ -2,7 +2,7 @@ - diff --git a/.run/ruoyi-server.run.xml b/.run/ruoyi-server.run.xml index f59be88cc..4cfac4f3f 100644 --- a/.run/ruoyi-server.run.xml +++ b/.run/ruoyi-server.run.xml @@ -2,7 +2,7 @@ - diff --git a/.run/ruoyi-snailjob-server.run.xml b/.run/ruoyi-snailjob-server.run.xml index f1d3447bd..bfa74427f 100644 --- a/.run/ruoyi-snailjob-server.run.xml +++ b/.run/ruoyi-snailjob-server.run.xml @@ -2,7 +2,7 @@ - diff --git a/README.md b/README.md index 96708e355..2d4456475 100644 --- a/README.md +++ b/README.md @@ -10,8 +10,8 @@ [![License](https://img.shields.io/badge/License-MIT-blue.svg)](https://gitee.com/dromara/RuoYi-Vue-Plus/blob/master/LICENSE) [![使用IntelliJ IDEA开发维护](https://img.shields.io/badge/IntelliJ%20IDEA-提供支持-blue.svg)](https://www.jetbrains.com/?from=RuoYi-Vue-Plus)
    -[![RuoYi-Vue-Plus](https://img.shields.io/badge/RuoYi_Vue_Plus-5.2.3-success.svg)](https://gitee.com/dromara/RuoYi-Vue-Plus) -[![Spring Boot](https://img.shields.io/badge/Spring%20Boot-3.3-blue.svg)]() +[![RuoYi-Vue-Plus](https://img.shields.io/badge/RuoYi_Vue_Plus-5.3.0--BETA-success.svg)](https://gitee.com/dromara/RuoYi-Vue-Plus) +[![Spring Boot](https://img.shields.io/badge/Spring%20Boot-3.4-blue.svg)]() [![JDK-17](https://img.shields.io/badge/JDK-17-green.svg)]() [![JDK-21](https://img.shields.io/badge/JDK-21-green.svg)]() diff --git a/pom.xml b/pom.xml index 32ea9a496..087cc7367 100644 --- a/pom.xml +++ b/pom.xml @@ -13,7 +13,7 @@ Dromara RuoYi-Vue-Plus多租户管理系统 - 5.2.3 + 5.3.0-BETA 3.4.1 UTF-8 UTF-8 diff --git a/ruoyi-common/ruoyi-common-bom/pom.xml b/ruoyi-common/ruoyi-common-bom/pom.xml index dbc5f1c2b..19f2d0372 100644 --- a/ruoyi-common/ruoyi-common-bom/pom.xml +++ b/ruoyi-common/ruoyi-common-bom/pom.xml @@ -14,7 +14,7 @@ - 5.2.3 + 5.3.0-BETA diff --git a/script/docker/docker-compose.yml b/script/docker/docker-compose.yml index 4ba24cc81..8b6befcad 100644 --- a/script/docker/docker-compose.yml +++ b/script/docker/docker-compose.yml @@ -98,7 +98,7 @@ services: network_mode: "host" ruoyi-server1: - image: ruoyi/ruoyi-server:5.2.3 + image: ruoyi/ruoyi-server:5.3.0-BETA container_name: ruoyi-server1 environment: # 时区上海 @@ -113,7 +113,7 @@ services: network_mode: "host" ruoyi-server2: - image: ruoyi/ruoyi-server:5.2.3 + image: ruoyi/ruoyi-server:5.3.0-BETA container_name: ruoyi-server2 environment: # 时区上海 @@ -128,7 +128,7 @@ services: network_mode: "host" ruoyi-monitor-admin: - image: ruoyi/ruoyi-monitor-admin:5.2.3 + image: ruoyi/ruoyi-monitor-admin:5.3.0-BETA container_name: ruoyi-monitor-admin environment: # 时区上海 @@ -140,7 +140,7 @@ services: network_mode: "host" ruoyi-snailjob-server: - image: ruoyi/ruoyi-snailjob-server:5.2.3 + image: ruoyi/ruoyi-snailjob-server:5.3.0-BETA container_name: ruoyi-snailjob-server environment: # 时区上海 -- Gitee From 27b4992f6e239039cd442f7de4a74e5a2bf0dcde Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Mon, 20 Jan 2025 12:38:10 +0800 Subject: [PATCH 394/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20=E6=B5=81?= =?UTF-8?q?=E7=A8=8B=E7=B1=BB=E5=88=AB=E5=9B=9E=E6=98=BE=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/FlwCategoryController.java | 2 +- .../workflow/domain/vo/FlowCategoryVo.java | 2 -- .../workflow/service/IFlwCategoryService.java | 2 +- .../service/impl/FlwCategoryServiceImpl.java | 16 ++++++++-------- 4 files changed, 10 insertions(+), 12 deletions(-) diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwCategoryController.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwCategoryController.java index 9520cbdef..37d414fcd 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwCategoryController.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwCategoryController.java @@ -125,7 +125,7 @@ public class FlwCategoryController extends BaseController { * @param categoryBo 流程分类 */ @GetMapping("/categoryTree") - public R>> categoryTree(FlowCategoryBo categoryBo) { + public R>> categoryTree(FlowCategoryBo categoryBo) { return R.ok(flwCategoryService.selectCategoryTreeList(categoryBo)); } diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/FlowCategoryVo.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/FlowCategoryVo.java index 2c72143cb..c5d27855f 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/FlowCategoryVo.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/FlowCategoryVo.java @@ -4,8 +4,6 @@ import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; import com.alibaba.excel.annotation.ExcelProperty; import io.github.linpeilie.annotations.AutoMapper; import lombok.Data; -import org.dromara.common.excel.annotation.ExcelDictFormat; -import org.dromara.common.excel.convert.ExcelDictConvert; import org.dromara.workflow.domain.FlowCategory; import java.io.Serial; diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IFlwCategoryService.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IFlwCategoryService.java index 43bc175fd..478e93ab6 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IFlwCategoryService.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IFlwCategoryService.java @@ -43,7 +43,7 @@ public interface IFlwCategoryService { * @param category 流程分类信息 * @return 流程分类树信息集合 */ - List> selectCategoryTreeList(FlowCategoryBo category); + List> selectCategoryTreeList(FlowCategoryBo category); /** * 校验流程分类是否有数据权限 diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwCategoryServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwCategoryServiceImpl.java index 1e9507b80..053d2492b 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwCategoryServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwCategoryServiceImpl.java @@ -94,24 +94,24 @@ public class FlwCategoryServiceImpl implements IFlwCategoryService { * @return 流程分类树信息集合 */ @Override - public List> selectCategoryTreeList(FlowCategoryBo category) { + public List> selectCategoryTreeList(FlowCategoryBo category) { LambdaQueryWrapper lqw = buildQueryWrapper(category); List categorys = baseMapper.selectVoList(lqw); if (CollUtil.isEmpty(categorys)) { return CollUtil.newArrayList(); } // 获取当前列表中每一个节点的parentId,然后在列表中查找是否有id与其parentId对应,若无对应,则表明此时节点列表中,该节点在当前列表中属于顶级节点 - List> treeList = CollUtil.newArrayList(); + List> treeList = CollUtil.newArrayList(); for (FlowCategoryVo d : categorys) { - Long parentId = d.getParentId(); - FlowCategoryVo categoryVo = StreamUtils.findFirst(categorys, it -> it.getCategoryId().longValue() == parentId); + String parentId = d.getParentId().toString(); + FlowCategoryVo categoryVo = StreamUtils.findFirst(categorys, it -> it.getCategoryId().toString().equals(parentId)); if (ObjectUtil.isNull(categoryVo)) { - List> trees = TreeBuildUtils.build(categorys, parentId, (dept, tree) -> - tree.setId(dept.getCategoryId()) - .setParentId(dept.getParentId()) + List> trees = TreeBuildUtils.build(categorys, parentId, (dept, tree) -> + tree.setId(dept.getCategoryId().toString()) + .setParentId(dept.getParentId().toString()) .setName(dept.getCategoryName()) .setWeight(dept.getOrderNum())); - Tree tree = StreamUtils.findFirst(trees, it -> it.getId().longValue() == d.getCategoryId()); + Tree tree = StreamUtils.findFirst(trees, it -> it.getId().equals(d.getCategoryId().toString())); treeList.add(tree); } } -- Gitee From 37b2d648b1135623531805a5747fd48b12e5367b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Mon, 20 Jan 2025 12:52:55 +0800 Subject: [PATCH 395/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E5=8F=91?= =?UTF-8?q?=E8=B5=B7=E6=B5=81=E7=A8=8Bapi=E8=BF=94=E5=9B=9E=E5=80=BC?= =?UTF-8?q?=E4=BD=BF=E7=94=A8=E5=AF=B9=E8=B1=A1=E5=B0=81=E8=A3=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../domain/dto/StartProcessReturnDTO.java | 30 +++++++++++++++++++ .../common/core/service/WorkflowService.java | 3 +- .../controller/FlwTaskController.java | 8 ++--- .../workflow/service/IFlwTaskService.java | 3 +- .../service/impl/FlwTaskServiceImpl.java | 13 ++++++-- .../service/impl/WorkflowServiceImpl.java | 3 +- 6 files changed, 50 insertions(+), 10 deletions(-) create mode 100644 ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/StartProcessReturnDTO.java diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/StartProcessReturnDTO.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/StartProcessReturnDTO.java new file mode 100644 index 000000000..9bcbd12c3 --- /dev/null +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/StartProcessReturnDTO.java @@ -0,0 +1,30 @@ +package org.dromara.common.core.domain.dto; + + +import lombok.Data; + +import java.io.Serial; +import java.io.Serializable; + +/** + * 启动流程返回对象 + * + * @author Lion Li + */ +@Data +public class StartProcessReturnDTO implements Serializable { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 流程实例id + */ + private Long processInstanceId; + + /** + * 任务id + */ + private Long taskId; + +} diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/service/WorkflowService.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/service/WorkflowService.java index 565362e56..9f2d11a37 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/service/WorkflowService.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/service/WorkflowService.java @@ -2,6 +2,7 @@ package org.dromara.common.core.service; import org.dromara.common.core.domain.dto.CompleteTaskDTO; import org.dromara.common.core.domain.dto.StartProcessDTO; +import org.dromara.common.core.domain.dto.StartProcessReturnDTO; import java.util.List; import java.util.Map; @@ -66,7 +67,7 @@ public interface WorkflowService { * @param startProcess 参数 * @return 结果 */ - Map startWorkFlow(StartProcessDTO startProcess); + StartProcessReturnDTO startWorkFlow(StartProcessDTO startProcess); /** * 办理任务 diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwTaskController.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwTaskController.java index 5d9535afc..463916b10 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwTaskController.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwTaskController.java @@ -2,6 +2,7 @@ package org.dromara.workflow.controller; import lombok.RequiredArgsConstructor; import org.dromara.common.core.domain.R; +import org.dromara.common.core.domain.dto.StartProcessReturnDTO; import org.dromara.common.core.domain.dto.UserDTO; import org.dromara.common.core.validate.AddGroup; import org.dromara.common.idempotent.annotation.RepeatSubmit; @@ -20,7 +21,6 @@ import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import java.util.List; -import java.util.Map; /** * 任务管理 控制层 @@ -44,9 +44,9 @@ public class FlwTaskController extends BaseController { @Log(title = "任务管理", businessType = BusinessType.INSERT) @RepeatSubmit() @PostMapping("/startWorkFlow") - public R> startWorkFlow(@Validated(AddGroup.class) @RequestBody StartProcessBo startProcessBo) { - Map map = flwTaskService.startWorkFlow(startProcessBo); - return R.ok("提交成功", map); + public R startWorkFlow(@Validated(AddGroup.class) @RequestBody StartProcessBo startProcessBo) { + StartProcessReturnDTO startProcessReturn = flwTaskService.startWorkFlow(startProcessBo); + return R.ok("提交成功", startProcessReturn); } /** diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IFlwTaskService.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IFlwTaskService.java index 80bfa948c..11034e753 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IFlwTaskService.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IFlwTaskService.java @@ -1,5 +1,6 @@ package org.dromara.workflow.service; +import org.dromara.common.core.domain.dto.StartProcessReturnDTO; import org.dromara.common.core.domain.dto.UserDTO; import org.dromara.common.mybatis.core.page.PageQuery; import org.dromara.common.mybatis.core.page.TableDataInfo; @@ -26,7 +27,7 @@ public interface IFlwTaskService { * @param startProcessBo 启动流程参数 * @return 结果 */ - Map startWorkFlow(StartProcessBo startProcessBo); + StartProcessReturnDTO startWorkFlow(StartProcessBo startProcessBo); /** * 办理任务 diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java index f95821d32..631faabb0 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java @@ -11,6 +11,7 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; +import org.dromara.common.core.domain.dto.StartProcessReturnDTO; import org.dromara.common.core.domain.dto.UserDTO; import org.dromara.common.core.enums.BusinessStatusEnum; import org.dromara.common.core.exception.ServiceException; @@ -86,7 +87,7 @@ public class FlwTaskServiceImpl implements IFlwTaskService { */ @Override @Transactional(rollbackFor = Exception.class) - public Map startWorkFlow(StartProcessBo startProcessBo) { + public StartProcessReturnDTO startWorkFlow(StartProcessBo startProcessBo) { String businessId = startProcessBo.getBusinessId(); if (StringUtils.isBlank(businessId)) { throw new ServiceException("启动工作流时必须包含业务ID"); @@ -102,7 +103,10 @@ public class FlwTaskServiceImpl implements IFlwTaskService { if (ObjectUtil.isNotNull(flowInstance)) { BusinessStatusEnum.checkStartStatus(flowInstance.getFlowStatus()); List taskList = taskService.list(new FlowTask().setInstanceId(flowInstance.getId())); - return Map.of(PROCESS_INSTANCE_ID, taskList.get(0).getInstanceId(), TASK_ID, taskList.get(0).getId()); + StartProcessReturnDTO dto = new StartProcessReturnDTO(); + dto.setProcessInstanceId(taskList.get(0).getInstanceId()); + dto.setTaskId(taskList.get(0).getId()); + return dto; } FlowParams flowParams = new FlowParams(); flowParams.flowCode(startProcessBo.getFlowCode()); @@ -119,7 +123,10 @@ public class FlwTaskServiceImpl implements IFlwTaskService { if (taskList.size() > 1) { throw new ServiceException("请检查流程第一个环节是否为申请人!"); } - return Map.of(PROCESS_INSTANCE_ID, instance.getId(), TASK_ID, taskList.get(0).getId()); + StartProcessReturnDTO dto = new StartProcessReturnDTO(); + dto.setProcessInstanceId(instance.getId()); + dto.setTaskId(taskList.get(0).getId()); + return dto; } /** diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WorkflowServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WorkflowServiceImpl.java index 6be20c4cf..41a44ac95 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WorkflowServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WorkflowServiceImpl.java @@ -5,6 +5,7 @@ import cn.hutool.core.util.ObjectUtil; import lombok.RequiredArgsConstructor; import org.dromara.common.core.domain.dto.CompleteTaskDTO; import org.dromara.common.core.domain.dto.StartProcessDTO; +import org.dromara.common.core.domain.dto.StartProcessReturnDTO; import org.dromara.common.core.service.WorkflowService; import org.dromara.common.core.utils.StringUtils; import org.dromara.warm.flow.orm.entity.FlowInstance; @@ -105,7 +106,7 @@ public class WorkflowServiceImpl implements WorkflowService { * @param startProcess 参数 */ @Override - public Map startWorkFlow(StartProcessDTO startProcess) { + public StartProcessReturnDTO startWorkFlow(StartProcessDTO startProcess) { return flwTaskService.startWorkFlow(BeanUtil.toBean(startProcess, StartProcessBo.class)); } -- Gitee From 8636d8b3e8d37faf9686b57630d6f3117c4522fd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Mon, 20 Jan 2025 15:08:40 +0800 Subject: [PATCH 396/540] update snailjob 1.3.0-beta2 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 087cc7367..b5afcdeec 100644 --- a/pom.xml +++ b/pom.xml @@ -31,7 +31,7 @@ 3.43.0 2.2.7 4.3.1 - 1.3.0-beta1.1 + 1.3.0-beta2 1.4.6 0.2.0 1.18.36 -- Gitee From c10016837490469324e0f0b4e83189dbaaba2cc9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Mon, 20 Jan 2025 18:26:54 +0800 Subject: [PATCH 397/540] =?UTF-8?q?update=20=E5=88=A0=E9=99=A4=E6=97=A0?= =?UTF-8?q?=E7=94=A8=E9=93=BE=E6=8E=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 1 - 1 file changed, 1 deletion(-) diff --git a/README.md b/README.md index 2d4456475..08832377e 100644 --- a/README.md +++ b/README.md @@ -23,7 +23,6 @@ > 系统演示: [传送门](https://plus-doc.dromara.org/#/common/demo_system) > 官方前端项目地址: [plus-ui](https://gitee.com/JavaLionLi/plus-ui)
    -> 成员前端项目地址: 基于vben [ruoyi-plus-vben](https://gitee.com/dapppp/ruoyi-plus-vben)
    > 成员前端项目地址: 基于vben5 [ruoyi-plus-vben5](https://gitee.com/dapppp/ruoyi-plus-vben5) > 文档地址: [plus-doc](https://plus-doc.dromara.org) -- Gitee From 6c28f8a0ddf3d821c81fe820d8e4bd141c99af24 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Wed, 22 Jan 2025 11:12:38 +0800 Subject: [PATCH 398/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E9=A9=B3?= =?UTF-8?q?=E5=9B=9E=E5=A2=9E=E5=8A=A0=E9=99=84=E4=BB=B6=E4=B8=8A=E4=BC=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/org/dromara/workflow/domain/bo/BackProcessBo.java | 5 +++++ .../dromara/workflow/service/impl/FlwTaskServiceImpl.java | 1 + 2 files changed, 6 insertions(+) diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/BackProcessBo.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/BackProcessBo.java index 80b9691d9..3117a33f5 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/BackProcessBo.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/BackProcessBo.java @@ -30,6 +30,11 @@ public class BackProcessBo implements Serializable { @NotNull(message = "任务ID不能为空", groups = AddGroup.class) private Long taskId; + /** + * 附件id + */ + private String fileId; + /** * 消息类型 */ diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java index 631faabb0..01221261c 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java @@ -388,6 +388,7 @@ public class FlwTaskServiceImpl implements IFlwTaskService { flowParams.skipType(SkipType.REJECT.getKey()); flowParams.flowStatus(applyNodeCode.equals(bo.getNodeCode()) ? TaskStatusEnum.BACK.getStatus() : TaskStatusEnum.WAITING.getStatus()) .hisStatus(TaskStatusEnum.BACK.getStatus()); + flowParams.hisTaskExt(bo.getFileId()); taskService.skip(task.getId(), flowParams); Instance instance = insService.getById(inst.getId()); -- Gitee From a22dc9537f1bc3896af38ab4bb572a56fb9611be Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Wed, 22 Jan 2025 11:13:24 +0800 Subject: [PATCH 399/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E4=B8=9A?= =?UTF-8?q?=E5=8A=A1=E4=BA=8B=E4=BB=B6=E7=9B=91=E5=90=AC=E5=99=A8=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0=E6=B5=81=E7=A8=8B=E5=AE=A1=E6=89=B9=E5=8F=82=E6=95=B0?= =?UTF-8?q?=E4=BC=A0=E9=80=92=20=E6=9B=B4=E6=96=B9=E4=BE=BF=E7=9A=84?= =?UTF-8?q?=E5=AF=B9=E6=8E=A5=E4=B8=9A=E5=8A=A1=E6=95=B0=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/core/domain/event/ProcessEvent.java | 6 ++++++ .../workflow/handler/FlowProcessEventHandler.java | 5 ++++- .../workflow/listener/WorkflowGlobalListener.java | 11 ++++++++++- .../workflow/service/impl/FlwTaskServiceImpl.java | 2 +- .../workflow/service/impl/TestLeaveServiceImpl.java | 9 +++++++++ 5 files changed, 30 insertions(+), 3 deletions(-) diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/event/ProcessEvent.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/event/ProcessEvent.java index 21bfbefa4..6329b9c01 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/event/ProcessEvent.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/event/ProcessEvent.java @@ -4,6 +4,7 @@ import lombok.Data; import java.io.Serial; import java.io.Serializable; +import java.util.Map; /** * 总体流程监听 @@ -36,6 +37,11 @@ public class ProcessEvent implements Serializable { */ private String status; + /** + * 办理参数 + */ + private Map params; + /** * 当为true时为申请人节点办理 */ diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/handler/FlowProcessEventHandler.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/handler/FlowProcessEventHandler.java index 656e013e4..4b215ef60 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/handler/FlowProcessEventHandler.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/handler/FlowProcessEventHandler.java @@ -9,6 +9,8 @@ import org.dromara.common.tenant.helper.TenantHelper; import org.dromara.workflow.common.ConditionalOnEnable; import org.springframework.stereotype.Component; +import java.util.Map; + /** * 流程监听服务 * @@ -28,7 +30,7 @@ public class FlowProcessEventHandler { * @param status 状态 * @param submit 当为true时为申请人节点办理 */ - public void processHandler(String flowCode, String businessId, String status, boolean submit) { + public void processHandler(String flowCode, String businessId, String status, Map params, boolean submit) { String tenantId = TenantHelper.getTenantId(); log.info("发布流程事件,租户ID: {}, 流程状态: {}, 流程编码: {}, 业务ID: {}, 是否申请人节点办理: {}", tenantId, status, flowCode, businessId, submit); ProcessEvent processEvent = new ProcessEvent(); @@ -36,6 +38,7 @@ public class FlowProcessEventHandler { processEvent.setFlowCode(flowCode); processEvent.setBusinessId(businessId); processEvent.setStatus(status); + processEvent.setParams(params); processEvent.setSubmit(submit); SpringUtils.context().publishEvent(processEvent); } diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/listener/WorkflowGlobalListener.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/listener/WorkflowGlobalListener.java index 097d74ce7..e79fc3b43 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/listener/WorkflowGlobalListener.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/listener/WorkflowGlobalListener.java @@ -17,7 +17,9 @@ import org.dromara.workflow.service.IFlwInstanceService; import org.dromara.workflow.service.IFlwTaskService; import org.springframework.stereotype.Component; +import java.util.HashMap; import java.util.List; +import java.util.Map; /** * 全局任务办理监听 @@ -81,10 +83,17 @@ public class WorkflowGlobalListener implements GlobalListener { Definition definition = listenerVariable.getDefinition(); String businessId = instance.getBusinessId(); String flowStatus = instance.getFlowStatus(); + Map params = new HashMap<>(); + // 历史任务扩展(通常为附件) + params.put("hisTaskExt", listenerVariable.getFlowParams().getHisTaskExt()); + // 办理人 + params.put("handler", listenerVariable.getFlowParams().getHandler()); + // 办理意见 + params.put("message", listenerVariable.getFlowParams().getMessage()); // 判断流程状态(发布:撤销,退回,作废,终止,已完成事件) String status = determineFlowStatus(instance, flowStatus); if (StringUtils.isNotBlank(status)) { - flowProcessEventHandler.processHandler(definition.getFlowCode(), businessId, status, false); + flowProcessEventHandler.processHandler(definition.getFlowCode(), businessId, status, params, false); } } diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java index 01221261c..2df51bb3e 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java @@ -153,7 +153,7 @@ public class FlwTaskServiceImpl implements IFlwTaskService { Definition definition = defService.getById(flowTask.getDefinitionId()); // 检查流程状态是否为草稿、已撤销或已退回状态,若是则执行流程提交监听 if (BusinessStatusEnum.isDraftOrCancelOrBack(ins.getFlowStatus())) { - flowProcessEventHandler.processHandler(definition.getFlowCode(), ins.getBusinessId(), ins.getFlowStatus(), true); + flowProcessEventHandler.processHandler(definition.getFlowCode(), ins.getBusinessId(), ins.getFlowStatus(), null, true); } // 构建流程参数,包括变量、跳转类型、消息、处理人、权限等信息 FlowParams flowParams = new FlowParams(); diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/TestLeaveServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/TestLeaveServiceImpl.java index a11e6c19a..a7be9275d 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/TestLeaveServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/TestLeaveServiceImpl.java @@ -28,6 +28,7 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.util.List; +import java.util.Map; /** * 请假Service业务层处理 @@ -131,6 +132,14 @@ public class TestLeaveServiceImpl implements ITestLeaveService { log.info("当前任务执行了{}", processEvent.toString()); TestLeave testLeave = baseMapper.selectById(Long.valueOf(processEvent.getBusinessId())); testLeave.setStatus(processEvent.getStatus()); + // 用于例如审批附件 审批意见等 存储到业务表内 自行根据业务实现存储流程 + Map params = processEvent.getParams(); + // 历史任务扩展(通常为附件) + String hisTaskExt = params.getOrDefault("hisTaskExt", "").toString(); + // 办理人 + String handler = params.getOrDefault("handler", "").toString(); + // 办理意见 + String message = params.getOrDefault("message", "").toString(); if (processEvent.isSubmit()) { testLeave.setStatus(BusinessStatusEnum.WAITING.getStatus()); } -- Gitee From 2d9930439673c5ae45f75650d0669b88c143d35d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Wed, 22 Jan 2025 11:19:51 +0800 Subject: [PATCH 400/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20WorkflowS?= =?UTF-8?q?ervice=20=E5=A2=9E=E5=8A=A0=E8=8E=B7=E5=8F=96=E6=B5=81=E7=A8=8B?= =?UTF-8?q?=E5=8F=98=E9=87=8F=E6=96=B9=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dromara/common/core/service/WorkflowService.java | 7 +++++++ .../dromara/workflow/service/IFlwInstanceService.java | 2 +- .../workflow/service/impl/FlwInstanceServiceImpl.java | 2 +- .../workflow/service/impl/WorkflowServiceImpl.java | 10 ++++++++++ 4 files changed, 19 insertions(+), 2 deletions(-) diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/service/WorkflowService.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/service/WorkflowService.java index 9f2d11a37..abbcbff19 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/service/WorkflowService.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/service/WorkflowService.java @@ -46,6 +46,13 @@ public interface WorkflowService { */ void setVariable(Long instanceId, Map variable); + /** + * 获取流程变量 + * + * @param instanceId 流程实例id + */ + Map instanceVariable(Long instanceId); + /** * 按照业务id查询流程实例id * diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IFlwInstanceService.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IFlwInstanceService.java index 97d84a280..99729c2a2 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IFlwInstanceService.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IFlwInstanceService.java @@ -123,7 +123,7 @@ public interface IFlwInstanceService { * @param instanceId 实例id * @return 结果 */ - Map instanceVariable(String instanceId); + Map instanceVariable(Long instanceId); /** * 设置流程变量 diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwInstanceServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwInstanceServiceImpl.java index f5153c8db..b3421789c 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwInstanceServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwInstanceServiceImpl.java @@ -344,7 +344,7 @@ public class FlwInstanceServiceImpl implements IFlwInstanceService { * @param instanceId 实例id */ @Override - public Map instanceVariable(String instanceId) { + public Map instanceVariable(Long instanceId) { Map map = new HashMap<>(); FlowInstance flowInstance = flowInstanceMapper.selectById(instanceId); Map variableMap = flowInstance.getVariableMap(); diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WorkflowServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WorkflowServiceImpl.java index 41a44ac95..f8a20b5b4 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WorkflowServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WorkflowServiceImpl.java @@ -78,6 +78,16 @@ public class WorkflowServiceImpl implements WorkflowService { flwInstanceService.setVariable(instanceId, variables); } + /** + * 获取流程变量 + * + * @param instanceId 流程实例id + */ + @Override + public Map instanceVariable(Long instanceId) { + return flwInstanceService.instanceVariable(instanceId); + } + /** * 按照业务id查询流程实例id * -- Gitee From c64de03d27e49baf46cca0c761e69b4da8dc743b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Wed, 22 Jan 2025 11:24:06 +0800 Subject: [PATCH 401/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20WorkflowS?= =?UTF-8?q?ervice=20=E5=A2=9E=E5=8A=A0=E8=8E=B7=E5=8F=96=E6=B5=81=E7=A8=8B?= =?UTF-8?q?=E5=8F=98=E9=87=8F=E6=96=B9=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/dromara/workflow/controller/FlwInstanceController.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwInstanceController.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwInstanceController.java index f85b8ff0a..ae99c16fa 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwInstanceController.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwInstanceController.java @@ -138,7 +138,7 @@ public class FlwInstanceController extends BaseController { * @param instanceId 流程实例id */ @GetMapping("/instanceVariable/{instanceId}") - public R> instanceVariable(@PathVariable String instanceId) { + public R> instanceVariable(@PathVariable Long instanceId) { return R.ok(flwInstanceService.instanceVariable(instanceId)); } -- Gitee From aeaa33ebd3c6be4f15da6b72dd56c27637b7047e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Wed, 22 Jan 2025 14:24:56 +0800 Subject: [PATCH 402/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20params?= =?UTF-8?q?=E5=8F=AF=E8=83=BD=E4=B8=BAnull=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/TestLeaveServiceImpl.java | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/TestLeaveServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/TestLeaveServiceImpl.java index a7be9275d..2c431737b 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/TestLeaveServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/TestLeaveServiceImpl.java @@ -1,6 +1,8 @@ package org.dromara.workflow.service.impl; +import cn.hutool.core.convert.Convert; import cn.hutool.core.date.DateUtil; +import cn.hutool.core.map.MapUtil; import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; @@ -134,12 +136,14 @@ public class TestLeaveServiceImpl implements ITestLeaveService { testLeave.setStatus(processEvent.getStatus()); // 用于例如审批附件 审批意见等 存储到业务表内 自行根据业务实现存储流程 Map params = processEvent.getParams(); - // 历史任务扩展(通常为附件) - String hisTaskExt = params.getOrDefault("hisTaskExt", "").toString(); - // 办理人 - String handler = params.getOrDefault("handler", "").toString(); - // 办理意见 - String message = params.getOrDefault("message", "").toString(); + if (MapUtil.isNotEmpty(params)) { + // 历史任务扩展(通常为附件) + String hisTaskExt = Convert.toStr(params.get("hisTaskExt")); + // 办理人 + String handler = Convert.toStr(params.get("handler")); + // 办理意见 + String message = Convert.toStr(params.get("message")); + } if (processEvent.isSubmit()) { testLeave.setStatus(BusinessStatusEnum.WAITING.getStatus()); } -- Gitee From d9713d0f8cf5b8df5be60949c0aada0e759f359b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Wed, 22 Jan 2025 16:32:17 +0800 Subject: [PATCH 403/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E6=B5=8B?= =?UTF-8?q?=E8=AF=95=E7=94=A8=E6=88=B7=E5=A2=9E=E5=8A=A0=E5=B7=A5=E4=BD=9C?= =?UTF-8?q?=E6=B5=81=E4=B8=9A=E5=8A=A1=E6=9F=A5=E7=9C=8B=E5=AE=A1=E6=89=B9?= =?UTF-8?q?=E6=9D=83=E9=99=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- script/sql/oracle/oracle_ry_vue_5.X.sql | 27 +++++++++ script/sql/postgres/postgres_ry_vue_5.X.sql | 27 +++++++++ script/sql/ry_vue_5.X.sql | 27 +++++++++ script/sql/sqlserver/sqlserver_ry_vue_5.X.sql | 58 ++++++++++++++++++- 4 files changed, 137 insertions(+), 2 deletions(-) diff --git a/script/sql/oracle/oracle_ry_vue_5.X.sql b/script/sql/oracle/oracle_ry_vue_5.X.sql index 2dd8198ff..94024c999 100644 --- a/script/sql/oracle/oracle_ry_vue_5.X.sql +++ b/script/sql/oracle/oracle_ry_vue_5.X.sql @@ -615,6 +615,8 @@ insert into sys_role_menu values ('3', '105'); insert into sys_role_menu values ('3', '106'); insert into sys_role_menu values ('3', '107'); insert into sys_role_menu values ('3', '108'); +insert into sys_role_menu values ('3', '118'); +insert into sys_role_menu values ('3', '123'); insert into sys_role_menu values ('3', '500'); insert into sys_role_menu values ('3', '501'); insert into sys_role_menu values ('3', '1001'); @@ -662,6 +664,12 @@ insert into sys_role_menu values ('3', '1042'); insert into sys_role_menu values ('3', '1043'); insert into sys_role_menu values ('3', '1044'); insert into sys_role_menu values ('3', '1045'); +insert into sys_role_menu values ('3', '1050'); +insert into sys_role_menu values ('3', '1061'); +insert into sys_role_menu values ('3', '1062'); +insert into sys_role_menu values ('3', '1063'); +insert into sys_role_menu values ('3', '1064'); +insert into sys_role_menu values ('3', '1065'); insert into sys_role_menu values ('3', '1500'); insert into sys_role_menu values ('3', '1501'); insert into sys_role_menu values ('3', '1502'); @@ -674,6 +682,25 @@ insert into sys_role_menu values ('3', '1508'); insert into sys_role_menu values ('3', '1509'); insert into sys_role_menu values ('3', '1510'); insert into sys_role_menu values ('3', '1511'); +insert into sys_role_menu values ('3', '1600'); +insert into sys_role_menu values ('3', '1601'); +insert into sys_role_menu values ('3', '1602'); +insert into sys_role_menu values ('3', '1603'); +insert into sys_role_menu values ('3', '1620'); +insert into sys_role_menu values ('3', '1621'); +insert into sys_role_menu values ('3', '1622'); +insert into sys_role_menu values ('3', '1623'); +insert into sys_role_menu values ('3', '11618'); +insert into sys_role_menu values ('3', '11619'); +insert into sys_role_menu values ('3', '11629'); +insert into sys_role_menu values ('3', '11632'); +insert into sys_role_menu values ('3', '11633'); +insert into sys_role_menu values ('3', '11638'); +insert into sys_role_menu values ('3', '11639'); +insert into sys_role_menu values ('3', '11640'); +insert into sys_role_menu values ('3', '11641'); +insert into sys_role_menu values ('3', '11642'); +insert into sys_role_menu values ('3', '11643'); insert into sys_role_menu values ('4', '5'); insert into sys_role_menu values ('4', '1500'); insert into sys_role_menu values ('4', '1501'); diff --git a/script/sql/postgres/postgres_ry_vue_5.X.sql b/script/sql/postgres/postgres_ry_vue_5.X.sql index b3499e89f..d18cfebd4 100644 --- a/script/sql/postgres/postgres_ry_vue_5.X.sql +++ b/script/sql/postgres/postgres_ry_vue_5.X.sql @@ -617,6 +617,8 @@ insert into sys_role_menu values ('3', '105'); insert into sys_role_menu values ('3', '106'); insert into sys_role_menu values ('3', '107'); insert into sys_role_menu values ('3', '108'); +insert into sys_role_menu values ('3', '118'); +insert into sys_role_menu values ('3', '123'); insert into sys_role_menu values ('3', '500'); insert into sys_role_menu values ('3', '501'); insert into sys_role_menu values ('3', '1001'); @@ -664,6 +666,12 @@ insert into sys_role_menu values ('3', '1042'); insert into sys_role_menu values ('3', '1043'); insert into sys_role_menu values ('3', '1044'); insert into sys_role_menu values ('3', '1045'); +insert into sys_role_menu values ('3', '1050'); +insert into sys_role_menu values ('3', '1061'); +insert into sys_role_menu values ('3', '1062'); +insert into sys_role_menu values ('3', '1063'); +insert into sys_role_menu values ('3', '1064'); +insert into sys_role_menu values ('3', '1065'); insert into sys_role_menu values ('3', '1500'); insert into sys_role_menu values ('3', '1501'); insert into sys_role_menu values ('3', '1502'); @@ -676,6 +684,25 @@ insert into sys_role_menu values ('3', '1508'); insert into sys_role_menu values ('3', '1509'); insert into sys_role_menu values ('3', '1510'); insert into sys_role_menu values ('3', '1511'); +insert into sys_role_menu values ('3', '1600'); +insert into sys_role_menu values ('3', '1601'); +insert into sys_role_menu values ('3', '1602'); +insert into sys_role_menu values ('3', '1603'); +insert into sys_role_menu values ('3', '1620'); +insert into sys_role_menu values ('3', '1621'); +insert into sys_role_menu values ('3', '1622'); +insert into sys_role_menu values ('3', '1623'); +insert into sys_role_menu values ('3', '11618'); +insert into sys_role_menu values ('3', '11619'); +insert into sys_role_menu values ('3', '11629'); +insert into sys_role_menu values ('3', '11632'); +insert into sys_role_menu values ('3', '11633'); +insert into sys_role_menu values ('3', '11638'); +insert into sys_role_menu values ('3', '11639'); +insert into sys_role_menu values ('3', '11640'); +insert into sys_role_menu values ('3', '11641'); +insert into sys_role_menu values ('3', '11642'); +insert into sys_role_menu values ('3', '11643'); insert into sys_role_menu values ('4', '5'); insert into sys_role_menu values ('4', '1500'); insert into sys_role_menu values ('4', '1501'); diff --git a/script/sql/ry_vue_5.X.sql b/script/sql/ry_vue_5.X.sql index 9e6244ddb..48e5f35b5 100644 --- a/script/sql/ry_vue_5.X.sql +++ b/script/sql/ry_vue_5.X.sql @@ -441,6 +441,8 @@ insert into sys_role_menu values ('3', '105'); insert into sys_role_menu values ('3', '106'); insert into sys_role_menu values ('3', '107'); insert into sys_role_menu values ('3', '108'); +insert into sys_role_menu values ('3', '118'); +insert into sys_role_menu values ('3', '123'); insert into sys_role_menu values ('3', '500'); insert into sys_role_menu values ('3', '501'); insert into sys_role_menu values ('3', '1001'); @@ -488,6 +490,12 @@ insert into sys_role_menu values ('3', '1042'); insert into sys_role_menu values ('3', '1043'); insert into sys_role_menu values ('3', '1044'); insert into sys_role_menu values ('3', '1045'); +insert into sys_role_menu values ('3', '1050'); +insert into sys_role_menu values ('3', '1061'); +insert into sys_role_menu values ('3', '1062'); +insert into sys_role_menu values ('3', '1063'); +insert into sys_role_menu values ('3', '1064'); +insert into sys_role_menu values ('3', '1065'); insert into sys_role_menu values ('3', '1500'); insert into sys_role_menu values ('3', '1501'); insert into sys_role_menu values ('3', '1502'); @@ -500,6 +508,25 @@ insert into sys_role_menu values ('3', '1508'); insert into sys_role_menu values ('3', '1509'); insert into sys_role_menu values ('3', '1510'); insert into sys_role_menu values ('3', '1511'); +insert into sys_role_menu values ('3', '1600'); +insert into sys_role_menu values ('3', '1601'); +insert into sys_role_menu values ('3', '1602'); +insert into sys_role_menu values ('3', '1603'); +insert into sys_role_menu values ('3', '1620'); +insert into sys_role_menu values ('3', '1621'); +insert into sys_role_menu values ('3', '1622'); +insert into sys_role_menu values ('3', '1623'); +insert into sys_role_menu values ('3', '11618'); +insert into sys_role_menu values ('3', '11619'); +insert into sys_role_menu values ('3', '11629'); +insert into sys_role_menu values ('3', '11632'); +insert into sys_role_menu values ('3', '11633'); +insert into sys_role_menu values ('3', '11638'); +insert into sys_role_menu values ('3', '11639'); +insert into sys_role_menu values ('3', '11640'); +insert into sys_role_menu values ('3', '11641'); +insert into sys_role_menu values ('3', '11642'); +insert into sys_role_menu values ('3', '11643'); insert into sys_role_menu values ('4', '5'); insert into sys_role_menu values ('4', '1500'); insert into sys_role_menu values ('4', '1501'); diff --git a/script/sql/sqlserver/sqlserver_ry_vue_5.X.sql b/script/sql/sqlserver/sqlserver_ry_vue_5.X.sql index 4607fb246..9f8481a22 100644 --- a/script/sql/sqlserver/sqlserver_ry_vue_5.X.sql +++ b/script/sql/sqlserver/sqlserver_ry_vue_5.X.sql @@ -1239,7 +1239,7 @@ INSERT sys_dict_data VALUES (18, N'000000', 1, N'新增', N'1', N'sys_oper_type' GO INSERT sys_dict_data VALUES (19, N'000000', 2, N'修改', N'2', N'sys_oper_type', N'', N'info', N'N', 103, 1, getdate(), NULL, NULL, N'修改操作') GO -INSERT sys_dict_data VALUES (20, N'000000', 3, N'删除', N'3', N'sys_oper_type', N'', N'danger', N'N', 103, 1, getdate(), NULL, NULL, N'删除操作') +INSERT sys_dict_data VALUES (20, N'000000', 3, N'删除', N3, N'sys_oper_type', N'', N'danger', N'N', 103, 1, getdate(), NULL, NULL, N'删除操作') GO INSERT sys_dict_data VALUES (21, N'000000', 4, N'授权', N'4', N'sys_oper_type', N'', N'primary', N'N', 103, 1, getdate(), NULL, NULL, N'授权操作') GO @@ -2479,6 +2479,10 @@ INSERT sys_role_menu VALUES (3, 107); GO INSERT sys_role_menu VALUES (3, 108); GO +INSERT sys_role_menu VALUES (3, 118); +GO +INSERT sys_role_menu VALUES (3, 123); +GO INSERT sys_role_menu VALUES (3, 500); GO INSERT sys_role_menu VALUES (3, 501); @@ -2573,6 +2577,18 @@ INSERT sys_role_menu VALUES (3, 1044); GO INSERT sys_role_menu VALUES (3, 1045); GO +INSERT sys_role_menu VALUES (3, 1050); +GO +INSERT sys_role_menu VALUES (3, 1061); +GO +INSERT sys_role_menu VALUES (3, 1062); +GO +INSERT sys_role_menu VALUES (3, 1063); +GO +INSERT sys_role_menu VALUES (3, 1064); +GO +INSERT sys_role_menu VALUES (3, 1065); +GO INSERT sys_role_menu VALUES (3, 1500); GO INSERT sys_role_menu VALUES (3, 1501); @@ -2597,6 +2613,44 @@ INSERT sys_role_menu VALUES (3, 1510); GO INSERT sys_role_menu VALUES (3, 1511); GO +INSERT sys_role_menu VALUES (3, 1600); +GO +INSERT sys_role_menu VALUES (3, 1601); +GO +INSERT sys_role_menu VALUES (3, 1602); +GO +INSERT sys_role_menu VALUES (3, 1603); +GO +INSERT sys_role_menu VALUES (3, 1620); +GO +INSERT sys_role_menu VALUES (3, 1621); +GO +INSERT sys_role_menu VALUES (3, 1622); +GO +INSERT sys_role_menu VALUES (3, 1623); +GO +INSERT sys_role_menu VALUES (3, 11618); +GO +INSERT sys_role_menu VALUES (3, 11619); +GO +INSERT sys_role_menu VALUES (3, 11629); +GO +INSERT sys_role_menu VALUES (3, 11632); +GO +INSERT sys_role_menu VALUES (3, 11633); +GO +INSERT sys_role_menu VALUES (3, 11638); +GO +INSERT sys_role_menu VALUES (3, 11639); +GO +INSERT sys_role_menu VALUES (3, 11640); +GO +INSERT sys_role_menu VALUES (3, 11641); +GO +INSERT sys_role_menu VALUES (3, 11642); +GO +INSERT sys_role_menu VALUES (3, 11643); +GO INSERT sys_role_menu VALUES (4, 5); GO INSERT sys_role_menu VALUES (4, 1500); @@ -3119,7 +3173,7 @@ INSERT INTO sys_oss_config VALUES (N'1', N'000000', N'minio', N'ruoyi', GO INSERT INTO sys_oss_config VALUES (N'2', N'000000', N'qiniu', N'XXXXXXXXXXXXXXXX', N'XXXXXXXXXXXXXXX', N'ruoyi', N'', N's3-cn-north-1.qiniucs.com', N'',N'N', N'', N'1', N'1', N'', 103, 1, getdate(), 1, getdate(), NULL) GO -INSERT INTO sys_oss_config VALUES (N'3', N'000000', N'aliyun', N'XXXXXXXXXXXXXXX', N'XXXXXXXXXXXXXXX', N'ruoyi', N'', N'oss-cn-beijing.aliyuncs.com', N'',N'N', N'', N'1', N'1', N'', 103, 1, getdate(), 1, getdate(), NULL) +INSERT INTO sys_oss_config VALUES (N3, N'000000', N'aliyun', N'XXXXXXXXXXXXXXX', N'XXXXXXXXXXXXXXX', N'ruoyi', N'', N'oss-cn-beijing.aliyuncs.com', N'',N'N', N'', N'1', N'1', N'', 103, 1, getdate(), 1, getdate(), NULL) GO INSERT INTO sys_oss_config VALUES (N'4', N'000000', N'qcloud', N'XXXXXXXXXXXXXXX', N'XXXXXXXXXXXXXXX', N'ruoyi-1250000000', N'', N'cos.ap-beijing.myqcloud.com', N'',N'N', N'ap-beijing', N'1', N'1', N'', 103, 1, getdate(), 1, getdate(), NULL) GO -- Gitee From a671d4a8a87d7b1faeea15b059ee3bc75cf9c053 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Wed, 22 Jan 2025 16:41:14 +0800 Subject: [PATCH 404/540] =?UTF-8?q?update=20warm-flow=20=E5=8D=87=E7=BA=A7?= =?UTF-8?q?=201.6.0=20=E6=AD=A3=E5=BC=8F=E7=89=88?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index b5afcdeec..4f19656ed 100644 --- a/pom.xml +++ b/pom.xml @@ -50,7 +50,7 @@ 8.7.2-20250101 - 1.6.0-m5 + 1.6.0 3.2.2 -- Gitee From 3bf26cd509f08e61e99d4a977fd37ff04f740458 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 24 Jan 2025 11:30:18 +0800 Subject: [PATCH 405/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20pg=E5=BC=BA?= =?UTF-8?q?=E7=B1=BB=E5=9E=8B=E6=A0=A1=E9=AA=8C=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dromara/workflow/service/impl/FlwDefinitionServiceImpl.java | 2 +- .../dromara/workflow/service/impl/FlwInstanceServiceImpl.java | 2 +- .../org/dromara/workflow/service/impl/FlwTaskServiceImpl.java | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwDefinitionServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwDefinitionServiceImpl.java index a881ba692..591339b3e 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwDefinitionServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwDefinitionServiceImpl.java @@ -107,7 +107,7 @@ public class FlwDefinitionServiceImpl implements IFlwDefinitionService { wrapper.like(StringUtils.isNotBlank(flowDefinition.getFlowName()), FlowDefinition::getFlowName, flowDefinition.getFlowName()); if (StringUtils.isNotBlank(flowDefinition.getCategory())) { List categoryIds = flwCategoryMapper.selectCategoryIdsByParentId(Convert.toLong(flowDefinition.getCategory())); - wrapper.in(FlowDefinition::getCategory, categoryIds); + wrapper.in(FlowDefinition::getCategory, StreamUtils.toList(categoryIds, Convert::toStr)); } wrapper.orderByDesc(FlowDefinition::getCreateTime); return wrapper; diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwInstanceServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwInstanceServiceImpl.java index b3421789c..db8ab71b9 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwInstanceServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwInstanceServiceImpl.java @@ -138,7 +138,7 @@ public class FlwInstanceServiceImpl implements IFlwInstanceService { queryWrapper.like(StringUtils.isNotBlank(flowInstanceBo.getFlowCode()), "fd.flow_code", flowInstanceBo.getFlowCode()); if (StringUtils.isNotBlank(flowInstanceBo.getCategory())) { List categoryIds = flwCategoryMapper.selectCategoryIdsByParentId(Convert.toLong(flowInstanceBo.getCategory())); - queryWrapper.in("fd.category", categoryIds); + queryWrapper.in("fd.category", StreamUtils.toList(categoryIds, Convert::toStr)); } queryWrapper.eq(StringUtils.isNotBlank(flowInstanceBo.getBusinessId()), "fi.business_id", flowInstanceBo.getBusinessId()); queryWrapper.in(CollUtil.isNotEmpty(flowInstanceBo.getCreateByIds()), "fi.create_by", flowInstanceBo.getCreateByIds()); diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java index 2df51bb3e..21a54d740 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java @@ -354,7 +354,7 @@ public class FlwTaskServiceImpl implements IFlwTaskService { wrapper.in(CollUtil.isNotEmpty(flowTaskBo.getCreateByIds()), "t.create_by", flowTaskBo.getCreateByIds()); if (StringUtils.isNotBlank(flowTaskBo.getCategory())) { List categoryIds = flwCategoryMapper.selectCategoryIdsByParentId(Convert.toLong(flowTaskBo.getCategory())); - wrapper.in("t.category", categoryIds); + wrapper.in("t.category", StreamUtils.toList(categoryIds, Convert::toStr)); } wrapper.orderByDesc("t.create_time"); return wrapper; -- Gitee From ecf7ebad5368016186b2082da537ead6bbfef8f1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 24 Jan 2025 11:30:46 +0800 Subject: [PATCH 406/540] =?UTF-8?q?update=20snailjob=20=E5=8D=87=E7=BA=A7?= =?UTF-8?q?=201.3.0=20=E6=AD=A3=E5=BC=8F=E7=89=88=20update=20warmflow=20?= =?UTF-8?q?=E5=8D=87=E7=BA=A7=201.6.6=20=E6=AD=A3=E5=BC=8F=E7=89=88?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index 4f19656ed..1300eb9cc 100644 --- a/pom.xml +++ b/pom.xml @@ -31,7 +31,7 @@ 3.43.0 2.2.7 4.3.1 - 1.3.0-beta2 + 1.3.0 1.4.6 0.2.0 1.18.36 @@ -50,7 +50,7 @@ 8.7.2-20250101 - 1.6.0 + 1.6.6 3.2.2 -- Gitee From ffe8b16ff3f793cba1e05daf66ec6df47cf93a4f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 24 Jan 2025 12:17:36 +0800 Subject: [PATCH 407/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20=E7=BF=BB?= =?UTF-8?q?=E8=AF=91=E6=8A=A5=E9=94=99=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/dromara/workflow/service/IFlwCategoryService.java | 2 +- .../service/impl/CategoryNameTranslationImpl.java | 8 ++++++-- .../workflow/service/impl/FlwCategoryServiceImpl.java | 4 ++-- 3 files changed, 9 insertions(+), 5 deletions(-) diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IFlwCategoryService.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IFlwCategoryService.java index 478e93ab6..91f173d4f 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IFlwCategoryService.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IFlwCategoryService.java @@ -27,7 +27,7 @@ public interface IFlwCategoryService { * @param categoryId 流程分类ID * @return 流程分类名称 */ - String selectCategoryNameById(String categoryId); + String selectCategoryNameById(Long categoryId); /** * 查询符合条件的流程分类列表 diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/CategoryNameTranslationImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/CategoryNameTranslationImpl.java index f13e66645..8c73b59ee 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/CategoryNameTranslationImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/CategoryNameTranslationImpl.java @@ -1,5 +1,6 @@ package org.dromara.workflow.service.impl; +import cn.hutool.core.convert.Convert; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.dromara.common.translation.annotation.TranslationType; @@ -25,9 +26,12 @@ public class CategoryNameTranslationImpl implements TranslationInterface @Override public String translation(Object key, String other) { + Long id = null; if (key instanceof String categoryId) { - return flwCategoryService.selectCategoryNameById(categoryId); + id = Convert.toLong(categoryId); + } else if (key instanceof Long categoryId) { + id = categoryId; } - return null; + return flwCategoryService.selectCategoryNameById(id); } } diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwCategoryServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwCategoryServiceImpl.java index 053d2492b..db1b7b7f0 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwCategoryServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwCategoryServiceImpl.java @@ -66,8 +66,8 @@ public class FlwCategoryServiceImpl implements IFlwCategoryService { */ @Cacheable(cacheNames = FlowConstant.FLOW_CATEGORY_NAME, key = "#categoryId") @Override - public String selectCategoryNameById(String categoryId) { - if (StringUtils.isBlank(categoryId)) { + public String selectCategoryNameById(Long categoryId) { + if (ObjectUtil.isNull(categoryId)) { return null; } FlowCategory category = baseMapper.selectOne(new LambdaQueryWrapper() -- Gitee From 7c2c82fc0a0478adb4dc9606de8bcb872b20f0eb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 24 Jan 2025 12:42:48 +0800 Subject: [PATCH 408/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20postgres=20s?= =?UTF-8?q?ql=E7=BC=BA=E5=B0=91=E5=AD=97=E6=AE=B5=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- script/sql/postgres/postgres_ry_workflow.sql | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/script/sql/postgres/postgres_ry_workflow.sql b/script/sql/postgres/postgres_ry_workflow.sql index 9bcf2cf17..80cd414c3 100644 --- a/script/sql/postgres/postgres_ry_workflow.sql +++ b/script/sql/postgres/postgres_ry_workflow.sql @@ -136,6 +136,7 @@ CREATE TABLE flow_instance variable text NULL, -- 任务变量 flow_status varchar(20) NOT NULL, -- 流程状态(0待提交 1审批中 2 审批通过 8已完成 9已退回 10失效) activity_status int2 NOT NULL DEFAULT 1, -- 流程激活状态(0挂起 1激活) + def_json text NULL, -- 流程定义json create_by varchar(64) NULL DEFAULT '':: character varying, -- 创建者 create_time timestamp NULL, -- 创建时间 update_time timestamp NULL, -- 更新时间 @@ -155,6 +156,7 @@ COMMENT ON COLUMN flow_instance.node_name IS '流程节点名称'; COMMENT ON COLUMN flow_instance.variable IS '任务变量'; COMMENT ON COLUMN flow_instance.flow_status IS '流程状态(0待提交 1审批中 2 审批通过 3自动通过 4终止 5作废 6撤销 7取回 8已完成 9已退回 10失效)'; COMMENT ON COLUMN flow_instance.activity_status IS '流程激活状态(0挂起 1激活)'; +COMMENT ON COLUMN flow_instance.def_json IS '流程定义json'; COMMENT ON COLUMN flow_instance.create_by IS '创建者'; COMMENT ON COLUMN flow_instance.create_time IS '创建时间'; COMMENT ON COLUMN flow_instance.update_time IS '更新时间'; @@ -199,8 +201,8 @@ CREATE TABLE flow_his_task definition_id int8 NOT NULL, -- 对应flow_definition表的id instance_id int8 NOT NULL, -- 对应flow_instance表的id task_id int8 NOT NULL, -- 对应flow_task表的id - node_code varchar(100) NULL, -- 开始节点编码 - node_name varchar(100) NULL, -- 开始节点名称 + node_code varchar(200) NULL, -- 开始节点编码 + node_name varchar(200) NULL, -- 开始节点名称 node_type int2 NULL, -- 开始节点类型(0开始节点 1中间节点 2结束节点 3互斥网关 4并行网关) target_node_code varchar(200) NULL, -- 目标节点编码 target_node_name varchar(200) NULL, -- 结束节点名称 -- Gitee From b528f0bd146769407de4b7da223e75d46b51d345 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 24 Jan 2025 13:06:31 +0800 Subject: [PATCH 409/540] =?UTF-8?q?=F0=9F=A7=A8=F0=9F=A7=A8=F0=9F=A7=A8?= =?UTF-8?q?=E5=8F=91=E5=B8=83=205.3.0=20=E6=96=B0=E6=98=A5=E7=89=88=20?= =?UTF-8?q?=E7=A5=9D=E5=A4=A7=E5=AE=B6=E6=96=B0=E5=B9=B4=E5=BF=AB=E4=B9=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .run/ruoyi-monitor-admin.run.xml | 2 +- .run/ruoyi-server.run.xml | 2 +- .run/ruoyi-snailjob-server.run.xml | 2 +- README.md | 2 +- pom.xml | 2 +- ruoyi-common/ruoyi-common-bom/pom.xml | 2 +- script/docker/docker-compose.yml | 8 ++++---- 7 files changed, 10 insertions(+), 10 deletions(-) diff --git a/.run/ruoyi-monitor-admin.run.xml b/.run/ruoyi-monitor-admin.run.xml index 3c2cc61b6..c399b2967 100644 --- a/.run/ruoyi-monitor-admin.run.xml +++ b/.run/ruoyi-monitor-admin.run.xml @@ -2,7 +2,7 @@ - diff --git a/.run/ruoyi-server.run.xml b/.run/ruoyi-server.run.xml index 4cfac4f3f..5dbde4ec4 100644 --- a/.run/ruoyi-server.run.xml +++ b/.run/ruoyi-server.run.xml @@ -2,7 +2,7 @@ - diff --git a/.run/ruoyi-snailjob-server.run.xml b/.run/ruoyi-snailjob-server.run.xml index bfa74427f..e1e13fc6f 100644 --- a/.run/ruoyi-snailjob-server.run.xml +++ b/.run/ruoyi-snailjob-server.run.xml @@ -2,7 +2,7 @@ - diff --git a/README.md b/README.md index 08832377e..fc3131a24 100644 --- a/README.md +++ b/README.md @@ -10,7 +10,7 @@ [![License](https://img.shields.io/badge/License-MIT-blue.svg)](https://gitee.com/dromara/RuoYi-Vue-Plus/blob/master/LICENSE) [![使用IntelliJ IDEA开发维护](https://img.shields.io/badge/IntelliJ%20IDEA-提供支持-blue.svg)](https://www.jetbrains.com/?from=RuoYi-Vue-Plus)
    -[![RuoYi-Vue-Plus](https://img.shields.io/badge/RuoYi_Vue_Plus-5.3.0--BETA-success.svg)](https://gitee.com/dromara/RuoYi-Vue-Plus) +[![RuoYi-Vue-Plus](https://img.shields.io/badge/RuoYi_Vue_Plus-5.3.0-success.svg)](https://gitee.com/dromara/RuoYi-Vue-Plus) [![Spring Boot](https://img.shields.io/badge/Spring%20Boot-3.4-blue.svg)]() [![JDK-17](https://img.shields.io/badge/JDK-17-green.svg)]() [![JDK-21](https://img.shields.io/badge/JDK-21-green.svg)]() diff --git a/pom.xml b/pom.xml index 1300eb9cc..6a116a2b4 100644 --- a/pom.xml +++ b/pom.xml @@ -13,7 +13,7 @@ Dromara RuoYi-Vue-Plus多租户管理系统 - 5.3.0-BETA + 5.3.0 3.4.1 UTF-8 UTF-8 diff --git a/ruoyi-common/ruoyi-common-bom/pom.xml b/ruoyi-common/ruoyi-common-bom/pom.xml index 19f2d0372..24acb086d 100644 --- a/ruoyi-common/ruoyi-common-bom/pom.xml +++ b/ruoyi-common/ruoyi-common-bom/pom.xml @@ -14,7 +14,7 @@ - 5.3.0-BETA + 5.3.0 diff --git a/script/docker/docker-compose.yml b/script/docker/docker-compose.yml index 8b6befcad..885c236ae 100644 --- a/script/docker/docker-compose.yml +++ b/script/docker/docker-compose.yml @@ -98,7 +98,7 @@ services: network_mode: "host" ruoyi-server1: - image: ruoyi/ruoyi-server:5.3.0-BETA + image: ruoyi/ruoyi-server:5.3.0 container_name: ruoyi-server1 environment: # 时区上海 @@ -113,7 +113,7 @@ services: network_mode: "host" ruoyi-server2: - image: ruoyi/ruoyi-server:5.3.0-BETA + image: ruoyi/ruoyi-server:5.3.0 container_name: ruoyi-server2 environment: # 时区上海 @@ -128,7 +128,7 @@ services: network_mode: "host" ruoyi-monitor-admin: - image: ruoyi/ruoyi-monitor-admin:5.3.0-BETA + image: ruoyi/ruoyi-monitor-admin:5.3.0 container_name: ruoyi-monitor-admin environment: # 时区上海 @@ -140,7 +140,7 @@ services: network_mode: "host" ruoyi-snailjob-server: - image: ruoyi/ruoyi-snailjob-server:5.3.0-BETA + image: ruoyi/ruoyi-snailjob-server:5.3.0 container_name: ruoyi-snailjob-server environment: # 时区上海 -- Gitee From 093709385115d56f5ab84207fe2233cc27482373 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 6 Feb 2025 16:14:51 +0800 Subject: [PATCH 410/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20sse=E5=85=B3?= =?UTF-8?q?=E9=97=AD=20=E7=94=A8=E6=88=B7id=E6=88=96token=E4=B8=BA?= =?UTF-8?q?=E7=A9=BA=E6=8A=A5=E9=94=99=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/org/dromara/common/sse/core/SseEmitterManager.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/core/SseEmitterManager.java b/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/core/SseEmitterManager.java index ba1ce5696..64dfcff37 100644 --- a/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/core/SseEmitterManager.java +++ b/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/core/SseEmitterManager.java @@ -65,6 +65,9 @@ public class SseEmitterManager { * @param token 用户的唯一令牌,用于识别具体的连接 */ public void disconnect(Long userId, String token) { + if (userId == null || token == null) { + return; + } Map emitters = USER_TOKEN_EMITTERS.get(userId); if (MapUtil.isNotEmpty(emitters)) { try { -- Gitee From 2c598f93abe6c42a82d4a04f2ef0b616df3d3a29 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 6 Feb 2025 16:15:19 +0800 Subject: [PATCH 411/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20splitTo=20?= =?UTF-8?q?=E8=BD=AC=E6=8D=A2=E5=90=8E=E7=9A=84list=E5=8C=85=E5=90=ABnull?= =?UTF-8?q?=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/org/dromara/common/core/utils/StringUtils.java | 1 + 1 file changed, 1 insertion(+) diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/StringUtils.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/StringUtils.java index 506bf08d5..0363ad4b5 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/StringUtils.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/utils/StringUtils.java @@ -318,6 +318,7 @@ public class StringUtils extends org.apache.commons.lang3.StringUtils { .stream() .filter(Objects::nonNull) .map(mapper) + .filter(Objects::nonNull) .collect(Collectors.toList()); } -- Gitee From a87071b834105217e9720505171cd9f3c67178e4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 6 Feb 2025 16:16:14 +0800 Subject: [PATCH 412/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20=E7=BB=93?= =?UTF-8?q?=E6=9D=9F=E7=9B=91=E5=90=AC=E5=99=A8=20flowParam=20=E5=8F=AF?= =?UTF-8?q?=E8=83=BD=E4=B8=BAnull=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../listener/WorkflowGlobalListener.java | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/listener/WorkflowGlobalListener.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/listener/WorkflowGlobalListener.java index e79fc3b43..b18785484 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/listener/WorkflowGlobalListener.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/listener/WorkflowGlobalListener.java @@ -1,10 +1,12 @@ package org.dromara.workflow.listener; import cn.hutool.core.collection.CollUtil; +import cn.hutool.core.util.ObjectUtil; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.dromara.common.core.enums.BusinessStatusEnum; import org.dromara.common.core.utils.StringUtils; +import org.dromara.warm.flow.core.dto.FlowParams; import org.dromara.warm.flow.core.entity.Definition; import org.dromara.warm.flow.core.entity.Instance; import org.dromara.warm.flow.core.entity.Task; @@ -84,12 +86,15 @@ public class WorkflowGlobalListener implements GlobalListener { String businessId = instance.getBusinessId(); String flowStatus = instance.getFlowStatus(); Map params = new HashMap<>(); - // 历史任务扩展(通常为附件) - params.put("hisTaskExt", listenerVariable.getFlowParams().getHisTaskExt()); - // 办理人 - params.put("handler", listenerVariable.getFlowParams().getHandler()); - // 办理意见 - params.put("message", listenerVariable.getFlowParams().getMessage()); + FlowParams flowParams = listenerVariable.getFlowParams(); + if (ObjectUtil.isNotNull(flowParams)) { + // 历史任务扩展(通常为附件) + params.put("hisTaskExt", flowParams.getHisTaskExt()); + // 办理人 + params.put("handler", flowParams.getHandler()); + // 办理意见 + params.put("message", flowParams.getMessage()); + } // 判断流程状态(发布:撤销,退回,作废,终止,已完成事件) String status = determineFlowStatus(instance, flowStatus); if (StringUtils.isNotBlank(status)) { -- Gitee From 718a010c0fc0343ba71ee7b58b71a1a522f15a49 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 7 Feb 2025 13:07:53 +0800 Subject: [PATCH 413/540] =?UTF-8?q?Revert=20"fix=20=E4=BF=AE=E5=A4=8D=20mo?= =?UTF-8?q?nitor=20=E8=AE=BE=E7=BD=AE=20context-path=20=E5=AF=BC=E8=87=B4?= =?UTF-8?q?=E9=80=80=E5=87=BA=E9=87=8D=E6=96=B0=E7=99=BB=E5=BD=95404?= =?UTF-8?q?=E9=97=AE=E9=A2=98"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This reverts commit d194b39e57e3d6caf5d76749ab1618e524f479a9. --- ruoyi-admin/src/main/resources/application-dev.yml | 2 +- ruoyi-admin/src/main/resources/application-prod.yml | 2 +- .../ruoyi-monitor-admin/src/main/resources/application.yml | 3 ++- .../src/main/resources/application-dev.yml | 2 +- .../src/main/resources/application-prod.yml | 2 +- script/docker/nginx/conf/nginx.conf | 2 +- 6 files changed, 7 insertions(+), 6 deletions(-) diff --git a/ruoyi-admin/src/main/resources/application-dev.yml b/ruoyi-admin/src/main/resources/application-dev.yml index 63b76e951..5465921cb 100644 --- a/ruoyi-admin/src/main/resources/application-dev.yml +++ b/ruoyi-admin/src/main/resources/application-dev.yml @@ -2,7 +2,7 @@ spring.boot.admin.client: # 增加客户端开关 enabled: true - url: http://localhost:9090 + url: http://localhost:9090/admin instance: service-host-type: IP metadata: diff --git a/ruoyi-admin/src/main/resources/application-prod.yml b/ruoyi-admin/src/main/resources/application-prod.yml index 3e41f84c0..80c1f969c 100644 --- a/ruoyi-admin/src/main/resources/application-prod.yml +++ b/ruoyi-admin/src/main/resources/application-prod.yml @@ -5,7 +5,7 @@ spring.servlet.multipart.location: /ruoyi/server/temp spring.boot.admin.client: # 增加客户端开关 enabled: true - url: http://localhost:9090 + url: http://localhost:9090/admin instance: service-host-type: IP metadata: diff --git a/ruoyi-extend/ruoyi-monitor-admin/src/main/resources/application.yml b/ruoyi-extend/ruoyi-monitor-admin/src/main/resources/application.yml index b9720cba8..622c93d3c 100644 --- a/ruoyi-extend/ruoyi-monitor-admin/src/main/resources/application.yml +++ b/ruoyi-extend/ruoyi-monitor-admin/src/main/resources/application.yml @@ -19,6 +19,7 @@ spring: admin: ui: title: RuoYi-Vue-Plus服务监控中心 + context-path: /admin --- # Actuator 监控端点的配置项 management: @@ -37,7 +38,7 @@ spring.boot.admin.client: # 增加客户端开关 enabled: true # 设置 Spring Boot Admin Server 地址 - url: http://localhost:9090 + url: http://localhost:9090/admin instance: service-host-type: IP metadata: diff --git a/ruoyi-extend/ruoyi-snailjob-server/src/main/resources/application-dev.yml b/ruoyi-extend/ruoyi-snailjob-server/src/main/resources/application-dev.yml index 44f298aba..32a2cc4e3 100644 --- a/ruoyi-extend/ruoyi-snailjob-server/src/main/resources/application-dev.yml +++ b/ruoyi-extend/ruoyi-snailjob-server/src/main/resources/application-dev.yml @@ -43,7 +43,7 @@ snail-job: spring.boot.admin.client: # 增加客户端开关 enabled: true - url: http://localhost:9090 + url: http://localhost:9090/admin instance: service-host-type: IP metadata: diff --git a/ruoyi-extend/ruoyi-snailjob-server/src/main/resources/application-prod.yml b/ruoyi-extend/ruoyi-snailjob-server/src/main/resources/application-prod.yml index 44f298aba..32a2cc4e3 100644 --- a/ruoyi-extend/ruoyi-snailjob-server/src/main/resources/application-prod.yml +++ b/ruoyi-extend/ruoyi-snailjob-server/src/main/resources/application-prod.yml @@ -43,7 +43,7 @@ snail-job: spring.boot.admin.client: # 增加客户端开关 enabled: true - url: http://localhost:9090 + url: http://localhost:9090/admin instance: service-host-type: IP metadata: diff --git a/script/docker/nginx/conf/nginx.conf b/script/docker/nginx/conf/nginx.conf index 3df4a722c..3c79d97f6 100644 --- a/script/docker/nginx/conf/nginx.conf +++ b/script/docker/nginx/conf/nginx.conf @@ -96,7 +96,7 @@ http { proxy_set_header X-Real-IP $remote_addr; proxy_set_header REMOTE-HOST $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; - proxy_pass http://monitor-admin/; + proxy_pass http://monitor-admin/admin/; } location /snail-job/ { -- Gitee From 934bbe8bd7d56aad0356880a8cf1dfe3aee817e7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 7 Feb 2025 14:15:54 +0800 Subject: [PATCH 414/540] update springboot 3.4.1 => 3.4.2 update springdoc 2.8.3 => 2.8.4 update satoken 1.39.0 => 1.40.0 update redisson 3.43.0 => 3.44.0 --- pom.xml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pom.xml b/pom.xml index 6a116a2b4..1d4366f2d 100644 --- a/pom.xml +++ b/pom.xml @@ -14,21 +14,21 @@ 5.3.0 - 3.4.1 + 3.4.2 UTF-8 UTF-8 17 3.5.16 - 2.8.3 + 2.8.4 0.15.0 4.0.3 2.3 - 1.39.0 + 1.40.0 3.5.10 3.9.1 5.8.35 3.4.1 - 3.43.0 + 3.44.0 2.2.7 4.3.1 1.3.0 -- Gitee From 3c57c0e7f9c16661fe9761140bf4d42a154a87df Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Tue, 11 Feb 2025 09:51:31 +0800 Subject: [PATCH 415/540] =?UTF-8?q?update=20springboot-admin=203.4.1=20=3D?= =?UTF-8?q?>=203.4.2=20=E4=BF=AE=E5=A4=8D=E9=87=8D=E6=96=B0=E7=99=BB?= =?UTF-8?q?=E5=BD=95404=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 1d4366f2d..2856eefc2 100644 --- a/pom.xml +++ b/pom.xml @@ -27,7 +27,7 @@ 3.5.10 3.9.1 5.8.35 - 3.4.1 + 3.4.2 3.44.0 2.2.7 4.3.1 -- Gitee From 78abb617cecc0f07795e83691aa149f89d8c81f2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Tue, 11 Feb 2025 16:03:14 +0800 Subject: [PATCH 416/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20nginx?= =?UTF-8?q?=E5=BC=80=E5=90=AF=E9=9D=99=E6=80=81=E8=B5=84=E6=BA=90=E5=8E=8B?= =?UTF-8?q?=E7=BC=A9=20=E5=A2=9E=E5=8A=A0=E9=9D=99=E6=80=81=E6=96=87?= =?UTF-8?q?=E4=BB=B6=E4=BC=A0=E8=BE=93=E6=95=88=E7=8E=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- script/docker/nginx/conf/nginx.conf | 2 ++ 1 file changed, 2 insertions(+) diff --git a/script/docker/nginx/conf/nginx.conf b/script/docker/nginx/conf/nginx.conf index 3c79d97f6..22b074f1d 100644 --- a/script/docker/nginx/conf/nginx.conf +++ b/script/docker/nginx/conf/nginx.conf @@ -14,6 +14,8 @@ http { keepalive_timeout 65; # 限制body大小 client_max_body_size 100m; + # 开启静态资源压缩 + gzip_static on; log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' -- Gitee From 2746af21f0f4228d6cd30b2f27fc742c40c2f583 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=A7=8B=E8=BE=9E=E6=9C=AA=E5=AF=92?= <545073804@qq.com> Date: Thu, 13 Feb 2025 17:39:30 +0800 Subject: [PATCH 417/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E6=A0=B9?= =?UTF-8?q?=E9=83=A8=E9=97=A8=E7=A5=96=E7=BA=A7=E5=88=97=E8=A1=A8=E5=B8=B8?= =?UTF-8?q?=E9=87=8F=E5=92=8C=E5=A4=87=E6=B3=A8=EF=BC=8C=E4=BB=A5=E9=81=BF?= =?UTF-8?q?=E5=85=8D=E6=AD=A7=E4=B9=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/dromara/common/core/constant/SystemConstants.java | 5 +++++ .../org/dromara/system/service/impl/SysDeptServiceImpl.java | 6 ++++-- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/SystemConstants.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/SystemConstants.java index 55240bbf8..8a37a51fc 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/SystemConstants.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/SystemConstants.java @@ -72,4 +72,9 @@ public interface SystemConstants { */ Long SUPER_ADMIN_ID = 1L; + /** + * 根部门祖级列表 + */ + String ROOT_DEPT_ANCESTORS = "0"; + } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java index ca062bee6..ecd309f4e 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java @@ -323,8 +323,10 @@ public class SysDeptServiceImpl implements ISysDeptService, DeptService { dept.setAncestors(oldDept.getAncestors()); } int result = baseMapper.updateById(dept); - if (SystemConstants.NORMAL.equals(dept.getStatus()) && StringUtils.isNotEmpty(dept.getAncestors()) - && !StringUtils.equals(SystemConstants.NORMAL, dept.getAncestors())) { + // 如果部门状态为启用,且部门祖级列表不为空,且部门祖级列表不等于根部门祖级列表(如果部门祖级列表不等于根部门祖级列表,则说明存在上级部门) + if (SystemConstants.NORMAL.equals(dept.getStatus()) + && StringUtils.isNotEmpty(dept.getAncestors()) + && !StringUtils.equals(SystemConstants.ROOT_DEPT_ANCESTORS, dept.getAncestors())) { // 如果该部门是启用状态,则启用该部门的所有上级部门 updateParentDeptStatusNormal(dept); } -- Gitee From eb17eb655919aa8f24b3f6e8d2e0992921f64e26 Mon Sep 17 00:00:00 2001 From: QianRj <14974713+qianrj@user.noreply.gitee.com> Date: Sat, 15 Feb 2025 04:58:37 +0000 Subject: [PATCH 418/540] =?UTF-8?q?!646=20fix=20=E4=BF=AE=E5=A4=8DCaffeine?= =?UTF-8?q?=E7=BC=93=E5=AD=98=E6=9C=AA=E6=B8=85=E7=A9=BA=E5=AF=BC=E8=87=B4?= =?UTF-8?q?=E7=9A=84=E9=83=A8=E9=97=A8=E5=88=9B=E5=BB=BA=E6=98=BE=E7=A4=BA?= =?UTF-8?q?=E5=BB=B6=E8=BF=9F=E9=97=AE=E9=A2=98=20*=20fix=20=E4=BF=AE?= =?UTF-8?q?=E5=A4=8DCaffeine=E7=BC=93=E5=AD=98=E6=9C=AA=E6=B8=85=E7=A9=BA?= =?UTF-8?q?=E5=AF=BC=E8=87=B4=E7=9A=84=E9=83=A8=E9=97=A8=E5=88=9B=E5=BB=BA?= =?UTF-8?q?=E6=98=BE=E7=A4=BA=E5=BB=B6=E8=BF=9F=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/dromara/common/redis/manager/CaffeineCacheDecorator.java | 1 + 1 file changed, 1 insertion(+) diff --git a/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/manager/CaffeineCacheDecorator.java b/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/manager/CaffeineCacheDecorator.java index 6e83df13a..8662c537d 100644 --- a/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/manager/CaffeineCacheDecorator.java +++ b/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/manager/CaffeineCacheDecorator.java @@ -78,6 +78,7 @@ public class CaffeineCacheDecorator implements Cache { @Override public void clear() { + CAFFEINE.invalidateAll(); cache.clear(); } -- Gitee From 236dd6e054658ddb21bc0bd3e6cc979713786218 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Mon, 17 Feb 2025 15:22:42 +0800 Subject: [PATCH 419/540] =?UTF-8?q?update=20=E5=88=A0=E9=99=A4=E6=97=A0?= =?UTF-8?q?=E7=94=A8=E6=96=87=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ruoyi-modules/ruoyi-workflow/README.md | 3 --- 1 file changed, 3 deletions(-) delete mode 100644 ruoyi-modules/ruoyi-workflow/README.md diff --git a/ruoyi-modules/ruoyi-workflow/README.md b/ruoyi-modules/ruoyi-workflow/README.md deleted file mode 100644 index 59096b10e..000000000 --- a/ruoyi-modules/ruoyi-workflow/README.md +++ /dev/null @@ -1,3 +0,0 @@ -# 工作流说明 - -工作流目前在未成熟阶段 后续仍会经历重构 甚至重写(生产使用前请慎重考虑后续是否要更新维护) \ No newline at end of file -- Gitee From 906a031172691f928cb3cef638a061fb41d845d8 Mon Sep 17 00:00:00 2001 From: AprilWind <2100166581@qq.com> Date: Wed, 19 Feb 2025 09:07:46 +0800 Subject: [PATCH 420/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=E9=83=A8?= =?UTF-8?q?=E9=97=A8=E4=B8=8B=E5=B2=97=E4=BD=8D=E5=90=8D=E7=A7=B0=E9=87=8D?= =?UTF-8?q?=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/org/dromara/system/service/impl/SysPostServiceImpl.java | 1 + 1 file changed, 1 insertion(+) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysPostServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysPostServiceImpl.java index 5888985a7..894f6acc8 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysPostServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysPostServiceImpl.java @@ -154,6 +154,7 @@ public class SysPostServiceImpl implements ISysPostService, PostService { public boolean checkPostNameUnique(SysPostBo post) { boolean exist = baseMapper.exists(new LambdaQueryWrapper() .eq(SysPost::getPostName, post.getPostName()) + .eq(SysPost::getDeptId, post.getDeptId()) .ne(ObjectUtil.isNotNull(post.getPostId()), SysPost::getPostId, post.getPostId())); return !exist; } -- Gitee From 214cbac9a6864b72406a8e70aac42113e1f4f9e0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Wed, 19 Feb 2025 09:43:10 +0800 Subject: [PATCH 421/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20ProcessTa?= =?UTF-8?q?skEvent=20=E6=94=B9=E5=90=8D=E4=B8=BA=20ProcessCreateTaskEvent?= =?UTF-8?q?=20=E9=81=BF=E5=85=8D=E9=94=99=E8=AF=AF=E7=90=86=E8=A7=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...Event.java => ProcessCreateTaskEvent.java} | 4 ++-- .../handler/FlowProcessEventHandler.java | 22 +++++++++---------- .../listener/WorkflowGlobalListener.java | 2 +- .../service/impl/TestLeaveServiceImpl.java | 20 ++++++++--------- 4 files changed, 24 insertions(+), 24 deletions(-) rename ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/event/{ProcessTaskEvent.java => ProcessCreateTaskEvent.java} (85%) diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/event/ProcessTaskEvent.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/event/ProcessCreateTaskEvent.java similarity index 85% rename from ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/event/ProcessTaskEvent.java rename to ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/event/ProcessCreateTaskEvent.java index 33bc6e5a6..05047ab84 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/event/ProcessTaskEvent.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/event/ProcessCreateTaskEvent.java @@ -6,12 +6,12 @@ import java.io.Serial; import java.io.Serializable; /** - * 流程办理监听 + * 流程创建任务监听 * * @author may */ @Data -public class ProcessTaskEvent implements Serializable { +public class ProcessCreateTaskEvent implements Serializable { @Serial private static final long serialVersionUID = 1L; diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/handler/FlowProcessEventHandler.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/handler/FlowProcessEventHandler.java index 4b215ef60..3efc52da8 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/handler/FlowProcessEventHandler.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/handler/FlowProcessEventHandler.java @@ -1,9 +1,9 @@ package org.dromara.workflow.handler; import lombok.extern.slf4j.Slf4j; +import org.dromara.common.core.domain.event.ProcessCreateTaskEvent; import org.dromara.common.core.domain.event.ProcessDeleteEvent; import org.dromara.common.core.domain.event.ProcessEvent; -import org.dromara.common.core.domain.event.ProcessTaskEvent; import org.dromara.common.core.utils.SpringUtils; import org.dromara.common.tenant.helper.TenantHelper; import org.dromara.workflow.common.ConditionalOnEnable; @@ -23,7 +23,7 @@ import java.util.Map; public class FlowProcessEventHandler { /** - * 总体流程监听(例如: 草稿,撤销,退回,作废,终止,已完成等) + * 总体流程监听(例如: 草稿,撤销,退回,作废,终止,已完成,单任务完成等) * * @param flowCode 流程定义编码 * @param businessId 业务id @@ -44,23 +44,23 @@ public class FlowProcessEventHandler { } /** - * 执行办理任务监听 + * 执行创建任务监听 * * @param flowCode 流程定义编码 * @param nodeCode 审批节点编码 * @param taskId 任务id * @param businessId 业务id */ - public void processTaskHandler(String flowCode, String nodeCode, Long taskId, String businessId) { + public void processCreateTaskHandler(String flowCode, String nodeCode, Long taskId, String businessId) { String tenantId = TenantHelper.getTenantId(); log.info("发布流程任务事件, 租户ID: {}, 流程编码: {}, 节点编码: {}, 任务ID: {}, 业务ID: {}", tenantId, flowCode, nodeCode, taskId, businessId); - ProcessTaskEvent processTaskEvent = new ProcessTaskEvent(); - processTaskEvent.setTenantId(tenantId); - processTaskEvent.setFlowCode(flowCode); - processTaskEvent.setNodeCode(nodeCode); - processTaskEvent.setTaskId(taskId); - processTaskEvent.setBusinessId(businessId); - SpringUtils.context().publishEvent(processTaskEvent); + ProcessCreateTaskEvent processCreateTaskEvent = new ProcessCreateTaskEvent(); + processCreateTaskEvent.setTenantId(tenantId); + processCreateTaskEvent.setFlowCode(flowCode); + processCreateTaskEvent.setNodeCode(nodeCode); + processCreateTaskEvent.setTaskId(taskId); + processCreateTaskEvent.setBusinessId(businessId); + SpringUtils.context().publishEvent(processCreateTaskEvent); } /** diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/listener/WorkflowGlobalListener.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/listener/WorkflowGlobalListener.java index b18785484..272f9de92 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/listener/WorkflowGlobalListener.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/listener/WorkflowGlobalListener.java @@ -52,7 +52,7 @@ public class WorkflowGlobalListener implements GlobalListener { Task task = listenerVariable.getTask(); if (task != null && BusinessStatusEnum.WAITING.getStatus().equals(flowStatus)) { // 判断流程状态(发布审批中事件) - flowProcessEventHandler.processTaskHandler(definition.getFlowCode(), task.getNodeCode(), task.getId(), businessId); + flowProcessEventHandler.processCreateTaskHandler(definition.getFlowCode(), task.getNodeCode(), task.getId(), businessId); } } diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/TestLeaveServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/TestLeaveServiceImpl.java index 2c431737b..537361c3e 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/TestLeaveServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/TestLeaveServiceImpl.java @@ -9,9 +9,9 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; +import org.dromara.common.core.domain.event.ProcessCreateTaskEvent; import org.dromara.common.core.domain.event.ProcessDeleteEvent; import org.dromara.common.core.domain.event.ProcessEvent; -import org.dromara.common.core.domain.event.ProcessTaskEvent; import org.dromara.common.core.enums.BusinessStatusEnum; import org.dromara.common.core.service.WorkflowService; import org.dromara.common.core.utils.MapstructUtils; @@ -123,7 +123,7 @@ public class TestLeaveServiceImpl implements ITestLeaveService { } /** - * 总体流程监听(例如: 草稿,撤销,退回,作废,终止,已完成等) + * 总体流程监听(例如: 草稿,撤销,退回,作废,终止,已完成,单任务完成等) * 正常使用只需#processEvent.flowCode=='leave1' * 示例为了方便则使用startsWith匹配了全部示例key * @@ -151,19 +151,19 @@ public class TestLeaveServiceImpl implements ITestLeaveService { } /** - * 执行办理任务监听 - * 示例:也可通过 @EventListener(condition = "#processTaskEvent.flowCode=='leave1'")进行判断 + * 执行任务创建监听 + * 示例:也可通过 @EventListener(condition = "#processCreateTaskEvent.flowCode=='leave1'")进行判断 * 在方法中判断流程节点key - * if ("xxx".equals(processTaskEvent.getNodeCode())) { + * if ("xxx".equals(processCreateTaskEvent.getNodeCode())) { * //执行业务逻辑 * } * - * @param processTaskEvent 参数 + * @param processCreateTaskEvent 参数 */ - @EventListener(condition = "#processTaskEvent.flowCode.startsWith('leave')") - public void processTaskHandler(ProcessTaskEvent processTaskEvent) { - log.info("当前任务执行了{}", processTaskEvent.toString()); - TestLeave testLeave = baseMapper.selectById(Long.valueOf(processTaskEvent.getBusinessId())); + @EventListener(condition = "#processCreateTaskEvent.flowCode.startsWith('leave')") + public void processCreateTaskHandler(ProcessCreateTaskEvent processCreateTaskEvent) { + log.info("当前任务创建了{}", processCreateTaskEvent.toString()); + TestLeave testLeave = baseMapper.selectById(Long.valueOf(processCreateTaskEvent.getBusinessId())); testLeave.setStatus(BusinessStatusEnum.WAITING.getStatus()); baseMapper.updateById(testLeave); } -- Gitee From 381be5a1a1a6fe4c3d28f4bad323aaef307c9e48 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Wed, 19 Feb 2025 13:27:46 +0800 Subject: [PATCH 422/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20oracle=20?= =?UTF-8?q?=E8=A1=A8=E5=88=AB=E5=90=8D=E4=B8=8D=E8=83=BD=E5=86=99as?= =?UTF-8?q?=E5=85=B3=E9=94=AE=E5=AD=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/resources/mapper/workflow/FlwTaskMapper.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ruoyi-modules/ruoyi-workflow/src/main/resources/mapper/workflow/FlwTaskMapper.xml b/ruoyi-modules/ruoyi-workflow/src/main/resources/mapper/workflow/FlwTaskMapper.xml index 73e4ec789..f539030b4 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/resources/mapper/workflow/FlwTaskMapper.xml +++ b/ruoyi-modules/ruoyi-workflow/src/main/resources/mapper/workflow/FlwTaskMapper.xml @@ -31,7 +31,7 @@ d.version, uu.processed_by, uu.type - from flow_task as t + from flow_task t left join flow_user uu on uu.associated = t.id left join flow_definition d on t.definition_id = d.id left join flow_instance i on t.instance_id = i.id -- Gitee From d80f6ab69561201bd93e9aa67949f38b77c6f312 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 20 Feb 2025 17:46:04 +0800 Subject: [PATCH 423/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20oracle=20?= =?UTF-8?q?=E6=96=B0=E5=BB=BA=E7=A7=9F=E6=88=B7=E6=8A=A5=E9=94=99=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../system/service/impl/SysTenantServiceImpl.java | 15 +++++++++++++++ .../service/impl/FlwDefinitionServiceImpl.java | 5 +++++ 2 files changed, 20 insertions(+) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java index f31bd3027..b2f4872be 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java @@ -179,10 +179,20 @@ public class SysTenantServiceImpl implements ISysTenantService { for (SysDictType dictType : dictTypeList) { dictType.setDictId(null); dictType.setTenantId(tenantId); + dictType.setCreateDept(null); + dictType.setCreateBy(null); + dictType.setCreateTime(null); + dictType.setUpdateBy(null); + dictType.setUpdateTime(null); } for (SysDictData dictData : dictDataList) { dictData.setDictCode(null); dictData.setTenantId(tenantId); + dictData.setCreateDept(null); + dictData.setCreateBy(null); + dictData.setCreateTime(null); + dictData.setUpdateBy(null); + dictData.setUpdateTime(null); } dictTypeMapper.insertBatch(dictTypeList); dictDataMapper.insertBatch(dictDataList); @@ -192,6 +202,11 @@ public class SysTenantServiceImpl implements ISysTenantService { for (SysConfig config : sysConfigList) { config.setConfigId(null); config.setTenantId(tenantId); + config.setCreateDept(null); + config.setCreateBy(null); + config.setCreateTime(null); + config.setUpdateBy(null); + config.setUpdateTime(null); } configMapper.insertBatch(sysConfigList); diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwDefinitionServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwDefinitionServiceImpl.java index 591339b3e..b4ebcdf08 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwDefinitionServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwDefinitionServiceImpl.java @@ -219,6 +219,11 @@ public class FlwDefinitionServiceImpl implements IFlwDefinitionService { .eq(FlowCategory::getTenantId, DEFAULT_TENANT_ID).eq(FlowCategory::getCategoryId, FlowConstant.FLOW_CATEGORY_ID)); flowCategory.setCategoryId(null); flowCategory.setTenantId(tenantId); + flowCategory.setCreateDept(null); + flowCategory.setCreateBy(null); + flowCategory.setCreateTime(null); + flowCategory.setUpdateBy(null); + flowCategory.setUpdateTime(null); flwCategoryMapper.insert(flowCategory); List defIds = StreamUtils.toList(flowDefinitions, FlowDefinition::getId); List flowNodes = flowNodeMapper.selectList(new LambdaQueryWrapper().in(FlowNode::getDefinitionId, defIds)); -- Gitee From e8700ac44ba40961e55fda81a180db569f450ca6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 21 Feb 2025 09:37:24 +0800 Subject: [PATCH 424/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E5=88=A0?= =?UTF-8?q?=E9=99=A4=E5=A4=9A=E4=BD=99=E5=93=8D=E5=BA=94=E5=A4=B4=E8=AE=BE?= =?UTF-8?q?=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/encrypt/filter/EncryptResponseBodyWrapper.java | 3 --- 1 file changed, 3 deletions(-) diff --git a/ruoyi-common/ruoyi-common-encrypt/src/main/java/org/dromara/common/encrypt/filter/EncryptResponseBodyWrapper.java b/ruoyi-common/ruoyi-common-encrypt/src/main/java/org/dromara/common/encrypt/filter/EncryptResponseBodyWrapper.java index c0af232ee..7bbca49d0 100644 --- a/ruoyi-common/ruoyi-common-encrypt/src/main/java/org/dromara/common/encrypt/filter/EncryptResponseBodyWrapper.java +++ b/ruoyi-common/ruoyi-common-encrypt/src/main/java/org/dromara/common/encrypt/filter/EncryptResponseBodyWrapper.java @@ -76,10 +76,7 @@ public class EncryptResponseBodyWrapper extends HttpServletResponseWrapper { String encryptPassword = EncryptUtils.encryptByRsa(encryptAes, publicKey); // 设置响应头 - servletResponse.addHeader("Access-Control-Expose-Headers", headerFlag); servletResponse.setHeader(headerFlag, encryptPassword); - servletResponse.setHeader("Access-Control-Allow-Origin", "*"); - servletResponse.setHeader("Access-Control-Allow-Methods", "*"); servletResponse.setCharacterEncoding(StandardCharsets.UTF_8.toString()); // 获取原始内容 -- Gitee From bdb86e2b3add8f23807fabe66138637d4785932d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 21 Feb 2025 10:10:09 +0800 Subject: [PATCH 425/540] update springboot 3.4.2 => 3.4.3 update springdoc 2.8.4 => 2.8.5 --- pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index 2856eefc2..cc86e9b83 100644 --- a/pom.xml +++ b/pom.xml @@ -14,12 +14,12 @@ 5.3.0 - 3.4.2 + 3.4.3 UTF-8 UTF-8 17 3.5.16 - 2.8.4 + 2.8.5 0.15.0 4.0.3 2.3 -- Gitee From a217c495d1ea6abc4c3594f53a988f004429ce58 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 21 Feb 2025 15:40:31 +0800 Subject: [PATCH 426/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E7=A7=9F?= =?UTF-8?q?=E6=88=B7=E8=A1=A8=E4=BC=81=E4=B8=9A=E5=90=8D=E4=B8=8E=E9=83=A8?= =?UTF-8?q?=E9=97=A8=E8=A1=A8=E9=95=BF=E5=BA=A6=E4=BF=9D=E6=8C=81=E4=B8=80?= =?UTF-8?q?=E8=87=B4=20=E9=98=B2=E6=AD=A2=E9=95=BF=E5=BA=A6=E4=B8=8D?= =?UTF-8?q?=E4=B8=80=E8=87=B4=E6=8A=A5=E9=94=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- script/sql/oracle/oracle_ry_vue_5.X.sql | 2 +- script/sql/postgres/postgres_ry_vue_5.X.sql | 2 +- script/sql/ry_vue_5.X.sql | 2 +- script/sql/sqlserver/sqlserver_ry_vue_5.X.sql | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/script/sql/oracle/oracle_ry_vue_5.X.sql b/script/sql/oracle/oracle_ry_vue_5.X.sql index 94024c999..8390bceef 100644 --- a/script/sql/oracle/oracle_ry_vue_5.X.sql +++ b/script/sql/oracle/oracle_ry_vue_5.X.sql @@ -75,7 +75,7 @@ create table sys_tenant ( tenant_id varchar2(20) not null, contact_user_name varchar2(20) default '', contact_phone varchar2(20) default '', - company_name varchar2(50) default '', + company_name varchar2(30) default '', license_number varchar2(30) default '', address varchar2(200) default '', intro varchar2(200) default '', diff --git a/script/sql/postgres/postgres_ry_vue_5.X.sql b/script/sql/postgres/postgres_ry_vue_5.X.sql index d18cfebd4..463896625 100644 --- a/script/sql/postgres/postgres_ry_vue_5.X.sql +++ b/script/sql/postgres/postgres_ry_vue_5.X.sql @@ -75,7 +75,7 @@ create table if not exists sys_tenant tenant_id varchar(20) not null, contact_user_name varchar(20) default null::varchar, contact_phone varchar(20) default null::varchar, - company_name varchar(50) default null::varchar, + company_name varchar(30) default null::varchar, license_number varchar(30) default null::varchar, address varchar(200) default null::varchar, intro varchar(200) default null::varchar, diff --git a/script/sql/ry_vue_5.X.sql b/script/sql/ry_vue_5.X.sql index 48e5f35b5..95cb04cea 100644 --- a/script/sql/ry_vue_5.X.sql +++ b/script/sql/ry_vue_5.X.sql @@ -45,7 +45,7 @@ create table sys_tenant tenant_id varchar(20) not null comment '租户编号', contact_user_name varchar(20) comment '联系人', contact_phone varchar(20) comment '联系电话', - company_name varchar(50) comment '企业名称', + company_name varchar(30) comment '企业名称', license_number varchar(30) comment '统一社会信用代码', address varchar(200) comment '地址', intro varchar(200) comment '企业简介', diff --git a/script/sql/sqlserver/sqlserver_ry_vue_5.X.sql b/script/sql/sqlserver/sqlserver_ry_vue_5.X.sql index 9f8481a22..6fdba1e0d 100644 --- a/script/sql/sqlserver/sqlserver_ry_vue_5.X.sql +++ b/script/sql/sqlserver/sqlserver_ry_vue_5.X.sql @@ -222,7 +222,7 @@ CREATE TABLE sys_tenant tenant_id nvarchar(20) NOT NULL, contact_user_name nvarchar(20) NULL, contact_phone nvarchar(20) NULL, - company_name nvarchar(50) NULL, + company_name nvarchar(30) NULL, license_number nvarchar(30) NULL, address nvarchar(200) NULL, intro nvarchar(200) NULL, -- Gitee From bb475a6088fa83d9e62efdd1b40f44fe697f30f4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 21 Feb 2025 20:31:58 +0800 Subject: [PATCH 427/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E5=88=A0?= =?UTF-8?q?=E9=99=A4=E6=97=A0=E7=94=A8=E9=85=8D=E7=BD=AE=E7=B1=BB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../web/controller/IndexController.java | 12 ++---- .../src/main/resources/application-dev.yml | 4 +- .../src/main/resources/application-prod.yml | 4 +- .../src/main/resources/application.yml | 37 +++++++------------ .../java/org/dromara/test/DemoUnitTest.java | 10 ++--- .../common/core/config/RuoYiConfig.java | 33 ----------------- ...ot.autoconfigure.AutoConfiguration.imports | 1 - 7 files changed, 27 insertions(+), 74 deletions(-) delete mode 100644 ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/config/RuoYiConfig.java diff --git a/ruoyi-admin/src/main/java/org/dromara/web/controller/IndexController.java b/ruoyi-admin/src/main/java/org/dromara/web/controller/IndexController.java index c444f28c9..cdcfed62a 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/controller/IndexController.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/controller/IndexController.java @@ -1,9 +1,9 @@ package org.dromara.web.controller; import cn.dev33.satoken.annotation.SaIgnore; -import org.dromara.common.core.config.RuoYiConfig; -import org.dromara.common.core.utils.StringUtils; import lombok.RequiredArgsConstructor; +import org.dromara.common.core.utils.SpringUtils; +import org.dromara.common.core.utils.StringUtils; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RestController; @@ -17,16 +17,12 @@ import org.springframework.web.bind.annotation.RestController; @RestController public class IndexController { - /** - * 系统基础配置 - */ - private final RuoYiConfig ruoyiConfig; - /** * 访问首页,提示语 */ @GetMapping("/") public String index() { - return StringUtils.format("欢迎使用{}后台管理框架,当前版本:v{},请通过前端地址访问。", ruoyiConfig.getName(), ruoyiConfig.getVersion()); + return StringUtils.format("欢迎使用{}后台管理框架,请通过前端地址访问。", SpringUtils.getApplicationName()); } + } diff --git a/ruoyi-admin/src/main/resources/application-dev.yml b/ruoyi-admin/src/main/resources/application-dev.yml index 5465921cb..d2c45eae1 100644 --- a/ruoyi-admin/src/main/resources/application-dev.yml +++ b/ruoyi-admin/src/main/resources/application-dev.yml @@ -120,8 +120,8 @@ redisson: nettyThreads: 8 # 单节点配置 singleServerConfig: - # 客户端名称 - clientName: ${ruoyi.name} + # 客户端名称 不能用中文 + clientName: RuoYi-Vue-Plus # 最小空闲连接数 connectionMinimumIdleSize: 8 # 连接池大小 diff --git a/ruoyi-admin/src/main/resources/application-prod.yml b/ruoyi-admin/src/main/resources/application-prod.yml index 80c1f969c..1c7eae428 100644 --- a/ruoyi-admin/src/main/resources/application-prod.yml +++ b/ruoyi-admin/src/main/resources/application-prod.yml @@ -123,8 +123,8 @@ redisson: nettyThreads: 32 # 单节点配置 singleServerConfig: - # 客户端名称 - clientName: ${ruoyi.name} + # 客户端名称 不能用中文 + clientName: RuoYi-Vue-Plus # 最小空闲连接数 connectionMinimumIdleSize: 32 # 连接池大小 diff --git a/ruoyi-admin/src/main/resources/application.yml b/ruoyi-admin/src/main/resources/application.yml index dbe16888d..2a134a977 100644 --- a/ruoyi-admin/src/main/resources/application.yml +++ b/ruoyi-admin/src/main/resources/application.yml @@ -1,24 +1,3 @@ -# 项目相关配置 -ruoyi: - # 名称 - name: RuoYi-Vue-Plus - # 版本 - version: ${revision} - # 版权年份 - copyrightYear: 2024 - -captcha: - enable: true - # 页面 <参数设置> 可开启关闭 验证码校验 - # 验证码类型 math 数组计算 char 字符验证 - type: MATH - # line 线段干扰 circle 圆圈干扰 shear 扭曲干扰 - category: CIRCLE - # 数字验证码位数 - numberLength: 1 - # 字符验证码长度 - charLength: 4 - # 开发环境配置 server: # 服务器的HTTP端口,默认为8080 @@ -41,6 +20,18 @@ server: # 阻塞任务线程池, 当执行类似servlet请求阻塞操作, undertow会从这个线程池中取得线程,它的值设置取决于系统的负载 worker: 256 +captcha: + enable: true + # 页面 <参数设置> 可开启关闭 验证码校验 + # 验证码类型 math 数组计算 char 字符验证 + type: MATH + # line 线段干扰 circle 圆圈干扰 shear 扭曲干扰 + category: CIRCLE + # 数字验证码位数 + numberLength: 1 + # 字符验证码长度 + charLength: 4 + # 日志配置 logging: level: @@ -61,7 +52,7 @@ user: # Spring配置 spring: application: - name: ${ruoyi.name} + name: RuoYi-Vue-Plus threads: # 开启虚拟线程 仅jdk21可用 virtual: @@ -191,7 +182,7 @@ springdoc: # persistAuthorization: true info: # 标题 - title: '标题:${ruoyi.name}多租户管理系统_接口文档' + title: '标题:RuoYi-Vue-Plus多租户管理系统_接口文档' # 描述 description: '描述:用于管理集团旗下公司的人员信息,具体包括XXX,XXX模块...' # 版本 diff --git a/ruoyi-admin/src/test/java/org/dromara/test/DemoUnitTest.java b/ruoyi-admin/src/test/java/org/dromara/test/DemoUnitTest.java index 5b3dfdc91..2d11a10f0 100644 --- a/ruoyi-admin/src/test/java/org/dromara/test/DemoUnitTest.java +++ b/ruoyi-admin/src/test/java/org/dromara/test/DemoUnitTest.java @@ -1,6 +1,6 @@ package org.dromara.test; -import org.dromara.common.core.config.RuoYiConfig; +import org.dromara.common.web.config.properties.CaptchaProperties; import org.junit.jupiter.api.*; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; @@ -17,19 +17,19 @@ import java.util.concurrent.TimeUnit; public class DemoUnitTest { @Autowired - private RuoYiConfig ruoYiConfig; + private CaptchaProperties captchaProperties; @DisplayName("测试 @SpringBootTest @Test @DisplayName 注解") @Test public void testTest() { - System.out.println(ruoYiConfig); + System.out.println(captchaProperties); } @Disabled @DisplayName("测试 @Disabled 注解") @Test public void testDisabled() { - System.out.println(ruoYiConfig); + System.out.println(captchaProperties); } @Timeout(value = 2L, unit = TimeUnit.SECONDS) @@ -37,7 +37,7 @@ public class DemoUnitTest { @Test public void testTimeout() throws InterruptedException { Thread.sleep(3000); - System.out.println(ruoYiConfig); + System.out.println(captchaProperties); } diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/config/RuoYiConfig.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/config/RuoYiConfig.java deleted file mode 100644 index cc0d2dfce..000000000 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/config/RuoYiConfig.java +++ /dev/null @@ -1,33 +0,0 @@ -package org.dromara.common.core.config; - -import lombok.Data; -import org.springframework.boot.context.properties.ConfigurationProperties; -import org.springframework.stereotype.Component; - -/** - * 读取项目相关配置 - * - * @author Lion Li - */ - -@Data -@Component -@ConfigurationProperties(prefix = "ruoyi") -public class RuoYiConfig { - - /** - * 项目名称 - */ - private String name; - - /** - * 版本 - */ - private String version; - - /** - * 版权年份 - */ - private String copyrightYear; - -} diff --git a/ruoyi-common/ruoyi-common-core/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports b/ruoyi-common/ruoyi-common-core/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports index 3395e73bd..43c7fcfe0 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports +++ b/ruoyi-common/ruoyi-common-core/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports @@ -1,6 +1,5 @@ org.dromara.common.core.config.ApplicationConfig org.dromara.common.core.config.AsyncConfig -org.dromara.common.core.config.RuoYiConfig org.dromara.common.core.config.ThreadPoolConfig org.dromara.common.core.config.ValidatorConfig org.dromara.common.core.utils.SpringUtils -- Gitee From 7b679e60e07490eb87e41f3e8a7a14c472111950 Mon Sep 17 00:00:00 2001 From: AprilWind <2100166581@qq.com> Date: Tue, 25 Feb 2025 17:55:54 +0800 Subject: [PATCH 428/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=E5=B7=A5?= =?UTF-8?q?=E4=BD=9C=E6=B5=81=E8=AE=BE=E8=AE=A1=E5=99=A8=E8=8E=B7=E5=8F=96?= =?UTF-8?q?=E4=BB=BB=E5=8A=A1=E6=89=A7=E8=A1=8C=E4=BA=BA=E6=9F=A5=E8=AF=A2?= =?UTF-8?q?=E6=AD=A3=E5=B8=B8=E7=8A=B6=E6=80=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../system/service/impl/SysTaskAssigneeServiceImpl.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTaskAssigneeServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTaskAssigneeServiceImpl.java index 23dd0520c..2fbf2408b 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTaskAssigneeServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTaskAssigneeServiceImpl.java @@ -53,6 +53,7 @@ public class SysTaskAssigneeServiceImpl implements TaskAssigneeService { PageQuery pageQuery = new PageQuery(taskQuery.getPageSize(), taskQuery.getPageNum()); QueryWrapper wrapper = Wrappers.query(); wrapper.eq("r.del_flag", SystemConstants.NORMAL) + .eq("r.status", SystemConstants.NORMAL) .like(StringUtils.isNotBlank(taskQuery.getHandlerCode()), "r.role_name", taskQuery.getHandlerCode()) .like(StringUtils.isNotBlank(taskQuery.getHandlerName()), "r.role_key", taskQuery.getHandlerName()) .between(StringUtils.isNotBlank(taskQuery.getBeginTime()) && StringUtils.isNotBlank(taskQuery.getEndTime()), @@ -75,6 +76,7 @@ public class SysTaskAssigneeServiceImpl implements TaskAssigneeService { public TaskAssigneeDTO selectPostsByTaskAssigneeList(TaskAssigneeBody taskQuery) { PageQuery pageQuery = new PageQuery(taskQuery.getPageSize(), taskQuery.getPageNum()); LambdaQueryWrapper wrapper = Wrappers.lambdaQuery() + .eq(SysPost::getStatus, SystemConstants.NORMAL) .like(StringUtils.isNotBlank(taskQuery.getHandlerCode()), SysPost::getPostCategory, taskQuery.getHandlerCode()) .like(StringUtils.isNotBlank(taskQuery.getHandlerName()), SysPost::getPostName, taskQuery.getHandlerName()) .between(StringUtils.isNotBlank(taskQuery.getBeginTime()) && StringUtils.isNotBlank(taskQuery.getEndTime()), @@ -106,6 +108,7 @@ public class SysTaskAssigneeServiceImpl implements TaskAssigneeService { PageQuery pageQuery = new PageQuery(taskQuery.getPageSize(), taskQuery.getPageNum()); LambdaQueryWrapper wrapper = Wrappers.lambdaQuery() .eq(SysDept::getDelFlag, SystemConstants.NORMAL) + .eq(SysDept::getStatus, SystemConstants.NORMAL) .like(StringUtils.isNotBlank(taskQuery.getHandlerCode()), SysDept::getDeptCategory, taskQuery.getHandlerCode()) .like(StringUtils.isNotBlank(taskQuery.getHandlerName()), SysDept::getDeptName, taskQuery.getHandlerName()) .between(StringUtils.isNotBlank(taskQuery.getBeginTime()) && StringUtils.isNotBlank(taskQuery.getEndTime()), @@ -143,6 +146,7 @@ public class SysTaskAssigneeServiceImpl implements TaskAssigneeService { PageQuery pageQuery = new PageQuery(taskQuery.getPageSize(), taskQuery.getPageNum()); QueryWrapper wrapper = Wrappers.query(); wrapper.eq("u.del_flag", SystemConstants.NORMAL) + .eq("u.status", SystemConstants.NORMAL) .like(StringUtils.isNotBlank(taskQuery.getHandlerCode()), "u.user_name", taskQuery.getHandlerCode()) .like(StringUtils.isNotBlank(taskQuery.getHandlerName()), "u.nick_name", taskQuery.getHandlerName()) .between(taskQuery.getBeginTime() != null && taskQuery.getEndTime() != null, -- Gitee From b537899e62f35de3a35fec86f878ac477a4e40b6 Mon Sep 17 00:00:00 2001 From: AprilWind <2100166581@qq.com> Date: Tue, 25 Feb 2025 22:18:58 +0800 Subject: [PATCH 429/540] =?UTF-8?q?update=20=E6=9B=B4=E6=96=B0warm-flow?= =?UTF-8?q?=E7=89=88=E6=9C=AC=E5=88=B01.6.7-M1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 2 +- .../src/main/resources/application.yml | 8 ++ .../common/core/domain/dto/DeptDTO.java | 1 - .../common/core/domain/dto/DictDataDTO.java | 41 ++++++ .../common/core/domain/dto/DictTypeDTO.java | 41 ++++++ .../common/core/service/DictService.java | 20 +++ .../service/impl/SysDictTypeServiceImpl.java | 35 ++++- .../service/impl/FlwNodeExtServiceImpl.java | 125 ++++++++++++++++++ script/sql/ry_workflow.sql | 4 +- script/sql/update/update_5.3.0-5.3.1.sql | 6 + 10 files changed, 278 insertions(+), 5 deletions(-) create mode 100644 ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/DictDataDTO.java create mode 100644 ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/DictTypeDTO.java create mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwNodeExtServiceImpl.java create mode 100644 script/sql/update/update_5.3.0-5.3.1.sql diff --git a/pom.xml b/pom.xml index cc86e9b83..3d8a5c7e3 100644 --- a/pom.xml +++ b/pom.xml @@ -50,7 +50,7 @@ 8.7.2-20250101 - 1.6.6 + 1.6.7-M1 3.2.2 diff --git a/ruoyi-admin/src/main/resources/application.yml b/ruoyi-admin/src/main/resources/application.yml index 2a134a977..86deca2b2 100644 --- a/ruoyi-admin/src/main/resources/application.yml +++ b/ruoyi-admin/src/main/resources/application.yml @@ -272,3 +272,11 @@ warm-flow: ui: true # 默认Authorization,如果有多个token,用逗号分隔 token-name: ${sa-token.token-name},clientid + # 流程状态对应的三元色 + chart-status-color: + ## 未办理 + - 157,255,0 + ## 待办理 + - 0,0,0 + ## 已办理 + - 255,200,0 diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/DeptDTO.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/DeptDTO.java index 65c012faf..7b748b0b5 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/DeptDTO.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/DeptDTO.java @@ -11,7 +11,6 @@ import java.io.Serializable; * * @author AprilWind */ - @Data @NoArgsConstructor public class DeptDTO implements Serializable { diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/DictDataDTO.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/DictDataDTO.java new file mode 100644 index 000000000..dff1a75dd --- /dev/null +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/DictDataDTO.java @@ -0,0 +1,41 @@ +package org.dromara.common.core.domain.dto; + +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.io.Serial; +import java.io.Serializable; + +/** + * 字典数据DTO + * + * @author AprilWind + */ +@Data +@NoArgsConstructor +public class DictDataDTO implements Serializable { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 字典标签 + */ + private String dictLabel; + + /** + * 字典键值 + */ + private String dictValue; + + /** + * 是否默认(Y是 N否) + */ + private String isDefault; + + /** + * 备注 + */ + private String remark; + +} diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/DictTypeDTO.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/DictTypeDTO.java new file mode 100644 index 000000000..43ab142c2 --- /dev/null +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/DictTypeDTO.java @@ -0,0 +1,41 @@ +package org.dromara.common.core.domain.dto; + +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.io.Serial; +import java.io.Serializable; + +/** + * 字典类型DTO + * + * @author AprilWind + */ +@Data +@NoArgsConstructor +public class DictTypeDTO implements Serializable { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 字典主键 + */ + private Long dictId; + + /** + * 字典名称 + */ + private String dictName; + + /** + * 字典类型 + */ + private String dictType; + + /** + * 备注 + */ + private String remark; + +} diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/service/DictService.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/service/DictService.java index b78a7f257..7c5097764 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/service/DictService.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/service/DictService.java @@ -1,5 +1,9 @@ package org.dromara.common.core.service; +import org.dromara.common.core.domain.dto.DictDataDTO; +import org.dromara.common.core.domain.dto.DictTypeDTO; + +import java.util.List; import java.util.Map; /** @@ -64,4 +68,20 @@ public interface DictService { */ Map getAllDictByDictType(String dictType); + /** + * 根据字典类型查询详细信息 + * + * @param dictType 字典类型 + * @return 字典类型详细信息 + */ + DictTypeDTO getDictTypeDto(String dictType); + + /** + * 根据字典类型查询字典数据列表 + * + * @param dictType 字典类型 + * @return 字典数据列表 + */ + List getDictDataDto(String dictType); + } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDictTypeServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDictTypeServiceImpl.java index 1be0b7f40..acf2816e8 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDictTypeServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDictTypeServiceImpl.java @@ -1,5 +1,6 @@ package org.dromara.system.service.impl; +import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; @@ -8,6 +9,8 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import lombok.RequiredArgsConstructor; import org.dromara.common.core.constant.CacheNames; +import org.dromara.common.core.domain.dto.DictDataDTO; +import org.dromara.common.core.domain.dto.DictTypeDTO; import org.dromara.common.core.exception.ServiceException; import org.dromara.common.core.service.DictService; import org.dromara.common.core.utils.MapstructUtils; @@ -249,10 +252,40 @@ public class SysDictTypeServiceImpl implements ISysDictTypeService, DictService } } + /** + * 获取字典下所有的字典值与标签 + * + * @param dictType 字典类型 + * @return dictValue为key,dictLabel为值组成的Map + */ @Override public Map getAllDictByDictType(String dictType) { - List list = selectDictDataByType(dictType); + List list = SpringUtils.getAopProxy(this).selectDictDataByType(dictType); return StreamUtils.toMap(list, SysDictDataVo::getDictValue, SysDictDataVo::getDictLabel); } + /** + * 根据字典类型查询详细信息 + * + * @param dictType 字典类型 + * @return 字典类型详细信息 + */ + @Override + public DictTypeDTO getDictTypeDto(String dictType) { + SysDictTypeVo vo = SpringUtils.getAopProxy(this).selectDictTypeByType(dictType); + return BeanUtil.toBean(vo, DictTypeDTO.class); + } + + /** + * 根据字典类型查询字典数据列表 + * + * @param dictType 字典类型 + * @return 字典数据列表 + */ + @Override + public List getDictDataDto(String dictType) { + List list = SpringUtils.getAopProxy(this).selectDictDataByType(dictType); + return BeanUtil.copyToList(list, DictDataDTO.class); + } + } diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwNodeExtServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwNodeExtServiceImpl.java new file mode 100644 index 000000000..fe25268fc --- /dev/null +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwNodeExtServiceImpl.java @@ -0,0 +1,125 @@ +package org.dromara.workflow.service.impl; + +import cn.hutool.core.convert.Convert; +import cn.hutool.core.util.ObjectUtil; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.dromara.common.core.domain.dto.DictTypeDTO; +import org.dromara.common.core.service.DictService; +import org.dromara.common.core.utils.StringUtils; +import org.dromara.warm.flow.ui.service.NodeExtService; +import org.dromara.warm.flow.ui.vo.NodeExt; +import org.dromara.workflow.common.ConditionalOnEnable; +import org.springframework.stereotype.Service; + +import java.util.ArrayList; +import java.util.List; + +/** + * 流程设计器-节点扩展属性 + * + * @author AprilWind + */ +@ConditionalOnEnable +@Slf4j +@RequiredArgsConstructor +@Service +public class FlwNodeExtServiceImpl implements NodeExtService { + + /** + * 权限页 + */ + private static final String BUTTON_PERMISSION_TAB = "wf_button_tab"; + + /** + * 权限页页签名称 + */ + private static final String LIMITS_OF_AUTHORITY = "权限"; + + /** + * 字典类型逗号分隔 + */ + private static final String DICT_TYPES = "wf_button_permission"; + + /** + * 基础设置 + */ + private static final int TYPE_BASE_SETTING = 1; + + /** + * 新页签 + */ + private static final int TYPE_NEW_TAB = 2; + private final DictService dictService; + + /** + * 获取节点扩展属性 + * + * @return 结果 + */ + @Override + public List getNodeExt() { + List nodeExtList = new ArrayList<>(); + // 构建按钮权限页面 + nodeExtList.add(buildNodeExt(BUTTON_PERMISSION_TAB, TYPE_NEW_TAB, DICT_TYPES)); + return nodeExtList; + } + + /** + * 构建一个 NodeExt 对象 + * + * @param code 编码,此json中唯一 + * @param type 节点类型,1:基础设置,2:新页签 + * @return 返回构建好的 NodeExt 对象 + */ + private NodeExt buildNodeExt(String code, int type, String dictTypes) { + NodeExt nodeExt = new NodeExt(); + // 从系统参数配置里面获取信息构建新页面或者基础设置 + // 编码,此json中唯一 + nodeExt.setCode(code); + // 1:基础设置 2:新页签 + nodeExt.setType(type); + // 名称,如果type为新页签时,作为页签名称 + nodeExt.setName(LIMITS_OF_AUTHORITY); + nodeExt.setChilds(StringUtils.splitList(dictTypes) + .stream().map(this::buildChildNode).toList() + ); + return nodeExt; + } + + /** + * 构建一个 ChildNode 对象 + * + * @param dictType 字典类型 + * @return 返回构建好的 ChildNode 对象 + */ + private NodeExt.ChildNode buildChildNode(String dictType) { + NodeExt.ChildNode childNode = new NodeExt.ChildNode(); + if (StringUtils.isBlank(dictType)) { + return childNode; + } + DictTypeDTO dictTypeDTO = dictService.getDictTypeDto(dictType); + if (ObjectUtil.isNull(dictTypeDTO)) { + return childNode; + } + // 编码,此json中唯一 + childNode.setCode(dictType); + // label名称 + childNode.setLabel(dictTypeDTO.getDictName()); + // 描述 + childNode.setDesc(dictTypeDTO.getRemark()); + // 1:输入框 2:输入框 3:下拉框 4:选择框 + childNode.setType(4); + // 是否必填 + childNode.setMust(false); + // 是否多选 + childNode.setMultiple(true); + // 字典,下拉框和复选框时用到 + childNode.setDict(dictService.getDictDataDto(dictType) + .stream().map(x -> + new NodeExt.DictItem(x.getDictLabel(), x.getDictValue(), Convert.toBool(x.getIsDefault(), false)) + ).toList()); + return childNode; + } + +} diff --git a/script/sql/ry_workflow.sql b/script/sql/ry_workflow.sql index 9455636a0..652f4c084 100644 --- a/script/sql/ry_workflow.sql +++ b/script/sql/ry_workflow.sql @@ -24,7 +24,7 @@ CREATE TABLE `flow_definition` CREATE TABLE `flow_node` ( - `id` bigint unsigned NOT NULL COMMENT '主键id', + `id` bigint NOT NULL COMMENT '主键id', `node_type` tinyint(1) NOT NULL COMMENT '节点类型(0开始节点 1中间节点 2结束节点 3互斥网关 4并行网关)', `definition_id` bigint NOT NULL COMMENT '流程定义id', `node_code` varchar(100) NOT NULL COMMENT '流程节点编码', @@ -32,7 +32,6 @@ CREATE TABLE `flow_node` `permission_flag` varchar(200) DEFAULT NULL COMMENT '权限标识(权限类型:权限标识,可以多个,用逗号隔开)', `node_ratio` decimal(6, 3) DEFAULT NULL COMMENT '流程签署比例值', `coordinate` varchar(100) DEFAULT NULL COMMENT '坐标', - `skip_any_node` varchar(100) DEFAULT 'N' COMMENT '是否可以退回任意节点(Y是 N否)即将删除', `any_node_skip` varchar(100) DEFAULT NULL COMMENT '任意结点跳转', `listener_type` varchar(100) DEFAULT NULL COMMENT '监听器类型', `listener_path` varchar(400) DEFAULT NULL COMMENT '监听器路径', @@ -43,6 +42,7 @@ CREATE TABLE `flow_node` `version` varchar(20) NOT NULL COMMENT '版本', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_time` datetime DEFAULT NULL COMMENT '更新时间', + `ext` text COMMENT '扩展属性', `del_flag` char(1) DEFAULT '0' COMMENT '删除标志', `tenant_id` varchar(40) DEFAULT NULL COMMENT '租户id', PRIMARY KEY (`id`) USING BTREE diff --git a/script/sql/update/update_5.3.0-5.3.1.sql b/script/sql/update/update_5.3.0-5.3.1.sql new file mode 100644 index 000000000..8c313b25b --- /dev/null +++ b/script/sql/update/update_5.3.0-5.3.1.sql @@ -0,0 +1,6 @@ +ALTER TABLE `flow_node` DROP COLUMN `skip_any_node`; +ALTER TABLE `flow_node` + ADD COLUMN `ext` text NULL COMMENT '扩展属性' AFTER `update_time`; + +INSERT INTO sys_dict_type VALUES (16, '000000', '按钮权限', 'wf_button_permission', 103, 1, sysdate(), NULL, NULL, '按钮权限列表'); +INSERT INTO sys_dict_data VALUES (60, '000000', 1, '是否弹窗选人', '1', 'wf_button_permission', '', 'default', 'N', 103, 1, sysdate(), NULL, NULL,'是否弹窗选人'); -- Gitee From 0673cf88491ce394810e2176b035a1b62a7270cf Mon Sep 17 00:00:00 2001 From: AprilWind <2100166581@qq.com> Date: Tue, 25 Feb 2025 22:56:27 +0800 Subject: [PATCH 430/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=E6=B5=81?= =?UTF-8?q?=E7=A8=8B=E8=AE=BE=E8=AE=A1=E5=99=A8-=E8=8A=82=E7=82=B9?= =?UTF-8?q?=E6=89=A9=E5=B1=95=E5=B1=9E=E6=80=A7=E6=B3=A8=E9=87=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/FlwNodeExtServiceImpl.java | 43 ++++++++++++------- 1 file changed, 27 insertions(+), 16 deletions(-) diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwNodeExtServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwNodeExtServiceImpl.java index fe25268fc..f7e58ed70 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwNodeExtServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwNodeExtServiceImpl.java @@ -13,7 +13,9 @@ import org.dromara.workflow.common.ConditionalOnEnable; import org.springframework.stereotype.Service; import java.util.ArrayList; +import java.util.HashMap; import java.util.List; +import java.util.Map; /** * 流程设计器-节点扩展属性 @@ -27,14 +29,14 @@ import java.util.List; public class FlwNodeExtServiceImpl implements NodeExtService { /** - * 权限页 + * 权限页code */ - private static final String BUTTON_PERMISSION_TAB = "wf_button_tab"; + private static final String PERMISSION_TAB = "wf_button_tab"; /** - * 权限页页签名称 + * 权限页名称 */ - private static final String LIMITS_OF_AUTHORITY = "权限"; + private static final String PERMISSION_TAB_NAME = "权限"; /** * 字典类型逗号分隔 @@ -50,6 +52,16 @@ public class FlwNodeExtServiceImpl implements NodeExtService { * 新页签 */ private static final int TYPE_NEW_TAB = 2; + + /** + * 存储不同 dictType 对应的配置信息 + */ + private static final Map> CHILD_NODE_MAP = new HashMap<>(); + + static { + CHILD_NODE_MAP.put("wf_button_permission", Map.of("type", 4, "must", false, "multiple", true)); + } + private final DictService dictService; /** @@ -61,26 +73,24 @@ public class FlwNodeExtServiceImpl implements NodeExtService { public List getNodeExt() { List nodeExtList = new ArrayList<>(); // 构建按钮权限页面 - nodeExtList.add(buildNodeExt(BUTTON_PERMISSION_TAB, TYPE_NEW_TAB, DICT_TYPES)); + nodeExtList.add(buildNodeExt(PERMISSION_TAB, PERMISSION_TAB_NAME, TYPE_NEW_TAB, DICT_TYPES)); return nodeExtList; } /** * 构建一个 NodeExt 对象 * - * @param code 编码,此json中唯一 - * @param type 节点类型,1:基础设置,2:新页签 + * @param code 编码,此json中唯一 + * @param name 名称,如果type为新页签时,作为页签名称 + * @param type 节点类型,1:基础设置,2:新页签 + * @param dictTypes 字典类型逗号分隔 * @return 返回构建好的 NodeExt 对象 */ - private NodeExt buildNodeExt(String code, int type, String dictTypes) { + private NodeExt buildNodeExt(String code, String name, int type, String dictTypes) { NodeExt nodeExt = new NodeExt(); - // 从系统参数配置里面获取信息构建新页面或者基础设置 - // 编码,此json中唯一 nodeExt.setCode(code); - // 1:基础设置 2:新页签 nodeExt.setType(type); - // 名称,如果type为新页签时,作为页签名称 - nodeExt.setName(LIMITS_OF_AUTHORITY); + nodeExt.setName(name); nodeExt.setChilds(StringUtils.splitList(dictTypes) .stream().map(this::buildChildNode).toList() ); @@ -108,12 +118,13 @@ public class FlwNodeExtServiceImpl implements NodeExtService { childNode.setLabel(dictTypeDTO.getDictName()); // 描述 childNode.setDesc(dictTypeDTO.getRemark()); + Map map = CHILD_NODE_MAP.get(dictType); // 1:输入框 2:输入框 3:下拉框 4:选择框 - childNode.setType(4); + childNode.setType(Convert.toInt(map.get("type"), 1)); // 是否必填 - childNode.setMust(false); + childNode.setMust(Convert.toBool(map.get("must"), false)); // 是否多选 - childNode.setMultiple(true); + childNode.setMultiple(Convert.toBool(map.get("multiple"), true)); // 字典,下拉框和复选框时用到 childNode.setDict(dictService.getDictDataDto(dictType) .stream().map(x -> -- Gitee From 319a89e3205f7a49a810c3ac8efb021884cf55ab Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Tue, 25 Feb 2025 23:39:02 +0800 Subject: [PATCH 431/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20oracle=20?= =?UTF-8?q?=E5=90=8C=E6=AD=A5=E5=AD=97=E5=85=B8=E6=8A=A5=E9=94=99=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dromara/system/service/impl/SysTenantServiceImpl.java | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java index b2f4872be..a73415c64 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java @@ -448,6 +448,9 @@ public class SysTenantServiceImpl implements ISysTenantService { data.setTenantId(tenantId); data.setCreateTime(null); data.setUpdateTime(null); + data.setCreateDept(null); + data.setCreateBy(null); + data.setUpdateBy(null); set.add(tenantId); saveDataList.add(data); } @@ -469,6 +472,9 @@ public class SysTenantServiceImpl implements ISysTenantService { data.setTenantId(tenantId); data.setCreateTime(null); data.setUpdateTime(null); + data.setCreateDept(null); + data.setCreateBy(null); + data.setUpdateBy(null); set.add(tenantId); saveDataList.add(data); } -- Gitee From 71180584dab104c40351f87ef4cf8070d4201535 Mon Sep 17 00:00:00 2001 From: AprilWind <2100166581@qq.com> Date: Wed, 26 Feb 2025 09:54:20 +0800 Subject: [PATCH 432/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=E6=A0=B9?= =?UTF-8?q?=E6=8D=AE=E5=AD=97=E5=85=B8=E7=B1=BB=E5=9E=8B=E6=9F=A5=E8=AF=A2?= =?UTF-8?q?=E4=BF=A1=E6=81=AF=E5=A2=9E=E5=8A=A0=E4=B8=80=E7=BA=A7=E7=BC=93?= =?UTF-8?q?=E5=AD=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/org/dromara/common/core/constant/CacheNames.java | 5 +++++ .../dromara/system/service/impl/SysDictTypeServiceImpl.java | 4 ++++ 2 files changed, 9 insertions(+) diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/CacheNames.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/CacheNames.java index bf8efc550..519034cf2 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/CacheNames.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/CacheNames.java @@ -30,6 +30,11 @@ public interface CacheNames { */ String SYS_DICT = "sys_dict"; + /** + * 数据字典类型 + */ + String SYS_DICT_TYPE = "sys_dict_type"; + /** * 租户 */ diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDictTypeServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDictTypeServiceImpl.java index acf2816e8..9d80d50e4 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDictTypeServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDictTypeServiceImpl.java @@ -124,6 +124,7 @@ public class SysDictTypeServiceImpl implements ISysDictTypeService, DictService * @param dictType 字典类型 * @return 字典类型 */ + @Cacheable(cacheNames = CacheNames.SYS_DICT_TYPE, key = "#dictType") @Override public SysDictTypeVo selectDictTypeByType(String dictType) { return baseMapper.selectVoOne(new LambdaQueryWrapper().eq(SysDictType::getDictType, dictType)); @@ -143,6 +144,7 @@ public class SysDictTypeServiceImpl implements ISysDictTypeService, DictService throw new ServiceException(String.format("%1$s已分配,不能删除", dictType.getDictName())); } CacheUtils.evict(CacheNames.SYS_DICT, dictType.getDictType()); + CacheUtils.evict(CacheNames.SYS_DICT_TYPE, dictType.getDictType()); } baseMapper.deleteByIds(Arrays.asList(dictIds)); } @@ -153,6 +155,7 @@ public class SysDictTypeServiceImpl implements ISysDictTypeService, DictService @Override public void resetDictCache() { CacheUtils.clear(CacheNames.SYS_DICT); + CacheUtils.clear(CacheNames.SYS_DICT_TYPE); } /** @@ -191,6 +194,7 @@ public class SysDictTypeServiceImpl implements ISysDictTypeService, DictService int row = baseMapper.updateById(dict); if (row > 0) { CacheUtils.evict(CacheNames.SYS_DICT, oldDict.getDictType()); + CacheUtils.evict(CacheNames.SYS_DICT_TYPE, oldDict.getDictType()); return dictDataMapper.selectDictDataByType(dict.getDictType()); } throw new ServiceException("操作失败"); -- Gitee From 8763bfa3d32b91ca24d9c572ad5a9a5ee46bd6a2 Mon Sep 17 00:00:00 2001 From: AprilWind <2100166581@qq.com> Date: Thu, 27 Feb 2025 17:31:08 +0800 Subject: [PATCH 433/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=E5=88=A0?= =?UTF-8?q?=E9=99=A4=E6=97=A0=E7=94=A8=E6=8E=92=E9=99=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ruoyi-admin/src/main/resources/application.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/ruoyi-admin/src/main/resources/application.yml b/ruoyi-admin/src/main/resources/application.yml index 86deca2b2..76ed0d695 100644 --- a/ruoyi-admin/src/main/resources/application.yml +++ b/ruoyi-admin/src/main/resources/application.yml @@ -219,7 +219,6 @@ xss: # 排除链接(多个用逗号分隔) excludeUrls: - /system/notice - - /warm-flow/save-xml # 全局线程池相关配置 # 如使用JDK21请直接使用虚拟线程 不要开启此配置 -- Gitee From c0e0b41d13a4d2cc95c697ac3dfc90447f74ac38 Mon Sep 17 00:00:00 2001 From: AprilWind <2100166581@qq.com> Date: Fri, 28 Feb 2025 12:05:35 +0800 Subject: [PATCH 434/540] =?UTF-8?q?update=20=E6=9B=B4=E6=96=B0warm-flow?= =?UTF-8?q?=E7=89=88=E6=9C=AC=E5=88=B01.6.7-M2,=E6=9D=83=E9=99=90=E6=8C=89?= =?UTF-8?q?=E9=92=AE=E6=94=B9=E4=B8=BA=E6=9E=9A=E4=B8=BE=E7=B1=BB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 2 +- .../common/enums/ButtonPermissionEnum.java | 30 +++++ .../workflow/common/enums/NodeExtEnum.java | 26 +++++ .../service/impl/FlwNodeExtServiceImpl.java | 106 +++++++++++++----- 4 files changed, 137 insertions(+), 27 deletions(-) create mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/enums/ButtonPermissionEnum.java create mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/enums/NodeExtEnum.java diff --git a/pom.xml b/pom.xml index 3d8a5c7e3..8bde7d395 100644 --- a/pom.xml +++ b/pom.xml @@ -50,7 +50,7 @@ 8.7.2-20250101 - 1.6.7-M1 + 1.6.7-M2 3.2.2 diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/enums/ButtonPermissionEnum.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/enums/ButtonPermissionEnum.java new file mode 100644 index 000000000..6bc818c4c --- /dev/null +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/enums/ButtonPermissionEnum.java @@ -0,0 +1,30 @@ +package org.dromara.workflow.common.enums; + +import lombok.AllArgsConstructor; +import lombok.Getter; + +/** + * 按钮权限枚举 + * + * @author AprilWind + */ +@Getter +@AllArgsConstructor +public enum ButtonPermissionEnum implements NodeExtEnum { + + /** + * 是否弹窗选人 + */ + APPROVE("是否弹窗选人", "1", false), + + /** + * 是否能委托 + */ + REJECT("是否能委托", "2", false); + + private final String label; + private final String value; + private final boolean selected; + +} + diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/enums/NodeExtEnum.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/enums/NodeExtEnum.java new file mode 100644 index 000000000..dfa9e9a99 --- /dev/null +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/enums/NodeExtEnum.java @@ -0,0 +1,26 @@ +package org.dromara.workflow.common.enums; + +/** + * 节点扩展属性枚举 + * + * @author AprilWind + */ +public interface NodeExtEnum { + + /** + * 选项label + */ + String getLabel(); + + /** + * 选项值 + */ + String getValue(); + + /** + * 是否默认选中 + */ + boolean isSelected(); + +} + diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwNodeExtServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwNodeExtServiceImpl.java index f7e58ed70..0b4d4b790 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwNodeExtServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwNodeExtServiceImpl.java @@ -10,12 +10,11 @@ import org.dromara.common.core.utils.StringUtils; import org.dromara.warm.flow.ui.service.NodeExtService; import org.dromara.warm.flow.ui.vo.NodeExt; import org.dromara.workflow.common.ConditionalOnEnable; +import org.dromara.workflow.common.enums.ButtonPermissionEnum; +import org.dromara.workflow.common.enums.NodeExtEnum; import org.springframework.stereotype.Service; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; +import java.util.*; /** * 流程设计器-节点扩展属性 @@ -39,9 +38,9 @@ public class FlwNodeExtServiceImpl implements NodeExtService { private static final String PERMISSION_TAB_NAME = "权限"; /** - * 字典类型逗号分隔 + * 枚举类型标识 */ - private static final String DICT_TYPES = "wf_button_permission"; + private static final String ENUM_TYPE_PREFIX = "enum:"; /** * 基础设置 @@ -59,7 +58,8 @@ public class FlwNodeExtServiceImpl implements NodeExtService { private static final Map> CHILD_NODE_MAP = new HashMap<>(); static { - CHILD_NODE_MAP.put("wf_button_permission", Map.of("type", 4, "must", false, "multiple", true)); + CHILD_NODE_MAP.put(ButtonPermissionEnum.class.getName(), + Map.of("label", "权限按钮", "type", 4, "must", false, "multiple", true)); } private final DictService dictService; @@ -73,26 +73,29 @@ public class FlwNodeExtServiceImpl implements NodeExtService { public List getNodeExt() { List nodeExtList = new ArrayList<>(); // 构建按钮权限页面 - nodeExtList.add(buildNodeExt(PERMISSION_TAB, PERMISSION_TAB_NAME, TYPE_NEW_TAB, DICT_TYPES)); + nodeExtList.add(buildNodeExt(PERMISSION_TAB, PERMISSION_TAB_NAME, TYPE_NEW_TAB, + ENUM_TYPE_PREFIX + ButtonPermissionEnum.class.getName())); return nodeExtList; } /** * 构建一个 NodeExt 对象 * - * @param code 编码,此json中唯一 - * @param name 名称,如果type为新页签时,作为页签名称 - * @param type 节点类型,1:基础设置,2:新页签 - * @param dictTypes 字典类型逗号分隔 + * @param code 编码,此json中唯一 + * @param name 名称,如果type为新页签时,作为页签名称 + * @param type 节点类型,1:基础设置,2:新页签 + * @param sourceTypes 字典/枚举类型来源(逗号分隔) * @return 返回构建好的 NodeExt 对象 */ - private NodeExt buildNodeExt(String code, String name, int type, String dictTypes) { + private NodeExt buildNodeExt(String code, String name, int type, String sourceTypes) { NodeExt nodeExt = new NodeExt(); nodeExt.setCode(code); nodeExt.setType(type); nodeExt.setName(name); - nodeExt.setChilds(StringUtils.splitList(dictTypes) - .stream().map(this::buildChildNode).toList() + nodeExt.setChilds(StringUtils.splitList(sourceTypes) + .stream().map(this::buildChildNode) + .filter(ObjectUtil::isNotNull) + .toList() ); return nodeExt; } @@ -100,36 +103,87 @@ public class FlwNodeExtServiceImpl implements NodeExtService { /** * 构建一个 ChildNode 对象 * - * @param dictType 字典类型 + * @param sourceType 字典类型 * @return 返回构建好的 ChildNode 对象 */ - private NodeExt.ChildNode buildChildNode(String dictType) { - NodeExt.ChildNode childNode = new NodeExt.ChildNode(); - if (StringUtils.isBlank(dictType)) { + private NodeExt.ChildNode buildChildNode(String sourceType) { + return sourceType.startsWith(ENUM_TYPE_PREFIX) ? + buildChildNodeFromEnum(sourceType.substring(ENUM_TYPE_PREFIX.length())) : buildChildNodeFromDict(sourceType); + } + + /** + * 根据枚举构建一个 ChildNode 对象 + * + * @param enumClassName 枚举名称 + * @return 返回构建好的 ChildNode 对象 + */ + private NodeExt.ChildNode buildChildNodeFromEnum(String enumClassName) { + try { + Class enumClass = Class.forName(enumClassName); + if (!enumClass.isEnum()) { + return null; + } + NodeExt.ChildNode childNode = buildChildNodeMap(enumClassName); + // 编码,此json中唯 + childNode.setCode(ENUM_TYPE_PREFIX + enumClassName); + // 字典,下拉框和复选框时用到 + childNode.setDict(Arrays.stream(enumClass.getEnumConstants()) + .filter(NodeExtEnum.class::isInstance) + .map(NodeExtEnum.class::cast) + .map(x -> + new NodeExt.DictItem(x.getLabel(), x.getValue(), x.isSelected()) + ).toList()); return childNode; + } catch (ClassNotFoundException e) { + log.error("Enum class not found: {}", enumClassName, e); } + return null; + } + + /** + * 根据字典构建一个 ChildNode 对象 + * + * @param dictType 字典类型 + * @return 返回构建好的 ChildNode 对象 + */ + private NodeExt.ChildNode buildChildNodeFromDict(String dictType) { DictTypeDTO dictTypeDTO = dictService.getDictTypeDto(dictType); if (ObjectUtil.isNull(dictTypeDTO)) { - return childNode; + return null; } + NodeExt.ChildNode childNode = buildChildNodeMap(dictType); // 编码,此json中唯一 childNode.setCode(dictType); // label名称 childNode.setLabel(dictTypeDTO.getDictName()); // 描述 childNode.setDesc(dictTypeDTO.getRemark()); - Map map = CHILD_NODE_MAP.get(dictType); + // 字典,下拉框和复选框时用到 + childNode.setDict(dictService.getDictDataDto(dictType) + .stream().map(x -> + new NodeExt.DictItem(x.getDictLabel(), x.getDictValue(), Convert.toBool(x.getIsDefault(), false)) + ).toList()); + return childNode; + } + + /** + * 根据 CHILD_NODE_MAP 中的配置信息,构建一个基本的 ChildNode 对象 + * 该方法用于设置 ChildNode 的常规属性,例如 label、type、是否必填、是否多选等 + * + * @param key CHILD_NODE_MAP 的 key + * @return 返回构建好的 ChildNode 对象 + */ + private NodeExt.ChildNode buildChildNodeMap(String key) { + NodeExt.ChildNode childNode = new NodeExt.ChildNode(); + Map map = CHILD_NODE_MAP.get(key); + // label名称 + childNode.setLabel((String) map.get("label")); // 1:输入框 2:输入框 3:下拉框 4:选择框 childNode.setType(Convert.toInt(map.get("type"), 1)); // 是否必填 childNode.setMust(Convert.toBool(map.get("must"), false)); // 是否多选 childNode.setMultiple(Convert.toBool(map.get("multiple"), true)); - // 字典,下拉框和复选框时用到 - childNode.setDict(dictService.getDictDataDto(dictType) - .stream().map(x -> - new NodeExt.DictItem(x.getDictLabel(), x.getDictValue(), Convert.toBool(x.getIsDefault(), false)) - ).toList()); return childNode; } -- Gitee From 2623d0b3438f247b0c3c68bfcd26d387215da9ec Mon Sep 17 00:00:00 2001 From: AprilWind <2100166581@qq.com> Date: Fri, 28 Feb 2025 14:46:59 +0800 Subject: [PATCH 435/540] =?UTF-8?q?update=20=E8=B0=83=E6=95=B4=E6=B3=A8?= =?UTF-8?q?=E9=87=8A=E9=94=99=E8=AF=AF=EF=BC=8C=E8=A1=A5=E5=85=85=E6=B3=A8?= =?UTF-8?q?=E9=87=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/org/dromara/common/core/domain/dto/RoleDTO.java | 2 +- .../src/main/java/org/dromara/system/domain/SysRole.java | 2 +- .../src/main/java/org/dromara/system/domain/bo/SysRoleBo.java | 2 +- .../src/main/java/org/dromara/system/domain/vo/SysRoleVo.java | 4 ++-- script/sql/oracle/oracle_ry_vue_5.X.sql | 2 +- script/sql/postgres/postgres_ry_vue_5.X.sql | 2 +- script/sql/ry_vue_5.X.sql | 2 +- script/sql/sqlserver/sqlserver_ry_vue_5.X.sql | 2 +- 8 files changed, 9 insertions(+), 9 deletions(-) diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/RoleDTO.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/RoleDTO.java index aea8e7a9d..d14ffbb0f 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/RoleDTO.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/RoleDTO.java @@ -35,7 +35,7 @@ public class RoleDTO implements Serializable { private String roleKey; /** - * 数据范围(1:所有数据权限;2:自定义数据权限;3:本部门数据权限;4:本部门及以下数据权限;5:仅本人数据权限) + * 数据范围(1:全部数据权限 2:自定数据权限 3:本部门数据权限 4:本部门及以下数据权限 5:仅本人数据权限 6:部门及以下或本人数据权限) */ private String dataScope; diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysRole.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysRole.java index a7c0ad5a0..aa1b19a4f 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysRole.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysRole.java @@ -42,7 +42,7 @@ public class SysRole extends TenantEntity { private Integer roleSort; /** - * 数据范围(1:所有数据权限;2:自定义数据权限;3:本部门数据权限;4:本部门及以下数据权限;5:仅本人数据权限) + * 数据范围(1:全部数据权限 2:自定数据权限 3:本部门数据权限 4:本部门及以下数据权限 5:仅本人数据权限 6:部门及以下或本人数据权限) */ private String dataScope; diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysRoleBo.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysRoleBo.java index 3207bad1e..5e3e60260 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysRoleBo.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysRoleBo.java @@ -49,7 +49,7 @@ public class SysRoleBo extends BaseEntity { private Integer roleSort; /** - * 数据范围(1:全部数据权限 2:自定数据权限 3:本部门数据权限 4:本部门及以下数据权限) + * 数据范围(1:全部数据权限 2:自定数据权限 3:本部门数据权限 4:本部门及以下数据权限 5:仅本人数据权限 6:部门及以下或本人数据权限) */ private String dataScope; diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysRoleVo.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysRoleVo.java index ffb2c6d5a..1913170ed 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysRoleVo.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysRoleVo.java @@ -51,10 +51,10 @@ public class SysRoleVo implements Serializable { private Integer roleSort; /** - * 数据范围(1:全部数据权限 2:自定数据权限 3:本部门数据权限 4:本部门及以下数据权限) + * 数据范围(1:全部数据权限 2:自定数据权限 3:本部门数据权限 4:本部门及以下数据权限 5:仅本人数据权限 6:部门及以下或本人数据权限) */ @ExcelProperty(value = "数据范围", converter = ExcelDictConvert.class) - @ExcelDictFormat(readConverterExp = "1=所有数据权限,2=自定义数据权限,3=本部门数据权限,4=本部门及以下数据权限,5=仅本人数据权限") + @ExcelDictFormat(readConverterExp = "1=全部数据权限,2=自定义数据权限,3=本部门数据权限,4=本部门及以下数据权限,5=仅本人数据权限,6=部门及以下或本人数据权限") private String dataScope; /** diff --git a/script/sql/oracle/oracle_ry_vue_5.X.sql b/script/sql/oracle/oracle_ry_vue_5.X.sql index 8390bceef..a1c1d99e1 100644 --- a/script/sql/oracle/oracle_ry_vue_5.X.sql +++ b/script/sql/oracle/oracle_ry_vue_5.X.sql @@ -352,7 +352,7 @@ comment on column sys_role.tenant_id is '租户编号'; comment on column sys_role.role_name is '角色名称'; comment on column sys_role.role_key is '角色权限字符串'; comment on column sys_role.role_sort is '显示顺序'; -comment on column sys_role.data_scope is '数据范围(1:全部数据权限 2:自定数据权限 3:本部门数据权限 4:本部门及以下数据权限)'; +comment on column sys_role.data_scope is '数据范围(1:全部数据权限 2:自定数据权限 3:本部门数据权限 4:本部门及以下数据权限 5:仅本人数据权限 6:部门及以下或本人数据权限)'; comment on column sys_role.menu_check_strictly is '菜单树选择项是否关联显示'; comment on column sys_role.dept_check_strictly is '部门树选择项是否关联显示'; comment on column sys_role.status is '角色状态(0正常 1停用)'; diff --git a/script/sql/postgres/postgres_ry_vue_5.X.sql b/script/sql/postgres/postgres_ry_vue_5.X.sql index 463896625..22c60650b 100644 --- a/script/sql/postgres/postgres_ry_vue_5.X.sql +++ b/script/sql/postgres/postgres_ry_vue_5.X.sql @@ -353,7 +353,7 @@ comment on column sys_role.tenant_id is '租户编号'; comment on column sys_role.role_name is '角色名称'; comment on column sys_role.role_key is '角色权限字符串'; comment on column sys_role.role_sort is '显示顺序'; -comment on column sys_role.data_scope is '数据范围(1:全部数据权限 2:自定数据权限 3:本部门数据权限 4:本部门及以下数据权限)'; +comment on column sys_role.data_scope is '数据范围(1:全部数据权限 2:自定数据权限 3:本部门数据权限 4:本部门及以下数据权限 5:仅本人数据权限 6:部门及以下或本人数据权限)'; comment on column sys_role.menu_check_strictly is '菜单树选择项是否关联显示'; comment on column sys_role.dept_check_strictly is '部门树选择项是否关联显示'; comment on column sys_role.status is '角色状态(0正常 1停用)'; diff --git a/script/sql/ry_vue_5.X.sql b/script/sql/ry_vue_5.X.sql index 95cb04cea..f2167fa30 100644 --- a/script/sql/ry_vue_5.X.sql +++ b/script/sql/ry_vue_5.X.sql @@ -208,7 +208,7 @@ create table sys_role ( role_name varchar(30) not null comment '角色名称', role_key varchar(100) not null comment '角色权限字符串', role_sort int(4) not null comment '显示顺序', - data_scope char(1) default '1' comment '数据范围(1:全部数据权限 2:自定数据权限 3:本部门数据权限 4:本部门及以下数据权限)', + data_scope char(1) default '1' comment '数据范围(1:全部数据权限 2:自定数据权限 3:本部门数据权限 4:本部门及以下数据权限 5:仅本人数据权限 6:部门及以下或本人数据权限)', menu_check_strictly tinyint(1) default 1 comment '菜单树选择项是否关联显示', dept_check_strictly tinyint(1) default 1 comment '部门树选择项是否关联显示', status char(1) not null comment '角色状态(0正常 1停用)', diff --git a/script/sql/sqlserver/sqlserver_ry_vue_5.X.sql b/script/sql/sqlserver/sqlserver_ry_vue_5.X.sql index 6fdba1e0d..c6d2960d5 100644 --- a/script/sql/sqlserver/sqlserver_ry_vue_5.X.sql +++ b/script/sql/sqlserver/sqlserver_ry_vue_5.X.sql @@ -2318,7 +2318,7 @@ EXEC sys.sp_addextendedproperty 'COLUMN', N'role_sort' GO EXEC sys.sp_addextendedproperty - 'MS_Description', N'数据范围(1:全部数据权限 2:自定数据权限 3:本部门数据权限 4:本部门及以下数据权限)' , + 'MS_Description', N'数据范围(1:全部数据权限 2:自定数据权限 3:本部门数据权限 4:本部门及以下数据权限 5:仅本人数据权限 6:部门及以下或本人数据权限)' , 'SCHEMA', N'dbo', 'TABLE', N'sys_role', 'COLUMN', N'data_scope' -- Gitee From df65670d3de065c046d25d677492a6da1006f772 Mon Sep 17 00:00:00 2001 From: AprilWind <2100166581@qq.com> Date: Fri, 28 Feb 2025 16:06:16 +0800 Subject: [PATCH 436/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=E6=A0=A1?= =?UTF-8?q?=E9=AA=8C=E6=A1=86=E6=9E=B6=E9=85=8D=E7=BD=AE=E7=B1=BB=E5=8A=A0?= =?UTF-8?q?=E8=BD=BD=E9=A1=BA=E5=BA=8F=EF=BC=8C=E7=A1=AE=E4=BF=9D=E4=BC=98?= =?UTF-8?q?=E5=85=88=E4=BA=8E=E9=BB=98=E8=AE=A4=E7=9A=84=E9=AA=8C=E8=AF=81?= =?UTF-8?q?=E9=85=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/dromara/common/core/config/ValidatorConfig.java | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/config/ValidatorConfig.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/config/ValidatorConfig.java index 45c5bd13c..ddcd836e4 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/config/ValidatorConfig.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/config/ValidatorConfig.java @@ -3,6 +3,7 @@ package org.dromara.common.core.config; import jakarta.validation.Validator; import org.hibernate.validator.HibernateValidator; import org.springframework.boot.autoconfigure.AutoConfiguration; +import org.springframework.boot.autoconfigure.validation.ValidationAutoConfiguration; import org.springframework.context.MessageSource; import org.springframework.context.annotation.Bean; import org.springframework.validation.beanvalidation.LocalValidatorFactoryBean; @@ -14,11 +15,11 @@ import java.util.Properties; * * @author Lion Li */ -@AutoConfiguration +@AutoConfiguration(before = ValidationAutoConfiguration.class) public class ValidatorConfig { /** - * 配置校验框架 快速返回模式 + * 配置校验框架 快速失败模式 */ @Bean public Validator validator(MessageSource messageSource) { @@ -28,7 +29,7 @@ public class ValidatorConfig { // 设置使用 HibernateValidator 校验器 factoryBean.setProviderClass(HibernateValidator.class); Properties properties = new Properties(); - // 设置 快速异常返回 + // 设置快速失败模式(fail-fast),即校验过程中一旦遇到失败,立即停止并返回错误 properties.setProperty("hibernate.validator.fail_fast", "true"); factoryBean.setValidationProperties(properties); // 加载配置 -- Gitee From c74c019f23a07ed937763d19d9510d16ea4d80bc Mon Sep 17 00:00:00 2001 From: hfdy2019 <5463852+hfdy2019@user.noreply.gitee.com> Date: Sat, 1 Mar 2025 07:16:37 +0800 Subject: [PATCH 437/540] =?UTF-8?q?=E9=80=82=E9=85=8D=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: hfdy2019 <5463852+hfdy2019@user.noreply.gitee.com> --- pom.xml | 4 +- .../common/mybatis/annotation/DataColumn.java | 27 ++++-- .../mybatis/annotation/DataPermission.java | 8 +- .../handler/PlusDataPermissionHandler.java | 86 ++++++++----------- .../handler/PlusPostInitTableInfoHandler.java | 27 ------ .../tenant/handle/TenantKeyPrefixHandler.java | 9 +- .../common/tenant/helper/TenantHelper.java | 42 ++++----- .../system/SysProfileController.java | 3 +- .../dromara/system/mapper/SysDeptMapper.java | 79 ++++++++++++----- .../dromara/system/mapper/SysPostMapper.java | 25 ++++++ .../dromara/system/mapper/SysRoleMapper.java | 11 +-- .../service/impl/SysDeptServiceImpl.java | 2 +- .../service/impl/SysPostServiceImpl.java | 2 +- .../service/impl/SysRoleServiceImpl.java | 2 +- .../impl/SysTaskAssigneeServiceImpl.java | 67 +++++++-------- .../service/impl/SysUserServiceImpl.java | 4 +- .../resources/mapper/system/SysPostMapper.xml | 11 +++ .../workflow/mapper/FlwCategoryMapper.java | 16 ++-- .../service/impl/FlwCategoryServiceImpl.java | 62 +++++++------ .../service/impl/FlwInstanceServiceImpl.java | 24 +++--- .../service/impl/TestLeaveServiceImpl.java | 4 + 21 files changed, 280 insertions(+), 235 deletions(-) delete mode 100644 ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/PlusPostInitTableInfoHandler.java diff --git a/pom.xml b/pom.xml index 6c88d9b35..8fce0fef6 100644 --- a/pom.xml +++ b/pom.xml @@ -120,8 +120,8 @@ - org.dromara.warm - warm-flow-mybatis-plus-sb3-starter + org.dromara.warm-mybatis-flex + warm-flow-mybatis-flex-sb-starter ${warm-flow.version} diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/annotation/DataColumn.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/annotation/DataColumn.java index 489ad5f7a..1d1116708 100644 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/annotation/DataColumn.java +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/annotation/DataColumn.java @@ -13,7 +13,6 @@ import lombok.Getter; * @author yhan219 * @version 3.5.0 */ - @AllArgsConstructor @Getter public class DataColumn { @@ -38,18 +37,36 @@ public class DataColumn { * * @return 权限标识符 */ -// private String permission; + private String permission; public static DataColumn of(String[] key, String[] value) { - return new DataColumn(key, value); + return of(key, value, null); + } + + public static DataColumn of(String[] key, String[] value, String permission) { + return new DataColumn(key, value, permission); } public static DataColumn of(String key, String value) { - return new DataColumn(new String[]{key}, new String[]{value}); + return of(key, value, null); + } + + + public static DataColumn of(String key, String value, String permission) { + return new DataColumn(new String[]{key}, new String[]{value}, permission); } public static DataColumn of(String key, QueryColumn value) { - return new DataColumn(new String[]{key}, new String[]{"`" + value.getTable().getName() + "`.`" + value.getName() + "`"}); + return of(key, value, null); + } + + public static DataColumn of(String key, QueryColumn value, String permission) { + return new DataColumn(new String[]{key}, new String[]{"`" + value.getTable().getName() + "`.`" + value.getName() + "`"}, permission); + } + + + public static DataColumn of(String permission) { + return of("", "", permission); } } diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/annotation/DataPermission.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/annotation/DataPermission.java index fe7c2a9e6..a35a35316 100644 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/annotation/DataPermission.java +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/annotation/DataPermission.java @@ -33,11 +33,15 @@ public class DataPermission { * 如不填 默认 select 用 OR 其他语句用 AND * 内容 OR 或者 AND */ - // String joinStr; + String joinStr; public static DataPermission of(DataColumn... value) { - return new DataPermission(value); + return new DataPermission(value, null); + } + + public static DataPermission of(String joinStr, DataColumn... value) { + return new DataPermission(value, joinStr); } public void handler(QueryWrapper queryWrapper) { diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/PlusDataPermissionHandler.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/PlusDataPermissionHandler.java index 8a030bfbf..61e78cb27 100644 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/PlusDataPermissionHandler.java +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/PlusDataPermissionHandler.java @@ -18,9 +18,7 @@ import org.dromara.common.mybatis.enums.DataScopeType; import org.dromara.common.mybatis.helper.DataPermissionHelper; import org.dromara.common.satoken.utils.LoginHelper; import org.springframework.context.expression.BeanFactoryResolver; -import org.springframework.expression.BeanResolver; -import org.springframework.expression.ExpressionParser; -import org.springframework.expression.ParserContext; +import org.springframework.expression.*; import org.springframework.expression.common.TemplateParserContext; import org.springframework.expression.spel.standard.SpelExpressionParser; import org.springframework.expression.spel.support.StandardEvaluationContext; @@ -56,9 +54,9 @@ public class PlusDataPermissionHandler { /** * 处理数据权限 * - * @param dataPermission 数据权限配置 - * @param queryWrapper 原始的查询条件表达式 - * @param isSelect 是否为查询语句 + * @param dataPermission 数据权限配置 + * @param queryWrapper 原始的查询条件表达式 + * @param isSelect 是否为查询语句 * @return 数据过滤条件的 SQL 片段 */ public void handlerDataPermission(DataPermission dataPermission, QueryWrapper queryWrapper, boolean isSelect) { @@ -81,8 +79,7 @@ public class PlusDataPermissionHandler { return; } // 构造数据过滤条件的 SQL 片段 - String dataFilterSql = buildDataFilter(dataPermission.getValue(), isSelect); -// String dataFilterSql = buildDataFilter(dataPermission, isSelect); + String dataFilterSql = buildDataFilter(dataPermission, isSelect); if (StringUtils.isBlank(dataFilterSql)) { return; } @@ -95,29 +92,28 @@ public class PlusDataPermissionHandler { /** * 获取数据过滤条件的 SQL 片段 * - * @param dataPermission 数据权限配置 - * @param isSelect 是否为查询语句 + * @param dataPermission 数据权限配置 + * @param isSelect 是否为查询语句 * @return 数据过滤条件的 SQL 片段 */ public String getSQL(DataPermission dataPermission, boolean isSelect) { - return buildDataFilter(dataPermission.getValue(), isSelect); + return buildDataFilter(dataPermission, isSelect); } /** * 构建数据过滤条件的 SQL 语句 * - * @param dataColumns 数据权限注解中的列信息 - * @param isSelect 标志当前操作是否为查询操作,查询操作和更新或删除操作在处理过滤条件时会有不同的处理方式 + * @param dataPermission 数据权限 + * @param isSelect 标志当前操作是否为查询操作,查询操作和更新或删除操作在处理过滤条件时会有不同的处理方式 * @return 构建的数据过滤条件的 SQL 语句 * @throws ServiceException 如果角色的数据范围异常或者 key 与 value 的长度不匹配,则抛出 ServiceException 异常 */ - private String buildDataFilter(DataColumn[] dataColumns, boolean isSelect) { -// private String buildDataFilter(DataPermission dataPermission, boolean isSelect) { - // 更新或删除需满足所有条件 + private String buildDataFilter(DataPermission dataPermission, boolean isSelect) { + // 更新或删除需满足所有条件 String joinStr = isSelect ? " OR " : " AND "; -// if (StringUtils.isNotBlank(dataPermission.joinStr())) { -// joinStr = " " + dataPermission.joinStr() + " "; -// } + if (StringUtils.isNotBlank(dataPermission.getJoinStr())) { + joinStr = " " + dataPermission.getJoinStr() + " "; + } LoginUser user = DataPermissionHelper.getVariable("user"); Object defaultValue = "-1"; NullSafeStandardEvaluationContext context = new NullSafeStandardEvaluationContext(defaultValue); @@ -128,22 +124,22 @@ public class PlusDataPermissionHandler { // 优先设置变量 List keys = new ArrayList<>(); Map ignoreMap = new HashMap<>(); - for (DataColumn dataColumn : dataPermission.value()) { - if (dataColumn.key().length != dataColumn.value().length) { + for (DataColumn dataColumn : dataPermission.getValue()) { + if (dataColumn.getKey().length != dataColumn.getValue().length) { throw new ServiceException("角色数据范围异常 => key与value长度不匹配"); } // 包含权限标识符 这直接跳过 - if (StringUtils.isNotBlank(dataColumn.permission()) && - CollUtil.contains(user.getMenuPermission(), dataColumn.permission()) + if (StringUtils.isNotBlank(dataColumn.getPermission()) && + CollUtil.contains(user.getMenuPermission(), dataColumn.getPermission()) ) { ignoreMap.put(dataColumn, Boolean.TRUE); continue; } // 设置注解变量 key 为表达式变量 value 为变量值 - for (int i = 0; i < dataColumn.key().length; i++) { - context.setVariable(dataColumn.key()[i], dataColumn.value()[i]); + for (int i = 0; i < dataColumn.getKey().length; i++) { + context.setVariable(dataColumn.getKey()[i], dataColumn.getValue()[i]); } - keys.addAll(Arrays.stream(dataColumn.key()).map(key -> "#" + key).toList()); + keys.addAll(Arrays.stream(dataColumn.getKey()).map(key -> "#" + key).toList()); } for (RoleDTO role : user.getRoles()) { @@ -158,34 +154,22 @@ public class PlusDataPermissionHandler { return StringUtils.EMPTY; } boolean isSuccess = false; -// for (DataColumn dataColumn : dataPermission.value()) { -// if (dataColumn.key().length != dataColumn.value().length) { -// throw new ServiceException("角色数据范围异常 => key与value长度不匹配"); -// } - for (DataColumn dataColumn : dataColumns) { - if (dataColumn.getKey().length != dataColumn.getValue().length) { - throw new ServiceException("角色数据范围异常 => getKey与getValue长度不匹配"); + for (DataColumn dataColumn : dataPermission.getValue()) { + // 包含权限标识符 这直接跳过 + if (ignoreMap.containsKey(dataColumn)) { + // 修复多角色与权限标识符共用问题 https://gitee.com/dromara/RuoYi-Vue-Plus/issues/IB4CS4 + conditions.add(joinStr + " 1 = 1 "); + isSuccess = true; + continue; } - // 不包含 getKey 变量 则不处理 - if (!StringUtils.containsAny(type.getSqlTemplate(), - Arrays.stream(dataColumn.getKey()).map(getKey -> "#" + getKey).toArray(String[]::new) - )) { + // 不包含 key 变量 则不处理 + if (!StringUtils.containsAny(type.getSqlTemplate(), keys.toArray(String[]::new))) { + continue; + } + // 当前注解不满足模板 不处理 + if (!StringUtils.containsAny(type.getSqlTemplate(), dataColumn.getKey())) { continue; } - // 包含权限标识符 这直接跳过 - // if (StringUtils.isNotBlank(dataColumn.permission()) && - // CollUtil.contains(user.getMenuPermission(), dataColumn.permission()) - // ) { - // // 修复多角色与权限标识符共用问题 https://gitee.com/dromara/RuoYi-Vue-Plus/issues/IB4CS4 - // conditions.add(joinStr + " 1 = 1 "); - // isSuccess = true; - // continue; - // } - // // 设置注解变量 getKey 为表达式变量 getValue 为变量值 - // for (int i = 0; i < dataColumn.getKey().length; i++) { - // context.setVariable(dataColumn.getKey()[i], dataColumn.getValue()[i]); - // } - // 忽略数据权限 防止spel表达式内有其他sql查询导致死循环调用 String sql = DataPermissionHelper.ignore(() -> parser.parseExpression(type.getSqlTemplate(), parserContext).getValue(context, String.class) diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/PlusPostInitTableInfoHandler.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/PlusPostInitTableInfoHandler.java deleted file mode 100644 index 60ca20b4b..000000000 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/PlusPostInitTableInfoHandler.java +++ /dev/null @@ -1,27 +0,0 @@ -package org.dromara.common.mybatis.handler; - -import cn.hutool.core.convert.Convert; -import com.baomidou.mybatisplus.core.handlers.PostInitTableInfoHandler; -import com.baomidou.mybatisplus.core.metadata.TableInfo; -import org.apache.ibatis.session.Configuration; -import org.dromara.common.core.utils.SpringUtils; -import org.dromara.common.core.utils.reflect.ReflectUtils; - -/** - * 修改表信息初始化方式 - * 目前用于全局修改是否使用逻辑删除 - * - * @author Lion Li - */ -public class PlusPostInitTableInfoHandler implements PostInitTableInfoHandler { - - @Override - public void postTableInfo(TableInfo tableInfo, Configuration configuration) { - String flag = SpringUtils.getProperty("mybatis-plus.enableLogicDelete", "true"); - // 只有关闭时 统一设置false 为true时mp自动判断不处理 - if (!Convert.toBool(flag)) { - ReflectUtils.setFieldValue(tableInfo, "withLogicDelete", false); - } - } - -} diff --git a/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/handle/TenantKeyPrefixHandler.java b/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/handle/TenantKeyPrefixHandler.java index dcdef6e62..3b23b53e9 100644 --- a/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/handle/TenantKeyPrefixHandler.java +++ b/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/handle/TenantKeyPrefixHandler.java @@ -1,6 +1,5 @@ package org.dromara.common.tenant.handle; -import com.baomidou.mybatisplus.core.plugins.InterceptorIgnoreHelper; import lombok.extern.slf4j.Slf4j; import org.dromara.common.core.constant.GlobalConstants; import org.dromara.common.core.utils.StringUtils; @@ -27,13 +26,13 @@ public class TenantKeyPrefixHandler extends KeyPrefixHandler { if (StringUtils.isBlank(name)) { return null; } - try { + /*try { if (InterceptorIgnoreHelper.willIgnoreTenantLine("")) { return super.map(name); } } catch (NoClassDefFoundError ignore) { // 有些服务不需要mp导致类不存在 忽略即可 - } + }*/ if (StringUtils.contains(name, GlobalConstants.GLOBAL_REDIS_KEY)) { return super.map(name); } @@ -58,13 +57,13 @@ public class TenantKeyPrefixHandler extends KeyPrefixHandler { if (StringUtils.isBlank(unmap)) { return null; } - try { + /*try { if (InterceptorIgnoreHelper.willIgnoreTenantLine("")) { return unmap; } } catch (NoClassDefFoundError ignore) { // 有些服务不需要mp导致类不存在 忽略即可 - } + }*/ if (StringUtils.contains(name, GlobalConstants.GLOBAL_REDIS_KEY)) { return unmap; } diff --git a/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/helper/TenantHelper.java b/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/helper/TenantHelper.java index 4b6981a10..c6106e9a2 100644 --- a/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/helper/TenantHelper.java +++ b/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/helper/TenantHelper.java @@ -2,18 +2,14 @@ package org.dromara.common.tenant.helper; import cn.dev33.satoken.context.SaHolder; import cn.dev33.satoken.context.model.SaStorage; -import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.convert.Convert; -import cn.hutool.core.util.ObjectUtil; -import com.baomidou.mybatisplus.core.plugins.IgnoreStrategy; -import com.baomidou.mybatisplus.core.plugins.InterceptorIgnoreHelper; +import com.mybatisflex.core.tenant.TenantManager; import lombok.AccessLevel; import lombok.NoArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.dromara.common.core.constant.GlobalConstants; import org.dromara.common.core.utils.SpringUtils; import org.dromara.common.core.utils.StringUtils; -import org.dromara.common.core.utils.reflect.ReflectUtils; import org.dromara.common.redis.utils.RedisUtils; import org.dromara.common.satoken.utils.LoginHelper; @@ -42,7 +38,7 @@ public class TenantHelper { return Convert.toBool(SpringUtils.getProperty("tenant.enable"), false); } - private static IgnoreStrategy getIgnoreStrategy() { + /*private static IgnoreStrategy getIgnoreStrategy() { Object ignoreStrategyLocal = ReflectUtils.getStaticFieldValue(ReflectUtils.getField(InterceptorIgnoreHelper.class, "IGNORE_STRATEGY_LOCAL")); if (ignoreStrategyLocal instanceof ThreadLocal IGNORE_STRATEGY_LOCAL) { if (IGNORE_STRATEGY_LOCAL.get() instanceof IgnoreStrategy ignoreStrategy) { @@ -50,18 +46,19 @@ public class TenantHelper { } } return null; - } + }*/ /** * 开启忽略租户(开启后需手动调用 {@link #disableIgnore()} 关闭) */ public static void enableIgnore() { - IgnoreStrategy ignoreStrategy = getIgnoreStrategy(); + /*IgnoreStrategy ignoreStrategy = getIgnoreStrategy(); if (ObjectUtil.isNull(ignoreStrategy)) { InterceptorIgnoreHelper.handle(IgnoreStrategy.builder().tenantLine(true).build()); } else { ignoreStrategy.setTenantLine(true); - } + }*/ + TenantManager.ignoreTenantCondition(); Stack reentrantStack = REENTRANT_IGNORE.get(); reentrantStack.push(reentrantStack.size() + 1); } @@ -70,21 +67,24 @@ public class TenantHelper { * 关闭忽略租户 */ public static void disableIgnore() { - IgnoreStrategy ignoreStrategy = getIgnoreStrategy(); - if (ObjectUtil.isNotNull(ignoreStrategy)) { - boolean noOtherIgnoreStrategy = !Boolean.TRUE.equals(ignoreStrategy.getDynamicTableName()) - && !Boolean.TRUE.equals(ignoreStrategy.getBlockAttack()) - && !Boolean.TRUE.equals(ignoreStrategy.getIllegalSql()) - && !Boolean.TRUE.equals(ignoreStrategy.getDataPermission()) - && CollectionUtil.isEmpty(ignoreStrategy.getOthers()); + // IgnoreStrategy ignoreStrategy = getIgnoreStrategy(); + // if (ObjectUtil.isNotNull(ignoreStrategy)) { + // boolean noOtherIgnoreStrategy = !Boolean.TRUE.equals(ignoreStrategy.getDynamicTableName()) + // && !Boolean.TRUE.equals(ignoreStrategy.getBlockAttack()) + // && !Boolean.TRUE.equals(ignoreStrategy.getIllegalSql()) + // && !Boolean.TRUE.equals(ignoreStrategy.getDataPermission()) + // && CollectionUtil.isEmpty(ignoreStrategy.getOthers()); Stack reentrantStack = REENTRANT_IGNORE.get(); boolean empty = reentrantStack.isEmpty() || reentrantStack.pop() == 1; - if (noOtherIgnoreStrategy && empty) { - InterceptorIgnoreHelper.clearIgnoreStrategy(); - } else if (empty) { - ignoreStrategy.setTenantLine(false); + // if (noOtherIgnoreStrategy && empty) { + if (empty) { + // InterceptorIgnoreHelper.clearIgnoreStrategy(); + TenantManager.restoreTenantCondition(); } - } + // else if (empty) { + // ignoreStrategy.setTenantLine(false); + // } + // } } /** diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysProfileController.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysProfileController.java index 5f187cb91..828a218bf 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysProfileController.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysProfileController.java @@ -98,8 +98,7 @@ public class SysProfileController extends BaseController { if (BCrypt.checkpw(bo.getNewPassword(), password)) { return R.fail("新密码不能与旧密码相同"); } - int rows = DataPermissionHelper.ignore(() -> userService.resetUserPwd(user.getUserId(), BCrypt.hashpw(bo.getNewPassword()))); - if (rows > 0) { + if (DataPermissionHelper.ignore(() -> userService.resetUserPwd(user.getUserId(), BCrypt.hashpw(bo.getNewPassword())))) { return R.ok(); } return R.fail("修改密码异常,请联系管理员"); diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysDeptMapper.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysDeptMapper.java index b69624cf0..a14488302 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysDeptMapper.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysDeptMapper.java @@ -1,12 +1,8 @@ package org.dromara.system.mapper; -import com.baomidou.mybatisplus.core.conditions.Wrapper; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.baomidou.mybatisplus.core.toolkit.Constants; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import org.apache.ibatis.annotations.Param; +import com.mybatisflex.core.paginate.Page; +import com.mybatisflex.core.query.QueryWrapper; import org.dromara.common.mybatis.annotation.DataColumn; -import org.dromara.common.mybatis.annotation.DataPermission; import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; import org.dromara.common.mybatis.helper.DataBaseHelper; import org.dromara.system.domain.SysDept; @@ -14,12 +10,15 @@ import org.dromara.system.domain.vo.SysDeptVo; import java.util.List; +import static org.dromara.system.domain.table.SysDeptTableDef.SYS_DEPT; +import static org.dromara.system.domain.table.SysRoleDeptTableDef.SYS_ROLE_DEPT; + /** * 部门管理 数据层 * * @author Lion Li */ -public interface SysDeptMapper extends BaseMapperPlus { +public interface SysDeptMapper extends BaseMapperPlus { /** * 查询部门管理数据 @@ -27,10 +26,19 @@ public interface SysDeptMapper extends BaseMapperPlus { * @param queryWrapper 查询条件 * @return 部门信息集合 */ - @DataPermission({ - @DataColumn(key = "deptName", value = "dept_id") - }) - List selectDeptList(@Param(Constants.WRAPPER) Wrapper queryWrapper); + default List selectDeptList(QueryWrapper queryWrapper) { + // select + // + // ${ew.getSqlSelect} + // + // + // * + // + // from sys_dept ${ew.getCustomSqlSegment} + + queryWrapper.from(SysDept.class); + return this.selectListByQueryAs(queryWrapper, SysDeptVo.class, DataColumn.of("deptName", "dept_id")); + } /** * 分页查询部门管理数据 @@ -38,10 +46,18 @@ public interface SysDeptMapper extends BaseMapperPlus { * @param queryWrapper 查询条件 * @return 部门信息集合 */ - @DataPermission({ - @DataColumn(key = "deptName", value = "dept_id"), - }) - Page selectPageDeptList(@Param("page") Page page, @Param(Constants.WRAPPER) Wrapper queryWrapper); + default Page selectPageDeptList(Page page, QueryWrapper queryWrapper) { + // select + // + // ${ew.getSqlSelect} + // + // + // * + // + // from sys_dept ${ew.getCustomSqlSegment} + queryWrapper.from(SysDept.class); + return this.paginateAs(page, queryWrapper, SysDeptVo.class, DataColumn.of("deptName", "dept_id")); + } /** * 统计指定部门ID的部门数量 @@ -49,10 +65,13 @@ public interface SysDeptMapper extends BaseMapperPlus { * @param deptId 部门ID * @return 该部门ID的部门数量 */ - @DataPermission({ - @DataColumn(key = "deptName", value = "dept_id") - }) - long countDeptById(Long deptId); + default long countDeptById(Long deptId) { + return this.selectCountByQuery( + QueryWrapper.create() + .from(SysDept.class) + .eq(SysDept::getDeptId, deptId), + DataColumn.of("deptName", "dept_id")); + } /** * 根据父部门ID查询其所有子部门的列表 @@ -61,9 +80,9 @@ public interface SysDeptMapper extends BaseMapperPlus { * @return 包含子部门的列表 */ default List selectListByParentId(Long parentId) { - return this.selectList(new LambdaQueryWrapper() + return this.selectListByQuery(QueryWrapper.create().from(SysDept.class) .select(SysDept::getDeptId) - .apply(DataBaseHelper.findInSet(parentId, "ancestors"))); + .where(DataBaseHelper.findInSet(parentId, "ancestors"))); } /** @@ -73,6 +92,22 @@ public interface SysDeptMapper extends BaseMapperPlus { * @param deptCheckStrictly 部门树选择项是否关联显示 * @return 选中部门列表 */ - List selectDeptListByRoleId(@Param("roleId") Long roleId, @Param("deptCheckStrictly") boolean deptCheckStrictly); + default List selectDeptListByRoleId(Long roleId, boolean deptCheckStrictly) { + // select d.dept_id + // from sys_dept d + // left join sys_role_dept rd on d.dept_id = rd.dept_id + // where rd.role_id = #{roleId} + // + // and d.dept_id not in (select d.parent_id from sys_dept d inner join sys_role_dept rd on d.dept_id = rd.dept_id and rd.role_id = #{roleId}) + // + // order by d.parent_id, d.order_num + return this.selectListByQueryAs(QueryWrapper.create() + .select(SysDept::getDeptId) + .from(SYS_DEPT.as("d")) + .leftJoin(SYS_ROLE_DEPT.as("rd")).on(SYS_DEPT.DEPT_ID.eq(SYS_ROLE_DEPT.DEPT_ID)) + .where(SYS_ROLE_DEPT.ROLE_ID.eq(roleId)) + // .and() + , Long.class); + } } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysPostMapper.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysPostMapper.java index fb835193f..00b106228 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysPostMapper.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysPostMapper.java @@ -1,6 +1,10 @@ package org.dromara.system.mapper; +import com.mybatisflex.core.paginate.Page; import com.mybatisflex.core.query.QueryWrapper; +import org.apache.ibatis.annotations.Param; +import org.dromara.common.mybatis.annotation.DataColumn; +import org.dromara.common.mybatis.annotation.DataPermission; import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; import org.dromara.system.domain.SysPost; import org.dromara.system.domain.vo.SysPostVo; @@ -17,6 +21,27 @@ import static org.dromara.system.domain.table.SysUserTableDef.SYS_USER; * @author Lion Li */ public interface SysPostMapper extends BaseMapperPlus { + + /** + * 分页查询岗位列表 + * + * @param page 分页对象 + * @param queryWrapper 查询条件 + * @return 包含岗位信息的分页结果 + */ + default Page selectPagePostList(Page page, QueryWrapper queryWrapper) { + // select + // + // ${ew.getSqlSelect} + // + // + // * + // + // from sys_post ${ew.getCustomSqlSegment} + queryWrapper.from(SysPost.class); + return this.paginateAs(page, queryWrapper, SysPostVo.class, DataColumn.of("deptName", "dept_id"), DataColumn.of("userName", "create_by")); + } + /** * 查询用户所属岗位组 * diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysRoleMapper.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysRoleMapper.java index cc2ad2e60..49d4c1b82 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysRoleMapper.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysRoleMapper.java @@ -6,14 +6,11 @@ import com.mybatisflex.core.query.QueryWrapper; import org.apache.ibatis.annotations.Param; import org.dromara.common.mybatis.annotation.DataColumn; import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; -import org.dromara.common.mybatis.core.page.PageQuery; import org.dromara.system.domain.SysRole; import org.dromara.system.domain.vo.SysRoleVo; import java.util.List; -import static com.mybatisflex.core.query.QueryMethods.exists; -import static com.mybatisflex.core.query.QueryMethods.select; import static org.dromara.system.domain.table.SysDeptTableDef.SYS_DEPT; import static org.dromara.system.domain.table.SysRoleTableDef.SYS_ROLE; import static org.dromara.system.domain.table.SysUserRoleTableDef.SYS_USER_ROLE; @@ -26,9 +23,9 @@ import static org.dromara.system.domain.table.SysUserTableDef.SYS_USER; */ public interface SysRoleMapper extends BaseMapperPlus { - default Page selectPageRoleList(@Param("pageQuery") PageQuery pageQuery, QueryWrapper queryWrapper) { + default Page selectPageRoleList(Page page, QueryWrapper queryWrapper) { selectRoleVo(queryWrapper); - return paginateAs(pageQuery, queryWrapper, SysRoleVo.class, DataColumn.of("deptName", "d.dept_id"), DataColumn.of("userName", "r.create_by")); + return paginateAs(page, queryWrapper, SysRoleVo.class, DataColumn.of("deptName", "d.dept_id"), DataColumn.of("userName", "r.create_by")); } /** @@ -81,8 +78,8 @@ public interface SysRoleMapper extends BaseMapperPlus { .select(SYS_ROLE.ROLE_ID, SYS_ROLE.ROLE_NAME, SYS_ROLE.ROLE_KEY, SYS_ROLE.ROLE_SORT, SYS_ROLE.DATA_SCOPE, SYS_ROLE.STATUS) .from(SYS_ROLE) - .where(exists( - select(SYS_USER_ROLE.ROLE_ID) + .where(QueryMethods.exists( + QueryMethods.select(SYS_USER_ROLE.ROLE_ID) .from(SYS_USER_ROLE) .where(SYS_USER_ROLE.ROLE_ID.eq(SYS_ROLE.ROLE_ID)) .and(SYS_USER_ROLE.USER_ID.eq(userId)) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java index b1b0129e9..b0cf75ae3 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java @@ -200,7 +200,7 @@ public class SysDeptServiceImpl implements ISysDeptService, DeptService { */ @Override public List selectDeptsByList() { - List list = baseMapper.selectDeptList(new LambdaQueryWrapper() + List list = baseMapper.selectDeptList(QueryWrapper.create().from(SysDept.class) .select(SysDept::getDeptId, SysDept::getDeptName, SysDept::getParentId) .eq(SysDept::getStatus, SystemConstants.NORMAL)); return BeanUtil.copyToList(list, DeptDTO.class); diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysPostServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysPostServiceImpl.java index 43aaea75f..8b28d2a03 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysPostServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysPostServiceImpl.java @@ -156,7 +156,7 @@ public class SysPostServiceImpl implements ISysPostService { return baseMapper.selectCountByQuery( QueryWrapper.create().from(SYS_POST) .where(SYS_POST.POST_NAME.eq(post.getPostName())) - .and(SysPost::getDeptId, post.getDeptId()) + .and(SYS_POST.DEPT_ID.eq(post.getDeptId())) .and(SYS_POST.POST_ID.ne(post.getPostId(), ObjectUtil.isNotNull(post.getPostId()))) ) == 0; } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysRoleServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysRoleServiceImpl.java index 221ba62f2..c877417f3 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysRoleServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysRoleServiceImpl.java @@ -62,7 +62,7 @@ public class SysRoleServiceImpl implements ISysRoleService, RoleService { @Override public TableDataInfo selectPageRoleList(SysRoleBo role, PageQuery pageQuery) { - Page page = baseMapper.selectPageRoleList(pageQuery, this.buildQueryWrapper(role)); + Page page = baseMapper.selectPageRoleList(pageQuery.build(), this.buildQueryWrapper(role)); return TableDataInfo.build(page); } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTaskAssigneeServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTaskAssigneeServiceImpl.java index 2fbf2408b..6ad209b98 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTaskAssigneeServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTaskAssigneeServiceImpl.java @@ -1,9 +1,7 @@ package org.dromara.system.service.impl; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.core.toolkit.Wrappers; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.mybatisflex.core.paginate.Page; +import com.mybatisflex.core.query.QueryWrapper; import lombok.RequiredArgsConstructor; import org.dromara.common.core.constant.SystemConstants; import org.dromara.common.core.domain.dto.TaskAssigneeDTO; @@ -14,7 +12,6 @@ import org.dromara.common.core.utils.StringUtils; import org.dromara.common.mybatis.core.page.PageQuery; import org.dromara.system.domain.SysDept; import org.dromara.system.domain.SysPost; -import org.dromara.system.domain.SysRole; import org.dromara.system.domain.SysUser; import org.dromara.system.domain.vo.SysDeptVo; import org.dromara.system.domain.vo.SysPostVo; @@ -51,19 +48,19 @@ public class SysTaskAssigneeServiceImpl implements TaskAssigneeService { @Override public TaskAssigneeDTO selectRolesByTaskAssigneeList(TaskAssigneeBody taskQuery) { PageQuery pageQuery = new PageQuery(taskQuery.getPageSize(), taskQuery.getPageNum()); - QueryWrapper wrapper = Wrappers.query(); + QueryWrapper wrapper = QueryWrapper.create(); wrapper.eq("r.del_flag", SystemConstants.NORMAL) .eq("r.status", SystemConstants.NORMAL) - .like(StringUtils.isNotBlank(taskQuery.getHandlerCode()), "r.role_name", taskQuery.getHandlerCode()) - .like(StringUtils.isNotBlank(taskQuery.getHandlerName()), "r.role_key", taskQuery.getHandlerName()) - .between(StringUtils.isNotBlank(taskQuery.getBeginTime()) && StringUtils.isNotBlank(taskQuery.getEndTime()), - "r.create_time", taskQuery.getBeginTime(), taskQuery.getEndTime()) - .orderByAsc("r.role_sort").orderByAsc("r.create_time"); + .like("r.role_name", taskQuery.getHandlerCode(), StringUtils.isNotBlank(taskQuery.getHandlerCode())) + .like("r.role_key", taskQuery.getHandlerName(), StringUtils.isNotBlank(taskQuery.getHandlerName())) + .between("r.create_time", taskQuery.getBeginTime(), taskQuery.getEndTime(), StringUtils.isNotBlank(taskQuery.getBeginTime()) && StringUtils.isNotBlank(taskQuery.getEndTime())) + .orderBy("r.role_sort", false) + .orderBy("r.create_time", false); Page page = roleMapper.selectPageRoleList(pageQuery.build(), wrapper); // 使用封装的字段映射方法进行转换 List handlers = TaskAssigneeDTO.convertToHandlerList(page.getRecords(), SysRoleVo::getRoleId, SysRoleVo::getRoleKey, SysRoleVo::getRoleName, null, SysRoleVo::getCreateTime); - return new TaskAssigneeDTO(page.getTotal(), handlers); + return new TaskAssigneeDTO(page.getTotalRow(), handlers); } /** @@ -75,12 +72,11 @@ public class SysTaskAssigneeServiceImpl implements TaskAssigneeService { @Override public TaskAssigneeDTO selectPostsByTaskAssigneeList(TaskAssigneeBody taskQuery) { PageQuery pageQuery = new PageQuery(taskQuery.getPageSize(), taskQuery.getPageNum()); - LambdaQueryWrapper wrapper = Wrappers.lambdaQuery() + QueryWrapper wrapper = QueryWrapper.create().from(SysPost.class) .eq(SysPost::getStatus, SystemConstants.NORMAL) - .like(StringUtils.isNotBlank(taskQuery.getHandlerCode()), SysPost::getPostCategory, taskQuery.getHandlerCode()) - .like(StringUtils.isNotBlank(taskQuery.getHandlerName()), SysPost::getPostName, taskQuery.getHandlerName()) - .between(StringUtils.isNotBlank(taskQuery.getBeginTime()) && StringUtils.isNotBlank(taskQuery.getEndTime()), - SysPost::getCreateTime, taskQuery.getBeginTime(), taskQuery.getEndTime()); + .like(SysPost::getPostCategory, taskQuery.getHandlerCode(), StringUtils.isNotBlank(taskQuery.getHandlerCode())) + .like(SysPost::getPostName, taskQuery.getHandlerName(), StringUtils.isNotBlank(taskQuery.getHandlerName())) + .between(SysPost::getCreateTime, taskQuery.getBeginTime(), taskQuery.getEndTime(), StringUtils.isNotBlank(taskQuery.getBeginTime()) && StringUtils.isNotBlank(taskQuery.getEndTime())); if (StringUtils.isNotBlank(taskQuery.getGroupId())) { Long belongDeptId = Long.valueOf(taskQuery.getGroupId()); wrapper.and(x -> { @@ -94,7 +90,7 @@ public class SysTaskAssigneeServiceImpl implements TaskAssigneeService { // 使用封装的字段映射方法进行转换 List handlers = TaskAssigneeDTO.convertToHandlerList(page.getRecords(), SysPostVo::getPostId, SysPostVo::getPostCategory, SysPostVo::getPostName, SysPostVo::getDeptId, SysPostVo::getCreateTime); - return new TaskAssigneeDTO(page.getTotal(), handlers); + return new TaskAssigneeDTO(page.getTotalRow(), handlers); } /** @@ -106,17 +102,15 @@ public class SysTaskAssigneeServiceImpl implements TaskAssigneeService { @Override public TaskAssigneeDTO selectDeptsByTaskAssigneeList(TaskAssigneeBody taskQuery) { PageQuery pageQuery = new PageQuery(taskQuery.getPageSize(), taskQuery.getPageNum()); - LambdaQueryWrapper wrapper = Wrappers.lambdaQuery() - .eq(SysDept::getDelFlag, SystemConstants.NORMAL) + QueryWrapper wrapper = QueryWrapper.create().from(SysDept.class) .eq(SysDept::getStatus, SystemConstants.NORMAL) - .like(StringUtils.isNotBlank(taskQuery.getHandlerCode()), SysDept::getDeptCategory, taskQuery.getHandlerCode()) - .like(StringUtils.isNotBlank(taskQuery.getHandlerName()), SysDept::getDeptName, taskQuery.getHandlerName()) - .between(StringUtils.isNotBlank(taskQuery.getBeginTime()) && StringUtils.isNotBlank(taskQuery.getEndTime()), - SysDept::getCreateTime, taskQuery.getBeginTime(), taskQuery.getEndTime()) - .orderByAsc(SysDept::getAncestors) - .orderByAsc(SysDept::getParentId) - .orderByAsc(SysDept::getOrderNum) - .orderByAsc(SysDept::getDeptId); + .like(SysDept::getDeptCategory, taskQuery.getHandlerCode(), StringUtils.isNotBlank(taskQuery.getHandlerCode())) + .like(SysDept::getDeptName, taskQuery.getHandlerName(), StringUtils.isNotBlank(taskQuery.getHandlerName())) + .between(SysDept::getCreateTime, taskQuery.getBeginTime(), taskQuery.getEndTime(), StringUtils.isNotBlank(taskQuery.getBeginTime()) && StringUtils.isNotBlank(taskQuery.getEndTime())) + .orderBy(SysDept::getAncestors, true) + .orderBy(SysDept::getParentId, true) + .orderBy(SysDept::getOrderNum, true) + .orderBy(SysDept::getDeptId, true); if (StringUtils.isNotBlank(taskQuery.getGroupId())) { //部门树搜索 wrapper.and(x -> { @@ -131,7 +125,7 @@ public class SysTaskAssigneeServiceImpl implements TaskAssigneeService { // 使用封装的字段映射方法进行转换 List handlers = TaskAssigneeDTO.convertToHandlerList(page.getRecords(), SysDeptVo::getDeptId, SysDeptVo::getDeptCategory, SysDeptVo::getDeptName, SysDeptVo::getParentId, SysDeptVo::getCreateTime); - return new TaskAssigneeDTO(page.getTotal(), handlers); + return new TaskAssigneeDTO(page.getTotalRow(), handlers); } @@ -144,14 +138,13 @@ public class SysTaskAssigneeServiceImpl implements TaskAssigneeService { @Override public TaskAssigneeDTO selectUsersByTaskAssigneeList(TaskAssigneeBody taskQuery) { PageQuery pageQuery = new PageQuery(taskQuery.getPageSize(), taskQuery.getPageNum()); - QueryWrapper wrapper = Wrappers.query(); + QueryWrapper wrapper = QueryWrapper.create().from(SysUser.class); wrapper.eq("u.del_flag", SystemConstants.NORMAL) .eq("u.status", SystemConstants.NORMAL) - .like(StringUtils.isNotBlank(taskQuery.getHandlerCode()), "u.user_name", taskQuery.getHandlerCode()) - .like(StringUtils.isNotBlank(taskQuery.getHandlerName()), "u.nick_name", taskQuery.getHandlerName()) - .between(taskQuery.getBeginTime() != null && taskQuery.getEndTime() != null, - "u.create_time", taskQuery.getBeginTime(), taskQuery.getEndTime()) - .orderByAsc("u.user_id"); + .like("u.user_name", taskQuery.getHandlerCode(), StringUtils.isNotBlank(taskQuery.getHandlerCode())) + .like("u.nick_name", taskQuery.getHandlerName(), StringUtils.isNotBlank(taskQuery.getHandlerName())) + .between("u.create_time", taskQuery.getBeginTime(), taskQuery.getEndTime(), taskQuery.getBeginTime() != null && taskQuery.getEndTime() != null) + .orderBy("u.user_id"); if (StringUtils.isNotBlank(taskQuery.getGroupId())) { //部门树搜索 wrapper.and(x -> { @@ -162,11 +155,11 @@ public class SysTaskAssigneeServiceImpl implements TaskAssigneeService { x.in("u.dept_id", deptIds); }); } - Page page = userMapper.selectPageUserList(pageQuery.build(), wrapper); + Page page = userMapper.selectPageUserList(pageQuery, wrapper); // 使用封装的字段映射方法进行转换 List handlers = TaskAssigneeDTO.convertToHandlerList(page.getRecords(), SysUserVo::getUserId, SysUserVo::getUserName, SysUserVo::getNickName, SysUserVo::getDeptId, SysUserVo::getCreateTime); - return new TaskAssigneeDTO(page.getTotal(), handlers); + return new TaskAssigneeDTO(page.getTotalRow(), handlers); } } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java index e80f7ed49..ee3767421 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java @@ -716,8 +716,8 @@ public class SysUserServiceImpl implements ISysUserService, UserService { } // 通过岗位ID获取用户岗位信息 - List userPosts = userPostMapper.selectList( - new LambdaQueryWrapper().in(SysUserPost::getPostId, postIds)); + List userPosts = userPostMapper.selectListByQuery( + QueryWrapper.create().from(SysUserPost.class).in(SysUserPost::getPostId, postIds)); // 获取用户ID列表 Set userIds = StreamUtils.toSet(userPosts, SysUserPost::getUserId); diff --git a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysPostMapper.xml b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysPostMapper.xml index 3c79918d8..322403f68 100644 --- a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysPostMapper.xml +++ b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysPostMapper.xml @@ -7,6 +7,17 @@ + + + SELECT * FROM test_demo ${ew.customSqlSegment} + diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/config/MyBatisDataSourceMonitor.java b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/config/MyBatisDataSourceMonitor.java index 941e2ae34..490d43ae7 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/config/MyBatisDataSourceMonitor.java +++ b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/config/MyBatisDataSourceMonitor.java @@ -47,8 +47,8 @@ public class MyBatisDataSourceMonitor implements DataSourceMonitor { if (datasource instanceof JdbcTemplate jdbc) { DataSource ds = jdbc.getDataSource(); if (ds instanceof FlexDataSource) { -// String key = ((FlexDataSource) ds).getDefaultDataSourceKey(); - String key = DataSourceKey.get(); + String key = ((FlexDataSource) ds).getDefaultDataSourceKey(); + // String key = DataSourceKey.get(); feature = features.get(key); if (null == feature) { Connection con = null; @@ -78,9 +78,9 @@ public class MyBatisDataSourceMonitor implements DataSourceMonitor { */ @Override public String key(DataRuntime runtime, Object datasource) { - if(datasource instanceof JdbcTemplate jdbc){ + if (datasource instanceof JdbcTemplate jdbc) { DataSource ds = jdbc.getDataSource(); - if(ds instanceof FlexDataSource){ + if (ds instanceof FlexDataSource) { return DataSourceKey.get(); } } diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/mapper/GenTableMapper.java b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/mapper/GenTableMapper.java index 01227756d..6f202d031 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/mapper/GenTableMapper.java +++ b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/mapper/GenTableMapper.java @@ -22,6 +22,13 @@ public interface GenTableMapper extends BaseMapperPlus { */ List selectGenTableAll(); + /** + * 查询表ID业务信息 + * + * @param id 业务ID + * @return 业务信息 + */ + GenTable selectGenTableById(Long id); /** * 查询表名称业务信息 diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysConfigServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysConfigServiceImpl.java index 56e9eab80..d898c8409 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysConfigServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysConfigServiceImpl.java @@ -112,7 +112,7 @@ public class SysConfigServiceImpl implements ISysConfigService, ConfigService { .and(SYS_CONFIG.CONFIG_TYPE.eq(bo.getConfigType())) .where(SYS_CONFIG.CONFIG_KEY.like(bo.getConfigKey())) .and(SYS_CONFIG.CREATE_TIME.between(params.get("beginTime"), params.get("endTime"), params.get("beginTime") != null && params.get("endTime") != null)) - .orderBy(SYS_CONFIG.CONFIG_ID, true); + .orderBy(SYS_CONFIG.CONFIG_ID.asc()); } /** diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDataScopeServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDataScopeServiceImpl.java index 4fc25640b..62dc1cfdb 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDataScopeServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDataScopeServiceImpl.java @@ -2,8 +2,8 @@ package org.dromara.system.service.impl; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.convert.Convert; -import com.mybatisflex.core.query.QueryWrapper; import cn.hutool.core.util.ObjectUtil; +import com.mybatisflex.core.query.QueryWrapper; import lombok.RequiredArgsConstructor; import org.dromara.common.core.constant.CacheNames; import org.dromara.common.core.utils.StreamUtils; @@ -17,7 +17,6 @@ import org.springframework.stereotype.Service; import java.util.List; -import static org.dromara.system.domain.table.SysDeptTableDef.SYS_DEPT; import static org.dromara.system.domain.table.SysRoleDeptTableDef.SYS_ROLE_DEPT; /** diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDictDataServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDictDataServiceImpl.java index cfa4ca935..ae7a1a7a2 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDictDataServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDictDataServiceImpl.java @@ -59,7 +59,7 @@ public class SysDictDataServiceImpl implements ISysDictDataService { .where(SYS_DICT_DATA.DICT_SORT.eq(bo.getDictSort())) .and(SYS_DICT_DATA.DICT_LABEL.like(bo.getDictLabel())) .and(SYS_DICT_DATA.DICT_TYPE.eq(bo.getDictType())) - .orderBy(SYS_DICT_DATA.DICT_SORT, true); + .orderBy(SYS_DICT_DATA.DICT_SORT.asc()); } /** @@ -114,7 +114,7 @@ public class SysDictDataServiceImpl implements ISysDictDataService { @Override public List insertDictData(SysDictDataBo bo) { SysDictData data = MapstructUtils.convert(bo, SysDictData.class); - int row = baseMapper.insert(data,true); + int row = baseMapper.insert(data, true); if (row > 0) { return baseMapper.selectDictDataByType(data.getDictType()); } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDictTypeServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDictTypeServiceImpl.java index a08641304..6daf85b0b 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDictTypeServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDictTypeServiceImpl.java @@ -2,12 +2,10 @@ package org.dromara.system.service.impl; import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollUtil; -import cn.hutool.core.util.ObjectUtil; import com.mybatisflex.core.paginate.Page; import com.mybatisflex.core.query.QueryWrapper; import com.mybatisflex.core.update.UpdateChain; import lombok.RequiredArgsConstructor; -import org.dromara.common.core.constant.CacheConstants; import org.dromara.common.core.constant.CacheNames; import org.dromara.common.core.domain.dto.DictDataDTO; import org.dromara.common.core.domain.dto.DictTypeDTO; @@ -41,7 +39,6 @@ import java.util.stream.Collectors; import static org.dromara.system.domain.table.SysDictDataTableDef.SYS_DICT_DATA; import static org.dromara.system.domain.table.SysDictTypeTableDef.SYS_DICT_TYPE; -import static org.dromara.system.domain.table.SysDictTypeTableDef.SYS_DICT_TYPE; /** * 字典 业务层处理 @@ -80,7 +77,7 @@ public class SysDictTypeServiceImpl implements ISysDictTypeService, DictService .where(SYS_DICT_TYPE.DICT_NAME.like(bo.getDictName())) .and(SYS_DICT_TYPE.DICT_TYPE.like(bo.getDictType())) .and(SYS_DICT_TYPE.CREATE_TIME.between(params.get("beginTime"), params.get("endTime"), params.get("beginTime") != null && params.get("endTime") != null)) - .orderBy(SYS_DICT_TYPE.DICT_ID, true); + .orderBy(SYS_DICT_TYPE.DICT_ID.asc()); } /** diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwCategoryServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwCategoryServiceImpl.java index 11b53aab1..35bffdcb7 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwCategoryServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwCategoryServiceImpl.java @@ -186,10 +186,10 @@ public class FlwCategoryServiceImpl implements IFlwCategoryService { lqw.eq(FlowCategory::getCategoryId, bo.getCategoryId(), ObjectUtil.isNotNull(bo.getCategoryId())); lqw.eq(FlowCategory::getParentId, bo.getParentId(), ObjectUtil.isNotNull(bo.getParentId())); lqw.like(FlowCategory::getCategoryName, bo.getCategoryName(), StringUtils.isNotBlank(bo.getCategoryName())); - lqw.orderBy(FlowCategory::getAncestors, true); - lqw.orderBy(FlowCategory::getParentId, true); - lqw.orderBy(FlowCategory::getOrderNum, true); - lqw.orderBy(FlowCategory::getCategoryId, true); + lqw.orderBy(FlowCategory::getAncestors); + lqw.orderBy(FlowCategory::getParentId); + lqw.orderBy(FlowCategory::getOrderNum); + lqw.orderBy(FlowCategory::getCategoryId); return lqw; } diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwDefinitionServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwDefinitionServiceImpl.java index 664212eb0..1bfd54003 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwDefinitionServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwDefinitionServiceImpl.java @@ -4,10 +4,8 @@ import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.convert.Convert; import cn.hutool.core.io.IoUtil; -import com.mybatisflex.core.BaseMapper; import com.mybatisflex.core.paginate.Page; import com.mybatisflex.core.query.QueryWrapper; -import com.mybatisflex.core.row.Db; import jakarta.servlet.http.HttpServletResponse; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java index e2216da33..744a84c8f 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java @@ -352,7 +352,7 @@ public class FlwTaskServiceImpl implements IFlwTaskService { QueryWrapper queryWrapper = buildQueryWrapper(flowTaskBo); queryWrapper.eq("t.node_type", NodeType.BETWEEN.getKey()); queryWrapper.in("t.approver", LoginHelper.getUserIdStr()); - queryWrapper.orderBy("t.create_time").orderBy("t.update_time"); + queryWrapper.orderBy("t.create_time", false).orderBy("t.update_time", false); Page page = flwTaskMapper.getListFinishTask(pageQuery.build(), queryWrapper); return TableDataInfo.build(page); } -- Gitee From 34bac1add9ce0a065ccb174072d8e6ef0ea148ed Mon Sep 17 00:00:00 2001 From: AprilWind <2100166581@qq.com> Date: Mon, 10 Mar 2025 11:12:39 +0800 Subject: [PATCH 467/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=E6=9D=83?= =?UTF-8?q?=E9=99=90=E6=A0=87=E8=AF=86=E7=AC=A6=E5=A2=9E=E5=8A=A0=E9=80=9A?= =?UTF-8?q?=E9=85=8D=E7=AC=A6*?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dromara/common/core/constant/RegexConstants.java | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/RegexConstants.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/RegexConstants.java index 77eed8c09..f1e04f760 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/RegexConstants.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/RegexConstants.java @@ -17,9 +17,14 @@ public interface RegexConstants extends RegexPool { String DICTIONARY_TYPE = "^[a-z][a-z0-9_]*$"; /** - * 权限标识必须符合 tool:build:list 格式,或者空字符串 - */ - String PERMISSION_STRING = "^(|^[a-zA-Z0-9_]+:[a-zA-Z0-9_]+:[a-zA-Z0-9_]+)$"; + * 权限标识必须符合以下格式: + * 1. 标准格式:xxx:yyy:zzz + * - 第一部分(xxx):只能包含字母、数字和下划线(_),不能使用 `*` + * - 第二部分(yyy):可以包含字母、数字、下划线(_)和 `*` + * - 第三部分(zzz):可以包含字母、数字、下划线(_)和 `*` + * 2. 允许空字符串(""),表示没有权限标识 + */ + String PERMISSION_STRING = "^$|^[a-zA-Z0-9_]+:[a-zA-Z0-9_*]+:[a-zA-Z0-9_*]+$"; /** * 身份证号码(后6位) -- Gitee From a93b30ec9114a32bfb5811fa23772836be51dd8c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Tue, 11 Mar 2025 14:15:20 +0800 Subject: [PATCH 468/540] =?UTF-8?q?update=20warm-flow=201.6.7=20=E5=8D=87?= =?UTF-8?q?=E7=BA=A7=E6=AD=A3=E5=BC=8F=E7=89=88?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index f420f3cd4..9742a21f2 100644 --- a/pom.xml +++ b/pom.xml @@ -50,7 +50,7 @@ 8.7.2-20250101 - 1.6.7-M2 + 1.6.7 3.2.2 -- Gitee From 460545a75e5894ea2ba81aa9240ff3f9289265c9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Tue, 11 Mar 2025 17:56:02 +0800 Subject: [PATCH 469/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E5=AD=97?= =?UTF-8?q?=E5=85=B8=E6=96=B9=E6=B3=95=E5=91=BD=E5=90=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/org/dromara/common/core/service/DictService.java | 4 ++-- .../dromara/system/service/impl/SysDictTypeServiceImpl.java | 4 ++-- .../dromara/workflow/service/impl/FlwNodeExtServiceImpl.java | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/service/DictService.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/service/DictService.java index 7c5097764..d80395cc8 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/service/DictService.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/service/DictService.java @@ -74,7 +74,7 @@ public interface DictService { * @param dictType 字典类型 * @return 字典类型详细信息 */ - DictTypeDTO getDictTypeDto(String dictType); + DictTypeDTO getDictType(String dictType); /** * 根据字典类型查询字典数据列表 @@ -82,6 +82,6 @@ public interface DictService { * @param dictType 字典类型 * @return 字典数据列表 */ - List getDictDataDto(String dictType); + List getDictData(String dictType); } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDictTypeServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDictTypeServiceImpl.java index 9d80d50e4..1e5188c38 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDictTypeServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDictTypeServiceImpl.java @@ -275,7 +275,7 @@ public class SysDictTypeServiceImpl implements ISysDictTypeService, DictService * @return 字典类型详细信息 */ @Override - public DictTypeDTO getDictTypeDto(String dictType) { + public DictTypeDTO getDictType(String dictType) { SysDictTypeVo vo = SpringUtils.getAopProxy(this).selectDictTypeByType(dictType); return BeanUtil.toBean(vo, DictTypeDTO.class); } @@ -287,7 +287,7 @@ public class SysDictTypeServiceImpl implements ISysDictTypeService, DictService * @return 字典数据列表 */ @Override - public List getDictDataDto(String dictType) { + public List getDictData(String dictType) { List list = SpringUtils.getAopProxy(this).selectDictDataByType(dictType); return BeanUtil.copyToList(list, DictDataDTO.class); } diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwNodeExtServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwNodeExtServiceImpl.java index 0b4d4b790..4d8368a85 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwNodeExtServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwNodeExtServiceImpl.java @@ -147,7 +147,7 @@ public class FlwNodeExtServiceImpl implements NodeExtService { * @return 返回构建好的 ChildNode 对象 */ private NodeExt.ChildNode buildChildNodeFromDict(String dictType) { - DictTypeDTO dictTypeDTO = dictService.getDictTypeDto(dictType); + DictTypeDTO dictTypeDTO = dictService.getDictType(dictType); if (ObjectUtil.isNull(dictTypeDTO)) { return null; } @@ -159,7 +159,7 @@ public class FlwNodeExtServiceImpl implements NodeExtService { // 描述 childNode.setDesc(dictTypeDTO.getRemark()); // 字典,下拉框和复选框时用到 - childNode.setDict(dictService.getDictDataDto(dictType) + childNode.setDict(dictService.getDictData(dictType) .stream().map(x -> new NodeExt.DictItem(x.getDictLabel(), x.getDictValue(), Convert.toBool(x.getIsDefault(), false)) ).toList()); -- Gitee From 8bf741fd5b2682b0dc95821b7a7d58e0625c24e3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Wed, 12 Mar 2025 17:29:48 +0800 Subject: [PATCH 470/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20=E5=85=B3?= =?UTF-8?q?=E9=97=AD=E9=AA=8C=E8=AF=81=E7=A0=81=E5=90=8E=20=E9=99=90?= =?UTF-8?q?=E6=B5=81=E6=B3=A8=E8=A7=A3=E4=BB=8D=E7=84=B6=E7=94=9F=E6=95=88?= =?UTF-8?q?=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../web/controller/CaptchaController.java | 30 +++++++++++++++---- 1 file changed, 24 insertions(+), 6 deletions(-) diff --git a/ruoyi-admin/src/main/java/org/dromara/web/controller/CaptchaController.java b/ruoyi-admin/src/main/java/org/dromara/web/controller/CaptchaController.java index 1a476a94a..0848170af 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/controller/CaptchaController.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/controller/CaptchaController.java @@ -11,6 +11,7 @@ import lombok.extern.slf4j.Slf4j; import org.dromara.common.core.constant.Constants; import org.dromara.common.core.constant.GlobalConstants; import org.dromara.common.core.domain.R; +import org.dromara.common.core.exception.ServiceException; import org.dromara.common.core.utils.SpringUtils; import org.dromara.common.core.utils.StringUtils; import org.dromara.common.core.utils.reflect.ReflectUtils; @@ -79,12 +80,21 @@ public class CaptchaController { * * @param email 邮箱 */ - @RateLimiter(key = "#email", time = 60, count = 1) @GetMapping("/resource/email/code") public R emailCode(@NotBlank(message = "{user.email.not.blank}") String email) { if (!mailProperties.getEnabled()) { return R.fail("当前系统没有开启邮箱功能!"); } + SpringUtils.getAopProxy(this).emailCodeImpl(email); + return R.ok(); + } + + /** + * 邮箱验证码 + * 独立方法避免验证码关闭之后仍然走限流 + */ + @RateLimiter(key = "#email", time = 60, count = 1) + public void emailCodeImpl(String email) { String key = GlobalConstants.CAPTCHA_CODE_KEY + email; String code = RandomUtil.randomNumbers(4); RedisUtils.setCacheObject(key, code, Duration.ofMinutes(Constants.CAPTCHA_EXPIRATION)); @@ -92,23 +102,30 @@ public class CaptchaController { MailUtils.sendText(email, "登录验证码", "您本次验证码为:" + code + ",有效性为" + Constants.CAPTCHA_EXPIRATION + "分钟,请尽快填写。"); } catch (Exception e) { log.error("验证码短信发送异常 => {}", e.getMessage()); - return R.fail(e.getMessage()); + throw new ServiceException(e.getMessage()); } - return R.ok(); } /** * 生成验证码 */ - @RateLimiter(time = 60, count = 10, limitType = LimitType.IP) @GetMapping("/auth/code") public R getCode() { - CaptchaVo captchaVo = new CaptchaVo(); boolean captchaEnabled = captchaProperties.getEnable(); if (!captchaEnabled) { + CaptchaVo captchaVo = new CaptchaVo(); captchaVo.setCaptchaEnabled(false); return R.ok(captchaVo); } + return R.ok(SpringUtils.getAopProxy(this).getCodeImpl()); + } + + /** + * 生成验证码 + * 独立方法避免验证码关闭之后仍然走限流 + */ + @RateLimiter(time = 60, count = 10, limitType = LimitType.IP) + public CaptchaVo getCodeImpl() { // 保存验证码信息 String uuid = IdUtil.simpleUUID(); String verifyKey = GlobalConstants.CAPTCHA_CODE_KEY + uuid; @@ -128,9 +145,10 @@ public class CaptchaController { code = exp.getValue(String.class); } RedisUtils.setCacheObject(verifyKey, code, Duration.ofMinutes(Constants.CAPTCHA_EXPIRATION)); + CaptchaVo captchaVo = new CaptchaVo(); captchaVo.setUuid(uuid); captchaVo.setImg(captcha.getImageBase64()); - return R.ok(captchaVo); + return captchaVo; } } -- Gitee From bfc73ed21445bfe1a5536c07c058b14315ef0fab Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 13 Mar 2025 11:34:26 +0800 Subject: [PATCH 471/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E5=B0=86?= =?UTF-8?q?crt=E5=AE=A2=E6=88=B7=E7=AB=AF=E6=9B=BF=E6=8D=A2=E4=B8=BANetty?= =?UTF-8?q?=E5=AE=A2=E6=88=B7=E7=AB=AF=20=E8=8A=82=E7=BA=A617M=E6=89=93?= =?UTF-8?q?=E5=8C=85=E5=A4=A7=E5=B0=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 13 ++++----- ruoyi-common/ruoyi-common-oss/pom.xml | 11 ++------ .../dromara/common/oss/core/OssClient.java | 28 +++++++++++++------ 3 files changed, 28 insertions(+), 24 deletions(-) diff --git a/pom.xml b/pom.xml index 9742a21f2..45d4ece78 100644 --- a/pom.xml +++ b/pom.xml @@ -42,7 +42,6 @@ 2.28.22 - 0.31.3 3.3.3 @@ -245,18 +244,18 @@ s3 ${aws.sdk.version} - - - software.amazon.awssdk.crt - aws-crt - ${aws.crt.version} - software.amazon.awssdk s3-transfer-manager ${aws.sdk.version} + + + software.amazon.awssdk + netty-nio-client + ${aws.sdk.version} + org.dromara.sms4j diff --git a/ruoyi-common/ruoyi-common-oss/pom.xml b/ruoyi-common/ruoyi-common-oss/pom.xml index 18d004f57..190dc5d46 100644 --- a/ruoyi-common/ruoyi-common-oss/pom.xml +++ b/ruoyi-common/ruoyi-common-oss/pom.xml @@ -31,11 +31,6 @@ software.amazon.awssdk s3 - - - software.amazon.awssdk - netty-nio-client - software.amazon.awssdk @@ -54,10 +49,10 @@ - + - software.amazon.awssdk.crt - aws-crt + software.amazon.awssdk + netty-nio-client diff --git a/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java b/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java index e3b20dde3..41e74969d 100644 --- a/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java +++ b/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java @@ -16,10 +16,10 @@ import software.amazon.awssdk.auth.credentials.StaticCredentialsProvider; import software.amazon.awssdk.core.ResponseInputStream; import software.amazon.awssdk.core.async.AsyncResponseTransformer; import software.amazon.awssdk.core.async.BlockingInputStreamAsyncRequestBody; +import software.amazon.awssdk.http.nio.netty.NettyNioAsyncHttpClient; import software.amazon.awssdk.regions.Region; import software.amazon.awssdk.services.s3.S3AsyncClient; import software.amazon.awssdk.services.s3.S3Configuration; -import software.amazon.awssdk.services.s3.crt.S3CrtHttpConfiguration; import software.amazon.awssdk.services.s3.model.GetObjectResponse; import software.amazon.awssdk.services.s3.presigner.S3Presigner; import software.amazon.awssdk.transfer.s3.S3TransferManager; @@ -84,18 +84,28 @@ public class OssClient { // MinIO 使用 HTTPS 限制使用域名访问,站点填域名。需要启用路径样式访问 boolean isStyle = !StringUtils.containsAny(properties.getEndpoint(), OssConstant.CLOUD_SERVICE); - // 创建AWS基于 CRT 的 S3 客户端 - this.client = S3AsyncClient.crtBuilder() +// // 创建AWS基于 CRT 的 S3 客户端 +// this.client = S3AsyncClient.crtBuilder() +// .credentialsProvider(credentialsProvider) +// .endpointOverride(URI.create(getEndpoint())) +// .region(of()) +// .targetThroughputInGbps(20.0) +// .minimumPartSizeInBytes(10 * 1025 * 1024L) +// .checksumValidationEnabled(false) +// .forcePathStyle(isStyle) +// .httpConfiguration(S3CrtHttpConfiguration.builder() +// .connectionTimeout(Duration.ofSeconds(60)) // 设置连接超时 +// .build()) +// .build(); + + // 创建AWS基于 Netty 的 S3 客户端 + this.client = S3AsyncClient.builder() .credentialsProvider(credentialsProvider) .endpointOverride(URI.create(getEndpoint())) .region(of()) - .targetThroughputInGbps(20.0) - .minimumPartSizeInBytes(10 * 1025 * 1024L) - .checksumValidationEnabled(false) .forcePathStyle(isStyle) - .httpConfiguration(S3CrtHttpConfiguration.builder() - .connectionTimeout(Duration.ofSeconds(60)) // 设置连接超时 - .build()) + .httpClient(NettyNioAsyncHttpClient.builder() + .connectionTimeout(Duration.ofSeconds(60)).build()) .build(); //AWS基于 CRT 的 S3 AsyncClient 实例用作 S3 传输管理器的底层客户端 -- Gitee From 2de9397db8c7fbaa0b5aedeeb36389d8a7f64468 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 13 Mar 2025 11:36:49 +0800 Subject: [PATCH 472/540] =?UTF-8?q?remove=20=E5=88=A0=E9=99=A4=E6=97=A0?= =?UTF-8?q?=E7=94=A8=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/dromara/common/oss/core/OssClient.java | 14 -------------- 1 file changed, 14 deletions(-) diff --git a/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java b/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java index 41e74969d..7ac044c8e 100644 --- a/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java +++ b/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java @@ -84,20 +84,6 @@ public class OssClient { // MinIO 使用 HTTPS 限制使用域名访问,站点填域名。需要启用路径样式访问 boolean isStyle = !StringUtils.containsAny(properties.getEndpoint(), OssConstant.CLOUD_SERVICE); -// // 创建AWS基于 CRT 的 S3 客户端 -// this.client = S3AsyncClient.crtBuilder() -// .credentialsProvider(credentialsProvider) -// .endpointOverride(URI.create(getEndpoint())) -// .region(of()) -// .targetThroughputInGbps(20.0) -// .minimumPartSizeInBytes(10 * 1025 * 1024L) -// .checksumValidationEnabled(false) -// .forcePathStyle(isStyle) -// .httpConfiguration(S3CrtHttpConfiguration.builder() -// .connectionTimeout(Duration.ofSeconds(60)) // 设置连接超时 -// .build()) -// .build(); - // 创建AWS基于 Netty 的 S3 客户端 this.client = S3AsyncClient.builder() .credentialsProvider(credentialsProvider) -- Gitee From 4d8a45204c1fc50e041d7576dcd316bb999ec7fe Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 13 Mar 2025 12:51:42 +0800 Subject: [PATCH 473/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20=E9=83=A8?= =?UTF-8?q?=E9=97=A8=E6=A0=91=E5=AF=B9=E5=BA=94=E5=89=8D=E7=AB=AF=E6=96=B0?= =?UTF-8?q?=E6=A0=91=E7=BB=93=E6=9E=84=E7=BC=BA=E5=B0=91=E5=AD=97=E6=AE=B5?= =?UTF-8?q?=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/org/dromara/system/domain/SysDept.java | 9 +++++++++ .../java/org/dromara/system/domain/vo/SysDeptVo.java | 12 ++++++++++-- 2 files changed, 19 insertions(+), 2 deletions(-) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysDept.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysDept.java index b94fd8a31..8252ed5e5 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysDept.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysDept.java @@ -1,5 +1,6 @@ package org.dromara.system.domain; +import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableLogic; import com.baomidou.mybatisplus.annotation.TableName; @@ -8,6 +9,8 @@ import lombok.EqualsAndHashCode; import org.dromara.common.tenant.core.TenantEntity; import java.io.Serial; +import java.util.ArrayList; +import java.util.List; /** * 部门表 sys_dept @@ -80,4 +83,10 @@ public class SysDept extends TenantEntity { */ private String ancestors; + /** + * 子部门 + */ + @TableField(exist = false) + private List children = new ArrayList<>(); + } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysDeptVo.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysDeptVo.java index c56fb09bc..24ae56476 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysDeptVo.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysDeptVo.java @@ -2,15 +2,18 @@ package org.dromara.system.domain.vo; import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; import com.alibaba.excel.annotation.ExcelProperty; +import io.github.linpeilie.annotations.AutoMapper; +import lombok.Data; import org.dromara.common.excel.annotation.ExcelDictFormat; import org.dromara.common.excel.convert.ExcelDictConvert; import org.dromara.system.domain.SysDept; -import io.github.linpeilie.annotations.AutoMapper; -import lombok.Data; +import org.dromara.system.domain.SysMenu; import java.io.Serial; import java.io.Serializable; +import java.util.ArrayList; import java.util.Date; +import java.util.List; /** * 部门视图对象 sys_dept @@ -99,4 +102,9 @@ public class SysDeptVo implements Serializable { @ExcelProperty(value = "创建时间") private Date createTime; + /** + * 子部门 + */ + private List children = new ArrayList<>(); + } -- Gitee From 5fc76b64263c78c41e7b8bb9738a74ec0095c128 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 13 Mar 2025 13:26:46 +0800 Subject: [PATCH 474/540] =?UTF-8?q?=E5=8F=91=E5=B8=83=205.3.1-BETA=20?= =?UTF-8?q?=E5=85=AC=E6=B5=8B=E7=89=88=E6=9C=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .run/ruoyi-monitor-admin.run.xml | 2 +- .run/ruoyi-server.run.xml | 2 +- .run/ruoyi-snailjob-server.run.xml | 2 +- README.md | 2 +- pom.xml | 2 +- ruoyi-common/ruoyi-common-bom/pom.xml | 2 +- script/docker/docker-compose.yml | 8 ++++---- 7 files changed, 10 insertions(+), 10 deletions(-) diff --git a/.run/ruoyi-monitor-admin.run.xml b/.run/ruoyi-monitor-admin.run.xml index c399b2967..4e0c21057 100644 --- a/.run/ruoyi-monitor-admin.run.xml +++ b/.run/ruoyi-monitor-admin.run.xml @@ -2,7 +2,7 @@ - diff --git a/.run/ruoyi-server.run.xml b/.run/ruoyi-server.run.xml index 5dbde4ec4..bf72a8bae 100644 --- a/.run/ruoyi-server.run.xml +++ b/.run/ruoyi-server.run.xml @@ -2,7 +2,7 @@ - diff --git a/.run/ruoyi-snailjob-server.run.xml b/.run/ruoyi-snailjob-server.run.xml index e1e13fc6f..885007b07 100644 --- a/.run/ruoyi-snailjob-server.run.xml +++ b/.run/ruoyi-snailjob-server.run.xml @@ -2,7 +2,7 @@ - diff --git a/README.md b/README.md index fc3131a24..08832377e 100644 --- a/README.md +++ b/README.md @@ -10,7 +10,7 @@ [![License](https://img.shields.io/badge/License-MIT-blue.svg)](https://gitee.com/dromara/RuoYi-Vue-Plus/blob/master/LICENSE) [![使用IntelliJ IDEA开发维护](https://img.shields.io/badge/IntelliJ%20IDEA-提供支持-blue.svg)](https://www.jetbrains.com/?from=RuoYi-Vue-Plus)
    -[![RuoYi-Vue-Plus](https://img.shields.io/badge/RuoYi_Vue_Plus-5.3.0-success.svg)](https://gitee.com/dromara/RuoYi-Vue-Plus) +[![RuoYi-Vue-Plus](https://img.shields.io/badge/RuoYi_Vue_Plus-5.3.0--BETA-success.svg)](https://gitee.com/dromara/RuoYi-Vue-Plus) [![Spring Boot](https://img.shields.io/badge/Spring%20Boot-3.4-blue.svg)]() [![JDK-17](https://img.shields.io/badge/JDK-17-green.svg)]() [![JDK-21](https://img.shields.io/badge/JDK-21-green.svg)]() diff --git a/pom.xml b/pom.xml index 45d4ece78..21d163bae 100644 --- a/pom.xml +++ b/pom.xml @@ -13,7 +13,7 @@ Dromara RuoYi-Vue-Plus多租户管理系统 - 5.3.0 + 5.3.1-BETA 3.4.3 UTF-8 UTF-8 diff --git a/ruoyi-common/ruoyi-common-bom/pom.xml b/ruoyi-common/ruoyi-common-bom/pom.xml index 24acb086d..e82179891 100644 --- a/ruoyi-common/ruoyi-common-bom/pom.xml +++ b/ruoyi-common/ruoyi-common-bom/pom.xml @@ -14,7 +14,7 @@ - 5.3.0 + 5.3.1-BETA diff --git a/script/docker/docker-compose.yml b/script/docker/docker-compose.yml index 885c236ae..35979cb3a 100644 --- a/script/docker/docker-compose.yml +++ b/script/docker/docker-compose.yml @@ -98,7 +98,7 @@ services: network_mode: "host" ruoyi-server1: - image: ruoyi/ruoyi-server:5.3.0 + image: ruoyi/ruoyi-server:5.3.1-BETA container_name: ruoyi-server1 environment: # 时区上海 @@ -113,7 +113,7 @@ services: network_mode: "host" ruoyi-server2: - image: ruoyi/ruoyi-server:5.3.0 + image: ruoyi/ruoyi-server:5.3.1-BETA container_name: ruoyi-server2 environment: # 时区上海 @@ -128,7 +128,7 @@ services: network_mode: "host" ruoyi-monitor-admin: - image: ruoyi/ruoyi-monitor-admin:5.3.0 + image: ruoyi/ruoyi-monitor-admin:5.3.1-BETA container_name: ruoyi-monitor-admin environment: # 时区上海 @@ -140,7 +140,7 @@ services: network_mode: "host" ruoyi-snailjob-server: - image: ruoyi/ruoyi-snailjob-server:5.3.0 + image: ruoyi/ruoyi-snailjob-server:5.3.1-BETA container_name: ruoyi-snailjob-server environment: # 时区上海 -- Gitee From 384f9528e70e9a45aaca54f62a5b7beca6aa8838 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 13 Mar 2025 13:39:36 +0800 Subject: [PATCH 475/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20=E5=AE=9E?= =?UTF-8?q?=E4=BD=93=E7=B1=BB=E4=B9=A6=E5=86=99=E9=94=99=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/org/dromara/system/domain/SysDept.java | 2 +- .../src/main/java/org/dromara/system/domain/vo/SysDeptVo.java | 3 +-- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysDept.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysDept.java index 8252ed5e5..d436a1cfc 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysDept.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysDept.java @@ -87,6 +87,6 @@ public class SysDept extends TenantEntity { * 子部门 */ @TableField(exist = false) - private List children = new ArrayList<>(); + private List children = new ArrayList<>(); } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysDeptVo.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysDeptVo.java index 24ae56476..1f182a248 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysDeptVo.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysDeptVo.java @@ -7,7 +7,6 @@ import lombok.Data; import org.dromara.common.excel.annotation.ExcelDictFormat; import org.dromara.common.excel.convert.ExcelDictConvert; import org.dromara.system.domain.SysDept; -import org.dromara.system.domain.SysMenu; import java.io.Serial; import java.io.Serializable; @@ -105,6 +104,6 @@ public class SysDeptVo implements Serializable { /** * 子部门 */ - private List children = new ArrayList<>(); + private List children = new ArrayList<>(); } -- Gitee From 192537672e66a97cf9f65a764a671b86fd089ec6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=B4=9B=E5=B0=8F=E9=A3=8E?= <13852492678@163.com> Date: Thu, 13 Mar 2025 07:37:22 +0000 Subject: [PATCH 476/540] =?UTF-8?q?!654=20update=20=E4=BC=98=E5=8C=96?= =?UTF-8?q?=E5=87=BD=E6=95=B0=E6=B3=A8=E9=87=8A=E4=BB=A5=E5=87=86=E7=A1=AE?= =?UTF-8?q?=E6=8F=8F=E8=BF=B0SSE=E4=BC=9A=E8=AF=9D=20*=20update=20?= =?UTF-8?q?=E4=BC=98=E5=8C=96=E5=87=BD=E6=95=B0=E6=B3=A8=E9=87=8A=E4=BB=A5?= =?UTF-8?q?=E5=87=86=E7=A1=AE=E6=8F=8F=E8=BF=B0SSE=E4=BC=9A=E8=AF=9D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/org/dromara/common/sse/utils/SseMessageUtils.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/utils/SseMessageUtils.java b/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/utils/SseMessageUtils.java index 586103417..ce3aad472 100644 --- a/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/utils/SseMessageUtils.java +++ b/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/utils/SseMessageUtils.java @@ -26,7 +26,7 @@ public class SseMessageUtils { } /** - * 向指定的WebSocket会话发送消息 + * 向指定的SSE会话发送消息 * * @param userId 要发送消息的用户id * @param message 要发送的消息内容 -- Gitee From 865627fdad325fe7df687e2173d2df82b9644560 Mon Sep 17 00:00:00 2001 From: AprilWind <2100166581@qq.com> Date: Thu, 13 Mar 2025 16:20:48 +0800 Subject: [PATCH 477/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=E8=8E=B7?= =?UTF-8?q?=E5=8F=96=E8=8A=82=E7=82=B9=E6=89=A9=E5=B1=95=E5=B1=9E=E6=80=A7?= =?UTF-8?q?,=E7=AE=80=E5=8C=96=E8=8A=82=E7=82=B9=E7=BC=96=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/FlwNodeExtServiceImpl.java | 95 ++++++++----------- 1 file changed, 40 insertions(+), 55 deletions(-) diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwNodeExtServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwNodeExtServiceImpl.java index 4d8368a85..2dc30607c 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwNodeExtServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwNodeExtServiceImpl.java @@ -6,7 +6,6 @@ import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.dromara.common.core.domain.dto.DictTypeDTO; import org.dromara.common.core.service.DictService; -import org.dromara.common.core.utils.StringUtils; import org.dromara.warm.flow.ui.service.NodeExtService; import org.dromara.warm.flow.ui.vo.NodeExt; import org.dromara.workflow.common.ConditionalOnEnable; @@ -37,11 +36,6 @@ public class FlwNodeExtServiceImpl implements NodeExtService { */ private static final String PERMISSION_TAB_NAME = "权限"; - /** - * 枚举类型标识 - */ - private static final String ENUM_TYPE_PREFIX = "enum:"; - /** * 基础设置 */ @@ -58,7 +52,7 @@ public class FlwNodeExtServiceImpl implements NodeExtService { private static final Map> CHILD_NODE_MAP = new HashMap<>(); static { - CHILD_NODE_MAP.put(ButtonPermissionEnum.class.getName(), + CHILD_NODE_MAP.put(ButtonPermissionEnum.class.getSimpleName(), Map.of("label", "权限按钮", "type", 4, "must", false, "multiple", true)); } @@ -67,33 +61,40 @@ public class FlwNodeExtServiceImpl implements NodeExtService { /** * 获取节点扩展属性 * - * @return 结果 + * @return 节点扩展属性列表 */ @Override public List getNodeExt() { List nodeExtList = new ArrayList<>(); // 构建按钮权限页面 nodeExtList.add(buildNodeExt(PERMISSION_TAB, PERMISSION_TAB_NAME, TYPE_NEW_TAB, - ENUM_TYPE_PREFIX + ButtonPermissionEnum.class.getName())); + List.of(ButtonPermissionEnum.class))); return nodeExtList; } /** - * 构建一个 NodeExt 对象 + * 构建一个 `NodeExt` 对象 * - * @param code 编码,此json中唯一 - * @param name 名称,如果type为新页签时,作为页签名称 - * @param type 节点类型,1:基础设置,2:新页签 - * @param sourceTypes 字典/枚举类型来源(逗号分隔) - * @return 返回构建好的 NodeExt 对象 + * @param code 唯一编码 + * @param name 名称(新页签时,作为页签名称) + * @param type 节点类型(1: 基础设置,2: 新页签) + * @param sources 数据来源(枚举类或字典类型) + * @return 构建的 `NodeExt` 对象 */ - private NodeExt buildNodeExt(String code, String name, int type, String sourceTypes) { + private NodeExt buildNodeExt(String code, String name, int type, List sources) { NodeExt nodeExt = new NodeExt(); nodeExt.setCode(code); nodeExt.setType(type); nodeExt.setName(name); - nodeExt.setChilds(StringUtils.splitList(sourceTypes) - .stream().map(this::buildChildNode) + nodeExt.setChilds(sources.stream() + .map(source -> { + if (source instanceof Class clazz && NodeExtEnum.class.isAssignableFrom(clazz)) { + return buildChildNode((Class>) clazz); + } else if (source instanceof String dictType) { + return buildChildNode(dictType); + } + return null; + }) .filter(ObjectUtil::isNotNull) .toList() ); @@ -101,52 +102,36 @@ public class FlwNodeExtServiceImpl implements NodeExtService { } /** - * 构建一个 ChildNode 对象 + * 根据枚举类型构建一个 `ChildNode` 对象 * - * @param sourceType 字典类型 - * @return 返回构建好的 ChildNode 对象 + * @param enumClass 枚举类,必须实现 `NodeExtEnum` 接口 + * @return 构建的 `ChildNode` 对象 */ - private NodeExt.ChildNode buildChildNode(String sourceType) { - return sourceType.startsWith(ENUM_TYPE_PREFIX) ? - buildChildNodeFromEnum(sourceType.substring(ENUM_TYPE_PREFIX.length())) : buildChildNodeFromDict(sourceType); - } - - /** - * 根据枚举构建一个 ChildNode 对象 - * - * @param enumClassName 枚举名称 - * @return 返回构建好的 ChildNode 对象 - */ - private NodeExt.ChildNode buildChildNodeFromEnum(String enumClassName) { - try { - Class enumClass = Class.forName(enumClassName); - if (!enumClass.isEnum()) { - return null; - } - NodeExt.ChildNode childNode = buildChildNodeMap(enumClassName); - // 编码,此json中唯 - childNode.setCode(ENUM_TYPE_PREFIX + enumClassName); - // 字典,下拉框和复选框时用到 - childNode.setDict(Arrays.stream(enumClass.getEnumConstants()) - .filter(NodeExtEnum.class::isInstance) - .map(NodeExtEnum.class::cast) - .map(x -> - new NodeExt.DictItem(x.getLabel(), x.getValue(), x.isSelected()) - ).toList()); - return childNode; - } catch (ClassNotFoundException e) { - log.error("Enum class not found: {}", enumClassName, e); + private NodeExt.ChildNode buildChildNode(Class> enumClass) { + if (!enumClass.isEnum()) { + return null; } - return null; + String simpleName = enumClass.getSimpleName(); + NodeExt.ChildNode childNode = buildChildNodeMap(simpleName); + // 编码,此json中唯 + childNode.setCode(simpleName); + // 字典,下拉框和复选框时用到 + childNode.setDict(Arrays.stream(enumClass.getEnumConstants()) + .filter(NodeExtEnum.class::isInstance) + .map(NodeExtEnum.class::cast) + .map(x -> + new NodeExt.DictItem(x.getLabel(), x.getValue(), x.isSelected()) + ).toList()); + return childNode; } /** - * 根据字典构建一个 ChildNode 对象 + * 根据字典类型构建 `ChildNode` 对象 * * @param dictType 字典类型 - * @return 返回构建好的 ChildNode 对象 + * @return 构建的 `ChildNode` 对象 */ - private NodeExt.ChildNode buildChildNodeFromDict(String dictType) { + private NodeExt.ChildNode buildChildNode(String dictType) { DictTypeDTO dictTypeDTO = dictService.getDictType(dictType); if (ObjectUtil.isNull(dictTypeDTO)) { return null; -- Gitee From 800c6c8ff381d12cc555c9245e592f050ead71ac Mon Sep 17 00:00:00 2001 From: AprilWind <2100166581@qq.com> Date: Thu, 13 Mar 2025 17:26:05 +0800 Subject: [PATCH 478/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=E5=B7=A5?= =?UTF-8?q?=E4=BD=9C=E6=B5=81=E5=8A=9E=E7=90=86=E4=BA=BA=E6=A0=87=E8=AF=86?= =?UTF-8?q?=E7=AC=A6=E8=A7=A3=E6=9E=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/FlwTaskAssigneeServiceImpl.java | 22 ++++++++++++++----- 1 file changed, 16 insertions(+), 6 deletions(-) diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskAssigneeServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskAssigneeServiceImpl.java index 5877bb503..1e0d17278 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskAssigneeServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskAssigneeServiceImpl.java @@ -1,6 +1,7 @@ package org.dromara.workflow.service.impl; import cn.hutool.core.bean.BeanUtil; +import cn.hutool.core.collection.CollUtil; import cn.hutool.core.util.StrUtil; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; @@ -25,9 +26,7 @@ import org.dromara.workflow.common.enums.TaskAssigneeEnum; import org.dromara.workflow.service.IFlwTaskAssigneeService; import org.springframework.stereotype.Service; -import java.util.ArrayList; -import java.util.List; -import java.util.Optional; +import java.util.*; /** * 流程设计器-获取办理人权限设置列表 @@ -132,15 +131,26 @@ public class FlwTaskAssigneeServiceImpl implements IFlwTaskAssigneeService, Hand @Override public List fetchUsersByStorageId(String storageId) { List list = new ArrayList<>(); + Map> typeIdMap = new EnumMap<>(TaskAssigneeEnum.class); for (String str : storageId.split(StrUtil.COMMA)) { String[] parts = str.split(StrUtil.COLON, 2); + TaskAssigneeEnum type; + Long id; if (parts.length < 2) { - list.addAll(getUsersByType(TaskAssigneeEnum.USER, List.of(Long.valueOf(parts[0])))); + // 无前缀时默认是用户类型 + type = TaskAssigneeEnum.USER; + id = Long.valueOf(parts[0]); } else { - list.addAll(getUsersByType(TaskAssigneeEnum.fromCode(parts[0] + StrUtil.COLON), List.of(Long.valueOf(parts[1])))); + // 根据前缀解析类型(如 "role:123" -> ROLE 类型) + type = TaskAssigneeEnum.fromCode(parts[0] + StrUtil.COLON); + id = Long.valueOf(parts[1]); } + typeIdMap.computeIfAbsent(type, k -> new ArrayList<>()).add(id); } - return list; + typeIdMap.entrySet().stream() + .filter(entry -> CollUtil.isNotEmpty(entry.getValue())) + .forEach(entry -> list.addAll(getUsersByType(entry.getKey(), entry.getValue()))); + return list.stream().distinct().toList(); } /** -- Gitee From 92e9ed771b801cee4a6981b7126dd529859254b2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 13 Mar 2025 17:47:03 +0800 Subject: [PATCH 479/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E4=BB=A3?= =?UTF-8?q?=E7=A0=81=E4=B9=A6=E5=86=99=E6=A0=BC=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../workflow/service/impl/FlwNodeExtServiceImpl.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwNodeExtServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwNodeExtServiceImpl.java index 2dc30607c..231487d04 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwNodeExtServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwNodeExtServiceImpl.java @@ -81,6 +81,7 @@ public class FlwNodeExtServiceImpl implements NodeExtService { * @param sources 数据来源(枚举类或字典类型) * @return 构建的 `NodeExt` 对象 */ + @SuppressWarnings("unchecked cast") private NodeExt buildNodeExt(String code, String name, int type, List sources) { NodeExt nodeExt = new NodeExt(); nodeExt.setCode(code); @@ -89,7 +90,7 @@ public class FlwNodeExtServiceImpl implements NodeExtService { nodeExt.setChilds(sources.stream() .map(source -> { if (source instanceof Class clazz && NodeExtEnum.class.isAssignableFrom(clazz)) { - return buildChildNode((Class>) clazz); + return buildChildNode((Class) clazz); } else if (source instanceof String dictType) { return buildChildNode(dictType); } @@ -107,7 +108,7 @@ public class FlwNodeExtServiceImpl implements NodeExtService { * @param enumClass 枚举类,必须实现 `NodeExtEnum` 接口 * @return 构建的 `ChildNode` 对象 */ - private NodeExt.ChildNode buildChildNode(Class> enumClass) { + private NodeExt.ChildNode buildChildNode(Class enumClass) { if (!enumClass.isEnum()) { return null; } @@ -117,7 +118,6 @@ public class FlwNodeExtServiceImpl implements NodeExtService { childNode.setCode(simpleName); // 字典,下拉框和复选框时用到 childNode.setDict(Arrays.stream(enumClass.getEnumConstants()) - .filter(NodeExtEnum.class::isInstance) .map(NodeExtEnum.class::cast) .map(x -> new NodeExt.DictItem(x.getLabel(), x.getValue(), x.isSelected()) -- Gitee From c79e053beaabc490051fcc98159a68866cb306d1 Mon Sep 17 00:00:00 2001 From: gssong <1742057357@qq.com> Date: Sat, 15 Mar 2025 22:53:31 +0800 Subject: [PATCH 480/540] =?UTF-8?q?update=20=E8=B0=83=E6=95=B4=E6=B5=81?= =?UTF-8?q?=E7=A8=8B=E5=AE=9A=E4=B9=89=EF=BC=8C=E4=BF=AE=E5=A4=8D=E4=BD=BF?= =?UTF-8?q?=E7=94=A8leave6=E6=8F=90=E4=BA=A4=E9=94=99=E8=AF=AF=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/TestLeaveServiceImpl.java | 2 +- script/leave/leave1.json | 14 +++++------ script/leave/leave2.json | 20 ++++++++-------- script/leave/leave3.json | 20 ++++++++-------- script/leave/leave4.json | 16 ++++++------- script/leave/leave5.json | 20 ++++++++-------- script/leave/leave6.json | 23 +++++++++++-------- 7 files changed, 59 insertions(+), 56 deletions(-) diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/TestLeaveServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/TestLeaveServiceImpl.java index a1ac84595..9ecd867ac 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/TestLeaveServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/TestLeaveServiceImpl.java @@ -54,7 +54,7 @@ public class TestLeaveServiceImpl implements ITestLeaveService { * @return boolean */ public boolean eval(Integer leaveDays) { - if (leaveDays < 2) { + if (leaveDays <= 2) { return true; } return false; diff --git a/script/leave/leave1.json b/script/leave/leave1.json index 0cf67bc46..36fc32602 100644 --- a/script/leave/leave1.json +++ b/script/leave/leave1.json @@ -1,7 +1,7 @@ { "flowCode" : "leave1", "flowName" : "请假申请-普通", - "category" : "1", + "category" : "100", "version" : "1", "formCustom" : "N", "formPath" : "/workflow/leaveEdit/index", @@ -11,8 +11,8 @@ "nodeName" : "开始", "nodeRatio" : 0.000, "coordinate" : "200,200|200,200", - "skipAnyNode" : "N", "formCustom" : "N", + "ext" : "[]", "skipList" : [ { "nowNodeCode" : "d5ee3ddf-3968-4379-a86f-9ceabde5faac", "nextNodeCode" : "dd515cdd-59f6-446f-94ca-25ca062afb42", @@ -25,8 +25,8 @@ "nodeName" : "申请人", "nodeRatio" : 0.000, "coordinate" : "360,200|360,200", - "skipAnyNode" : "N", "formCustom" : "N", + "ext" : "[]", "skipList" : [ { "nowNodeCode" : "dd515cdd-59f6-446f-94ca-25ca062afb42", "nextNodeCode" : "78fa8e5b-e809-44ed-978a-41092409ebcf", @@ -40,8 +40,8 @@ "permissionFlag" : "role:1", "nodeRatio" : 0.000, "coordinate" : "540,200|540,200", - "skipAnyNode" : "N", "formCustom" : "N", + "ext" : "[{\"code\":\"ButtonPermissionEnum\",\"value\":\"back,termination\"}]", "skipList" : [ { "nowNodeCode" : "78fa8e5b-e809-44ed-978a-41092409ebcf", "nextNodeCode" : "a8abf15f-b83e-428a-86cc-033555ea9bbe", @@ -55,8 +55,8 @@ "permissionFlag" : "role:3,role:4", "nodeRatio" : 0.000, "coordinate" : "720,200|720,200", - "skipAnyNode" : "N", "formCustom" : "N", + "ext" : "[{\"code\":\"ButtonPermissionEnum\",\"value\":\"back,termination\"}]", "skipList" : [ { "nowNodeCode" : "a8abf15f-b83e-428a-86cc-033555ea9bbe", "nextNodeCode" : "8b82b7d7-8660-455e-b880-d6d22ea3eb6d", @@ -69,7 +69,7 @@ "nodeName" : "结束", "nodeRatio" : 0.000, "coordinate" : "900,200|900,200", - "skipAnyNode" : "N", - "formCustom" : "N" + "formCustom" : "N", + "ext" : "[]" } ] } \ No newline at end of file diff --git a/script/leave/leave2.json b/script/leave/leave2.json index 9fce8ffd2..bb196a314 100644 --- a/script/leave/leave2.json +++ b/script/leave/leave2.json @@ -1,7 +1,7 @@ { "flowCode" : "leave2", "flowName" : "请假申请-排他网关", - "category" : "1", + "category" : "100", "version" : "1", "formCustom" : "N", "formPath" : "/workflow/leaveEdit/index", @@ -11,8 +11,8 @@ "nodeName" : "开始", "nodeRatio" : 0.000, "coordinate" : "300,240|300,240", - "skipAnyNode" : "N", "formCustom" : "N", + "ext" : "[]", "skipList" : [ { "nowNodeCode" : "cef3895c-f7d8-4598-8bf3-8ec2ef6ce84a", "nextNodeCode" : "fdcae93b-b69c-498a-b231-09255e74bcbd", @@ -25,8 +25,8 @@ "nodeName" : "申请人", "nodeRatio" : 0.000, "coordinate" : "440,240|440,240", - "skipAnyNode" : "N", "formCustom" : "N", + "ext" : "[]", "skipList" : [ { "nowNodeCode" : "fdcae93b-b69c-498a-b231-09255e74bcbd", "nextNodeCode" : "7b8c7ead-7dc8-4951-a7f3-f0c41995909e", @@ -38,8 +38,8 @@ "nodeCode" : "7b8c7ead-7dc8-4951-a7f3-f0c41995909e", "nodeRatio" : 0.000, "coordinate" : "560,240", - "skipAnyNode" : "N", "formCustom" : "N", + "ext" : "[]", "skipList" : [ { "nowNodeCode" : "7b8c7ead-7dc8-4951-a7f3-f0c41995909e", "nextNodeCode" : "b3528155-dcb7-4445-bbdf-3d00e3499e86", @@ -61,8 +61,8 @@ "permissionFlag" : "3,4", "nodeRatio" : 0.000, "coordinate" : "720,320|720,320", - "skipAnyNode" : "N", "formCustom" : "N", + "ext" : "[{\"code\":\"ButtonPermissionEnum\",\"value\":\"back,termination\"}]", "skipList" : [ { "nowNodeCode" : "b3528155-dcb7-4445-bbdf-3d00e3499e86", "nextNodeCode" : "c9fa6d7d-2a74-4e78-b947-0cad8a6af869", @@ -76,8 +76,8 @@ "permissionFlag" : "role:1", "nodeRatio" : 0.000, "coordinate" : "860,240|860,240", - "skipAnyNode" : "N", "formCustom" : "N", + "ext" : "[]", "skipList" : [ { "nowNodeCode" : "c9fa6d7d-2a74-4e78-b947-0cad8a6af869", "nextNodeCode" : "40aa65fd-0712-4d23-b6f7-d0432b920fd1", @@ -90,8 +90,8 @@ "nodeName" : "结束", "nodeRatio" : 0.000, "coordinate" : "1000,240|1000,240", - "skipAnyNode" : "N", - "formCustom" : "N" + "formCustom" : "N", + "ext" : "[]" }, { "nodeType" : 1, "nodeCode" : "5ed2362b-fc0c-4d52-831f-95208b830605", @@ -99,8 +99,8 @@ "permissionFlag" : "role:1", "nodeRatio" : 0.000, "coordinate" : "720,160|720,160", - "skipAnyNode" : "N", "formCustom" : "N", + "ext" : "[{\"code\":\"ButtonPermissionEnum\",\"value\":\"back,termination\"}]", "skipList" : [ { "nowNodeCode" : "5ed2362b-fc0c-4d52-831f-95208b830605", "nextNodeCode" : "c9fa6d7d-2a74-4e78-b947-0cad8a6af869", @@ -108,4 +108,4 @@ "coordinate" : "770,160;860,160;860,200" } ] } ] -} +} \ No newline at end of file diff --git a/script/leave/leave3.json b/script/leave/leave3.json index 08daae4bf..d289c787a 100644 --- a/script/leave/leave3.json +++ b/script/leave/leave3.json @@ -1,7 +1,7 @@ { "flowCode" : "leave3", "flowName" : "请假申请-并行网关", - "category" : "1", + "category" : "100", "version" : "1", "formCustom" : "N", "formPath" : "/workflow/leaveEdit/index", @@ -11,8 +11,8 @@ "nodeName" : "开始", "nodeRatio" : 0.000, "coordinate" : "380,220|380,220", - "skipAnyNode" : "N", "formCustom" : "N", + "ext" : "[]", "skipList" : [ { "nowNodeCode" : "a80ecf9f-f465-4ae5-a429-e30ec5d0f957", "nextNodeCode" : "b7bbb571-06de-455c-8083-f83c07bf0b99", @@ -25,8 +25,8 @@ "nodeName" : "申请人", "nodeRatio" : 0.000, "coordinate" : "520,220|520,220", - "skipAnyNode" : "N", "formCustom" : "N", + "ext" : "[]", "skipList" : [ { "nowNodeCode" : "b7bbb571-06de-455c-8083-f83c07bf0b99", "nextNodeCode" : "84d7ed24-bb44-4ba1-bf1f-e6f5092d3f0a", @@ -38,8 +38,8 @@ "nodeCode" : "84d7ed24-bb44-4ba1-bf1f-e6f5092d3f0a", "nodeRatio" : 0.000, "coordinate" : "680,220", - "skipAnyNode" : "N", "formCustom" : "N", + "ext" : "[]", "skipList" : [ { "nowNodeCode" : "84d7ed24-bb44-4ba1-bf1f-e6f5092d3f0a", "nextNodeCode" : "4b7743cd-940c-431b-926f-e7b614fbf1fe", @@ -58,8 +58,8 @@ "permissionFlag" : "role:1", "nodeRatio" : 0.000, "coordinate" : "800,140|800,140", - "skipAnyNode" : "N", "formCustom" : "N", + "ext" : "[]", "skipList" : [ { "nowNodeCode" : "4b7743cd-940c-431b-926f-e7b614fbf1fe", "nextNodeCode" : "b66b6563-f9fe-41cc-a782-f7837bb6f3d2", @@ -71,8 +71,8 @@ "nodeCode" : "b66b6563-f9fe-41cc-a782-f7837bb6f3d2", "nodeRatio" : 0.000, "coordinate" : "920,220", - "skipAnyNode" : "N", "formCustom" : "N", + "ext" : "[]", "skipList" : [ { "nowNodeCode" : "b66b6563-f9fe-41cc-a782-f7837bb6f3d2", "nextNodeCode" : "23e7429e-2b47-4431-b93e-40db7c431ce6", @@ -86,8 +86,8 @@ "permissionFlag" : "1", "nodeRatio" : 0.000, "coordinate" : "1040,220|1040,220", - "skipAnyNode" : "N", "formCustom" : "N", + "ext" : "[]", "skipList" : [ { "nowNodeCode" : "23e7429e-2b47-4431-b93e-40db7c431ce6", "nextNodeCode" : "f5ace37f-5a5e-4e64-a6f6-913ab9a71cd1", @@ -100,8 +100,8 @@ "nodeName" : "结束", "nodeRatio" : 0.000, "coordinate" : "1160,220|1160,220", - "skipAnyNode" : "N", - "formCustom" : "N" + "formCustom" : "N", + "ext" : "[]" }, { "nodeType" : 1, "nodeCode" : "762cb975-37d8-4276-b6db-79a4c3606394", @@ -109,8 +109,8 @@ "permissionFlag" : "role:3,role:4", "nodeRatio" : 0.000, "coordinate" : "800,300|800,300", - "skipAnyNode" : "N", "formCustom" : "N", + "ext" : "[]", "skipList" : [ { "nowNodeCode" : "762cb975-37d8-4276-b6db-79a4c3606394", "nextNodeCode" : "b66b6563-f9fe-41cc-a782-f7837bb6f3d2", diff --git a/script/leave/leave4.json b/script/leave/leave4.json index f8f440812..c085de2e5 100644 --- a/script/leave/leave4.json +++ b/script/leave/leave4.json @@ -1,7 +1,7 @@ { "flowCode" : "leave4", "flowName" : "请假申请-会签", - "category" : "1", + "category" : "100", "version" : "1", "formCustom" : "N", "formPath" : "/workflow/leaveEdit/index", @@ -11,8 +11,8 @@ "nodeName" : "开始", "nodeRatio" : 0.000, "coordinate" : "320,240|320,240", - "skipAnyNode" : "N", "formCustom" : "N", + "ext" : "[]", "skipList" : [ { "nowNodeCode" : "9ce8bf00-f25b-4fc6-91b8-827082fc4876", "nextNodeCode" : "e90b98ef-35b4-410c-a663-bae8b7624b9f", @@ -25,8 +25,8 @@ "nodeName" : "申请人", "nodeRatio" : 0.000, "coordinate" : "460,240|460,240", - "skipAnyNode" : "N", "formCustom" : "N", + "ext" : "[]", "skipList" : [ { "nowNodeCode" : "e90b98ef-35b4-410c-a663-bae8b7624b9f", "nextNodeCode" : "768b5b1a-6726-4d67-8853-4cc70d5b1045", @@ -40,8 +40,8 @@ "permissionFlag" : "${userList}", "nodeRatio" : 60.000, "coordinate" : "640,240|640,240", - "skipAnyNode" : "N", "formCustom" : "N", + "ext" : "[]", "skipList" : [ { "nowNodeCode" : "768b5b1a-6726-4d67-8853-4cc70d5b1045", "nextNodeCode" : "2f9f2e21-9bcf-42a3-a07c-13037aad22d1", @@ -55,8 +55,8 @@ "permissionFlag" : "role:1,role:3", "nodeRatio" : 100.000, "coordinate" : "820,240|820,240", - "skipAnyNode" : "N", "formCustom" : "N", + "ext" : "[]", "skipList" : [ { "nowNodeCode" : "2f9f2e21-9bcf-42a3-a07c-13037aad22d1", "nextNodeCode" : "27461e01-3d9f-4530-8fe3-bd5ec7f9571f", @@ -70,8 +70,8 @@ "permissionFlag" : "1", "nodeRatio" : 0.000, "coordinate" : "1000,240|1000,240", - "skipAnyNode" : "N", "formCustom" : "N", + "ext" : "[]", "skipList" : [ { "nowNodeCode" : "27461e01-3d9f-4530-8fe3-bd5ec7f9571f", "nextNodeCode" : "b62b88c3-8d8d-4969-911e-2aaea219e7fc", @@ -84,7 +84,7 @@ "nodeName" : "结束", "nodeRatio" : 0.000, "coordinate" : "1120,240|1120,240", - "skipAnyNode" : "N", - "formCustom" : "N" + "formCustom" : "N", + "ext" : "[]" } ] } \ No newline at end of file diff --git a/script/leave/leave5.json b/script/leave/leave5.json index dc99494a5..76d10f180 100644 --- a/script/leave/leave5.json +++ b/script/leave/leave5.json @@ -1,7 +1,7 @@ { "flowCode" : "leave5", "flowName" : "请假申请-并行会签网关", - "category" : "1", + "category" : "100", "version" : "1", "formCustom" : "N", "formPath" : "/workflow/leaveEdit/index", @@ -11,8 +11,8 @@ "nodeName" : "开始", "nodeRatio" : 0.000, "coordinate" : "300,220|300,220", - "skipAnyNode" : "N", "formCustom" : "N", + "ext" : "[]", "skipList" : [ { "nowNodeCode" : "ebebaf26-9cb6-497e-8119-4c9fed4c597c", "nextNodeCode" : "e1b04e96-dc81-4858-a309-2fe945d2f374", @@ -25,8 +25,8 @@ "nodeName" : "申请人", "nodeRatio" : 0.000, "coordinate" : "420,220|420,220", - "skipAnyNode" : "N", "formCustom" : "N", + "ext" : "[]", "skipList" : [ { "nowNodeCode" : "e1b04e96-dc81-4858-a309-2fe945d2f374", "nextNodeCode" : "3e743f4f-51ca-41d4-8e94-21f5dd9b59c9", @@ -38,8 +38,8 @@ "nodeCode" : "3e743f4f-51ca-41d4-8e94-21f5dd9b59c9", "nodeRatio" : 0.000, "coordinate" : "560,220", - "skipAnyNode" : "N", "formCustom" : "N", + "ext" : "[]", "skipList" : [ { "nowNodeCode" : "3e743f4f-51ca-41d4-8e94-21f5dd9b59c9", "nextNodeCode" : "c80f273e-1f17-4bd8-9ad1-04a4a94ea862", @@ -58,8 +58,8 @@ "permissionFlag" : "role:1,role:3", "nodeRatio" : 100.000, "coordinate" : "700,320|700,320", - "skipAnyNode" : "N", "formCustom" : "N", + "ext" : "[]", "skipList" : [ { "nowNodeCode" : "c80f273e-1f17-4bd8-9ad1-04a4a94ea862", "nextNodeCode" : "1a20169e-3d82-4926-a151-e2daad28de1b", @@ -71,8 +71,8 @@ "nodeCode" : "1a20169e-3d82-4926-a151-e2daad28de1b", "nodeRatio" : 0.000, "coordinate" : "860,220", - "skipAnyNode" : "N", "formCustom" : "N", + "ext" : "[]", "skipList" : [ { "nowNodeCode" : "1a20169e-3d82-4926-a151-e2daad28de1b", "nextNodeCode" : "7a8f0473-e409-442e-a843-5c2b813d00e9", @@ -86,8 +86,8 @@ "permissionFlag" : "1", "nodeRatio" : 0.000, "coordinate" : "1000,220|1000,220", - "skipAnyNode" : "N", "formCustom" : "N", + "ext" : "[]", "skipList" : [ { "nowNodeCode" : "7a8f0473-e409-442e-a843-5c2b813d00e9", "nextNodeCode" : "03c4d2bc-58b5-4408-a2e4-65afb046f169", @@ -100,8 +100,8 @@ "nodeName" : "结束", "nodeRatio" : 0.000, "coordinate" : "1140,220|1140,220", - "skipAnyNode" : "N", - "formCustom" : "N" + "formCustom" : "N", + "ext" : "[]" }, { "nodeType" : 1, "nodeCode" : "1e3e8d3b-18ae-4d6c-a814-ce0d724adfa4", @@ -109,8 +109,8 @@ "permissionFlag" : "${userList}", "nodeRatio" : 60.000, "coordinate" : "700,120|700,120", - "skipAnyNode" : "N", "formCustom" : "N", + "ext" : "[]", "skipList" : [ { "nowNodeCode" : "1e3e8d3b-18ae-4d6c-a814-ce0d724adfa4", "nextNodeCode" : "1a20169e-3d82-4926-a151-e2daad28de1b", diff --git a/script/leave/leave6.json b/script/leave/leave6.json index c0fb172ec..d21d9d2c8 100644 --- a/script/leave/leave6.json +++ b/script/leave/leave6.json @@ -2,7 +2,7 @@ "flowCode" : "leave6", "flowName" : "请假申请-排他并行会签", "category" : "100", - "version" : "4", + "version" : "1", "formCustom" : "N", "formPath" : "/workflow/leaveEdit/index", "nodeList" : [ { @@ -25,7 +25,8 @@ "nodeName" : "申请人", "nodeRatio" : 0.000, "coordinate" : "400,300|400,300", - "ext" : "[{\"code\":\"enum:org.dromara.workflow.common.enums.ButtonPermissionEnum\",\"value\":\"back,termination\"}]", + "formCustom" : "N", + "ext" : "[{\"code\":\"ButtonPermissionEnum\",\"value\":\"back,termination\"}]", "skipList" : [ { "nowNodeCode" : "c25a0e86-fdd1-4f03-8e22-14db70389dbd", "nextNodeCode" : "07ecda1d-7a0a-47b5-8a91-6186c9473742", @@ -39,7 +40,8 @@ "permissionFlag" : "role:1@@role:3@@role:4", "nodeRatio" : 0.000, "coordinate" : "860,200|860,200", - "ext" : "[{\"code\":\"enum:org.dromara.workflow.common.enums.ButtonPermissionEnum\",\"value\":\"back,termination\"}]", + "formCustom" : "N", + "ext" : "[{\"code\":\"ButtonPermissionEnum\",\"value\":\"back,termination\"}]", "skipList" : [ { "nowNodeCode" : "2bfa3919-78cf-4bc1-b59b-df463a4546f9", "nextNodeCode" : "394e1cc8-b8b2-4189-9f81-44448e88ac32", @@ -54,7 +56,7 @@ "nodeRatio" : 0.000, "coordinate" : "860,400|860,400", "formCustom" : "N", - "ext" : "[{\"code\":\"enum:org.dromara.workflow.common.enums.ButtonPermissionEnum\",\"value\":\"back,termination\"}]", + "ext" : "[{\"code\":\"ButtonPermissionEnum\",\"value\":\"back,termination\"}]", "skipList" : [ { "nowNodeCode" : "ec17f60e-94e0-4d96-a3ce-3417e9d32d60", "nextNodeCode" : "394e1cc8-b8b2-4189-9f81-44448e88ac32", @@ -68,7 +70,8 @@ "permissionFlag" : "1", "nodeRatio" : 0.000, "coordinate" : "560,300|560,300", - "ext" : "[{\"code\":\"enum:org.dromara.workflow.common.enums.ButtonPermissionEnum\",\"value\":\"back,termination,copy,trust,transfer\"}]", + "formCustom" : "N", + "ext" : "[{\"code\":\"ButtonPermissionEnum\",\"value\":\"back,termination,transfer,copy,pop\"}]", "skipList" : [ { "nowNodeCode" : "07ecda1d-7a0a-47b5-8a91-6186c9473742", "nextNodeCode" : "48117e2c-6328-406b-b102-c4a9d115bb13", @@ -117,7 +120,7 @@ "nodeRatio" : 100.000, "coordinate" : "1180,300|1180,300", "formCustom" : "N", - "ext" : "[{\"code\":\"enum:org.dromara.workflow.common.enums.ButtonPermissionEnum\",\"value\":\"back,termination,pop,addSign,subSign\"}]", + "ext" : "[{\"code\":\"ButtonPermissionEnum\",\"value\":\"back,termination,pop,addSign,subSign\"}]", "skipList" : [ { "nowNodeCode" : "9c93a195-cff2-4e17-ab0a-a4f264191496", "nextNodeCode" : "a1a42056-afd1-4e90-88bc-36cbf5a66992", @@ -150,7 +153,7 @@ "nodeRatio" : 0.000, "coordinate" : "1480,200|1480,200", "formCustom" : "N", - "ext" : "[{\"code\":\"enum:org.dromara.workflow.common.enums.ButtonPermissionEnum\",\"value\":\"back,termination\"}]", + "ext" : "[{\"code\":\"ButtonPermissionEnum\",\"value\":\"back,termination\"}]", "skipList" : [ { "nowNodeCode" : "350dfa0c-a77c-4efa-8527-10efa02d8be4", "nextNodeCode" : "c36a46ef-04f9-463f-bad7-4b395c818519", @@ -165,7 +168,7 @@ "nodeRatio" : 0.000, "coordinate" : "1480,400|1480,400", "formCustom" : "N", - "ext" : "[{\"code\":\"enum:org.dromara.workflow.common.enums.ButtonPermissionEnum\",\"value\":\"back,termination\"}]", + "ext" : "[{\"code\":\"ButtonPermissionEnum\",\"value\":\"back,termination\"}]", "skipList" : [ { "nowNodeCode" : "fcfdd9f6-f526-4c1a-b71d-88afa31aebc5", "nextNodeCode" : "c36a46ef-04f9-463f-bad7-4b395c818519", @@ -193,7 +196,7 @@ "nodeRatio" : 0.000, "coordinate" : "1820,300|1820,300", "formCustom" : "N", - "ext" : "[{\"code\":\"enum:org.dromara.workflow.common.enums.ButtonPermissionEnum\",\"value\":\"back,termination\"}]", + "ext" : "[{\"code\":\"ButtonPermissionEnum\",\"value\":\"back,termination\"}]", "skipList" : [ { "nowNodeCode" : "3fcea762-b53a-4ae1-8365-7bec90444828", "nextNodeCode" : "9cfbfd3e-6c04-41d6-9fc2-6787a7d2cd31", @@ -209,4 +212,4 @@ "formCustom" : "N", "ext" : "[]" } ] -} \ No newline at end of file +} -- Gitee From 1f1564fad9e0c36fc02bde6daa9ace856ae9157e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Mon, 17 Mar 2025 09:32:32 +0800 Subject: [PATCH 481/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E4=BF=AE?= =?UTF-8?q?=E6=94=B9oss=E6=9E=9A=E4=B8=BE=E5=8C=85=E5=90=8D=E4=B8=8E?= =?UTF-8?q?=E5=85=B6=E4=BB=96=E6=A8=A1=E5=9D=97=E7=BB=9F=E4=B8=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/org/dromara/common/oss/core/OssClient.java | 2 +- .../dromara/common/oss/{enumd => enums}/AccessPolicyType.java | 2 +- .../java/org/dromara/system/service/impl/SysOssServiceImpl.java | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) rename ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/{enumd => enums}/AccessPolicyType.java (96%) diff --git a/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java b/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java index 7ac044c8e..de5119e91 100644 --- a/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java +++ b/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java @@ -8,7 +8,7 @@ import org.dromara.common.core.utils.StringUtils; import org.dromara.common.core.utils.file.FileUtils; import org.dromara.common.oss.constant.OssConstant; import org.dromara.common.oss.entity.UploadResult; -import org.dromara.common.oss.enumd.AccessPolicyType; +import org.dromara.common.oss.enums.AccessPolicyType; import org.dromara.common.oss.exception.OssException; import org.dromara.common.oss.properties.OssProperties; import software.amazon.awssdk.auth.credentials.AwsBasicCredentials; diff --git a/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/enumd/AccessPolicyType.java b/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/enums/AccessPolicyType.java similarity index 96% rename from ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/enumd/AccessPolicyType.java rename to ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/enums/AccessPolicyType.java index a257bbae0..45b13beda 100644 --- a/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/enumd/AccessPolicyType.java +++ b/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/enums/AccessPolicyType.java @@ -1,4 +1,4 @@ -package org.dromara.common.oss.enumd; +package org.dromara.common.oss.enums; import lombok.AllArgsConstructor; import lombok.Getter; diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssServiceImpl.java index c2eb08c79..1f2bf80db 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssServiceImpl.java @@ -21,7 +21,7 @@ import org.dromara.common.mybatis.core.page.PageQuery; import org.dromara.common.mybatis.core.page.TableDataInfo; import org.dromara.common.oss.core.OssClient; import org.dromara.common.oss.entity.UploadResult; -import org.dromara.common.oss.enumd.AccessPolicyType; +import org.dromara.common.oss.enums.AccessPolicyType; import org.dromara.common.oss.factory.OssFactory; import org.dromara.system.domain.SysOss; import org.dromara.system.domain.bo.SysOssBo; -- Gitee From 97c36674e45d60ca1a9c2ff27724129b1c870856 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Tue, 18 Mar 2025 13:44:35 +0800 Subject: [PATCH 482/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E6=89=93?= =?UTF-8?q?=E5=8C=85=E9=BB=98=E8=AE=A4=E8=B7=B3=E8=BF=87=E6=B5=8B=E8=AF=95?= =?UTF-8?q?=20=E5=87=8F=E5=B0=91=E5=BF=83=E6=99=BA=E9=9A=BE=E5=BA=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pom.xml b/pom.xml index 21d163bae..9d2ec8d1a 100644 --- a/pom.xml +++ b/pom.xml @@ -57,6 +57,8 @@ 3.11.0 3.1.2 1.3.0 + + true -- Gitee From be5d69d5a50069adb91d103a453147db7a41093e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Tue, 18 Mar 2025 17:18:50 +0800 Subject: [PATCH 483/540] update snailjob 1.3.0 => 1.4.0-beta2 --- pom.xml | 2 +- .../src/main/resources/application-dev.yml | 11 - .../src/main/resources/application-prod.yml | 11 - script/sql/oracle/oracle_ry_job.sql | 275 ++++++------- script/sql/postgres/postgres_ry_job.sql | 258 ++++++------ script/sql/ry_job.sql | 125 +++--- script/sql/sqlserver/sqlserver_ry_job.sql | 369 +++++++++--------- 7 files changed, 526 insertions(+), 525 deletions(-) diff --git a/pom.xml b/pom.xml index 9d2ec8d1a..e887efd5c 100644 --- a/pom.xml +++ b/pom.xml @@ -31,7 +31,7 @@ 3.44.0 2.2.7 4.3.1 - 1.3.0 + 1.4.0-beta2 1.4.6 0.2.0 1.18.36 diff --git a/ruoyi-extend/ruoyi-snailjob-server/src/main/resources/application-dev.yml b/ruoyi-extend/ruoyi-snailjob-server/src/main/resources/application-dev.yml index 32a2cc4e3..caf5dba55 100644 --- a/ruoyi-extend/ruoyi-snailjob-server/src/main/resources/application-dev.yml +++ b/ruoyi-extend/ruoyi-snailjob-server/src/main/resources/application-dev.yml @@ -22,21 +22,10 @@ snail-job: job-pull-page-size: 1000 # 服务器端口 server-port: 17888 - # 一个客户端每秒最多接收的重试数量指令 - limiter: 1000 # 号段模式下步长配置 step: 100 # 日志保存时间(单位: day) log-storage: 90 - # 回调配置 - callback: - #回调最大执行次数 - max-count: 288 - #间隔时间 - trigger-interval: 900 - # 重试每次拉取的次数 - retry-max-pull-count: 10 - # RPC通讯类型: netty,grpc rpc-type: grpc --- # 监控中心配置 diff --git a/ruoyi-extend/ruoyi-snailjob-server/src/main/resources/application-prod.yml b/ruoyi-extend/ruoyi-snailjob-server/src/main/resources/application-prod.yml index 32a2cc4e3..caf5dba55 100644 --- a/ruoyi-extend/ruoyi-snailjob-server/src/main/resources/application-prod.yml +++ b/ruoyi-extend/ruoyi-snailjob-server/src/main/resources/application-prod.yml @@ -22,21 +22,10 @@ snail-job: job-pull-page-size: 1000 # 服务器端口 server-port: 17888 - # 一个客户端每秒最多接收的重试数量指令 - limiter: 1000 # 号段模式下步长配置 step: 100 # 日志保存时间(单位: day) log-storage: 90 - # 回调配置 - callback: - #回调最大执行次数 - max-count: 288 - #间隔时间 - trigger-interval: 900 - # 重试每次拉取的次数 - retry-max-pull-count: 10 - # RPC通讯类型: netty,grpc rpc-type: grpc --- # 监控中心配置 diff --git a/script/sql/oracle/oracle_ry_job.sql b/script/sql/oracle/oracle_ry_job.sql index c2dbbfa52..104aabbaa 100644 --- a/script/sql/oracle/oracle_ry_job.sql +++ b/script/sql/oracle/oracle_ry_job.sql @@ -1,8 +1,9 @@ + /* SnailJob Database Transfer Tool Source Server Type : MySQL Target Server Type : Oracle - Date: 2024-12-27 22:22:15 + Date: 2025-02-25 22:16:28 */ @@ -48,7 +49,6 @@ CREATE TABLE sj_group_config group_partition number NOT NULL, id_generator_mode smallint DEFAULT 1 NOT NULL, init_scene smallint DEFAULT 0 NOT NULL, - bucket_index number DEFAULT 0 NOT NULL, create_dt date DEFAULT CURRENT_TIMESTAMP NOT NULL, update_dt date DEFAULT CURRENT_TIMESTAMP NOT NULL ); @@ -68,13 +68,12 @@ COMMENT ON COLUMN sj_group_config.version IS '版本号'; COMMENT ON COLUMN sj_group_config.group_partition IS '分区'; COMMENT ON COLUMN sj_group_config.id_generator_mode IS '唯一id生成模式 默认号段模式'; COMMENT ON COLUMN sj_group_config.init_scene IS '是否初始化场景 0:否 1:是'; -COMMENT ON COLUMN sj_group_config.bucket_index IS 'bucket'; COMMENT ON COLUMN sj_group_config.create_dt IS '创建时间'; COMMENT ON COLUMN sj_group_config.update_dt IS '修改时间'; COMMENT ON TABLE sj_group_config IS '组配置'; -INSERT INTO sj_group_config (namespace_id, group_name, description, token, group_status, version, group_partition, id_generator_mode, init_scene, bucket_index, create_dt, update_dt) VALUES ('dev', 'ruoyi_group', '', 'SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT', 1, 1, 0, 1, 1, 4, sysdate, sysdate); -INSERT INTO sj_group_config (namespace_id, group_name, description, token, group_status, version, group_partition, id_generator_mode, init_scene, bucket_index, create_dt, update_dt) VALUES ('prod', 'ruoyi_group', '', 'SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT', 1, 1, 0, 1, 1, 4, sysdate, sysdate); +INSERT INTO sj_group_config (namespace_id, group_name, description, token, group_status, version, group_partition, id_generator_mode, init_scene, create_dt, update_dt) VALUES ('dev', 'ruoyi_group', '', 'SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT', 1, 1, 0, 1, 1, sysdate, sysdate); +INSERT INTO sj_group_config (namespace_id, group_name, description, token, group_status, version, group_partition, id_generator_mode, init_scene, create_dt, update_dt) VALUES ('prod', 'ruoyi_group', '', 'SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT', 1, 1, 0, 1, 1, sysdate, sysdate); -- sj_notify_config CREATE TABLE sj_notify_config @@ -144,12 +143,11 @@ COMMENT ON COLUMN sj_notify_recipient.create_dt IS '创建时间'; COMMENT ON COLUMN sj_notify_recipient.update_dt IS '修改时间'; COMMENT ON TABLE sj_notify_recipient IS '告警通知接收人'; --- sj_retry_dead_letter_0 -CREATE TABLE sj_retry_dead_letter_0 +-- sj_retry_dead_letter +CREATE TABLE sj_retry_dead_letter ( id number GENERATED ALWAYS AS IDENTITY, namespace_id varchar2(64) DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' NULL, - unique_id varchar2(64) NULL, group_name varchar2(64) NULL, scene_name varchar2(64) NULL, idempotent_id varchar2(64) NULL, @@ -157,40 +155,34 @@ CREATE TABLE sj_retry_dead_letter_0 executor_name varchar2(512) DEFAULT '' NULL, args_str clob NULL, ext_attrs clob NULL, - task_type smallint DEFAULT 1 NOT NULL, create_dt date DEFAULT CURRENT_TIMESTAMP NOT NULL ); -ALTER TABLE sj_retry_dead_letter_0 - ADD CONSTRAINT pk_sj_retry_dead_letter_0 PRIMARY KEY (id); - -CREATE UNIQUE INDEX uk_sj_retry_dead_letter_0_01 ON sj_retry_dead_letter_0 (namespace_id, group_name, unique_id); - -CREATE INDEX idx_sj_retry_dead_letter_0_01 ON sj_retry_dead_letter_0 (namespace_id, group_name, scene_name); -CREATE INDEX idx_sj_retry_dead_letter_0_02 ON sj_retry_dead_letter_0 (idempotent_id); -CREATE INDEX idx_sj_retry_dead_letter_0_03 ON sj_retry_dead_letter_0 (biz_no); -CREATE INDEX idx_sj_retry_dead_letter_0_04 ON sj_retry_dead_letter_0 (create_dt); - -COMMENT ON COLUMN sj_retry_dead_letter_0.id IS '主键'; -COMMENT ON COLUMN sj_retry_dead_letter_0.namespace_id IS '命名空间id'; -COMMENT ON COLUMN sj_retry_dead_letter_0.unique_id IS '同组下id唯一'; -COMMENT ON COLUMN sj_retry_dead_letter_0.group_name IS '组名称'; -COMMENT ON COLUMN sj_retry_dead_letter_0.scene_name IS '场景名称'; -COMMENT ON COLUMN sj_retry_dead_letter_0.idempotent_id IS '幂等id'; -COMMENT ON COLUMN sj_retry_dead_letter_0.biz_no IS '业务编号'; -COMMENT ON COLUMN sj_retry_dead_letter_0.executor_name IS '执行器名称'; -COMMENT ON COLUMN sj_retry_dead_letter_0.args_str IS '执行方法参数'; -COMMENT ON COLUMN sj_retry_dead_letter_0.ext_attrs IS '扩展字段'; -COMMENT ON COLUMN sj_retry_dead_letter_0.task_type IS '任务类型 1、重试数据 2、回调数据'; -COMMENT ON COLUMN sj_retry_dead_letter_0.create_dt IS '创建时间'; -COMMENT ON TABLE sj_retry_dead_letter_0 IS '死信队列表'; - --- sj_retry_task_0 -CREATE TABLE sj_retry_task_0 +ALTER TABLE sj_retry_dead_letter + ADD CONSTRAINT pk_sj_retry_dead_letter PRIMARY KEY (id); + +CREATE INDEX idx_sj_retry_dead_letter_01 ON sj_retry_dead_letter (namespace_id, group_name, scene_name); +CREATE INDEX idx_sj_retry_dead_letter_02 ON sj_retry_dead_letter (idempotent_id); +CREATE INDEX idx_sj_retry_dead_letter_03 ON sj_retry_dead_letter (biz_no); +CREATE INDEX idx_sj_retry_dead_letter_04 ON sj_retry_dead_letter (create_dt); + +COMMENT ON COLUMN sj_retry_dead_letter.id IS '主键'; +COMMENT ON COLUMN sj_retry_dead_letter.namespace_id IS '命名空间id'; +COMMENT ON COLUMN sj_retry_dead_letter.group_name IS '组名称'; +COMMENT ON COLUMN sj_retry_dead_letter.scene_name IS '场景名称'; +COMMENT ON COLUMN sj_retry_dead_letter.idempotent_id IS '幂等id'; +COMMENT ON COLUMN sj_retry_dead_letter.biz_no IS '业务编号'; +COMMENT ON COLUMN sj_retry_dead_letter.executor_name IS '执行器名称'; +COMMENT ON COLUMN sj_retry_dead_letter.args_str IS '执行方法参数'; +COMMENT ON COLUMN sj_retry_dead_letter.ext_attrs IS '扩展字段'; +COMMENT ON COLUMN sj_retry_dead_letter.create_dt IS '创建时间'; +COMMENT ON TABLE sj_retry_dead_letter IS '死信队列表'; + +-- sj_retry +CREATE TABLE sj_retry ( id number GENERATED ALWAYS AS IDENTITY, namespace_id varchar2(64) DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' NULL, - unique_id varchar2(64) NULL, group_name varchar2(64) NULL, scene_name varchar2(64) NULL, idempotent_id varchar2(64) NULL, @@ -198,112 +190,113 @@ CREATE TABLE sj_retry_task_0 executor_name varchar2(512) DEFAULT '' NULL, args_str clob NULL, ext_attrs clob NULL, - next_trigger_at date NOT NULL, + next_trigger_at number NOT NULL, retry_count number DEFAULT 0 NOT NULL, retry_status smallint DEFAULT 0 NOT NULL, task_type smallint DEFAULT 1 NOT NULL, + bucket_index number DEFAULT 0 NOT NULL, + parent_id number DEFAULT 0 NOT NULL, + deleted number DEFAULT 0 NOT NULL, create_dt date DEFAULT CURRENT_TIMESTAMP NOT NULL, update_dt date DEFAULT CURRENT_TIMESTAMP NOT NULL ); -ALTER TABLE sj_retry_task_0 - ADD CONSTRAINT pk_sj_retry_task_0 PRIMARY KEY (id); - -CREATE UNIQUE INDEX uk_sj_retry_task_0_01 ON sj_retry_task_0 (namespace_id, group_name, unique_id); - -CREATE INDEX idx_sj_retry_task_0_01 ON sj_retry_task_0 (namespace_id, group_name, scene_name); -CREATE INDEX idx_sj_retry_task_0_02 ON sj_retry_task_0 (namespace_id, group_name, task_type); -CREATE INDEX idx_sj_retry_task_0_03 ON sj_retry_task_0 (namespace_id, group_name, retry_status); -CREATE INDEX idx_sj_retry_task_0_04 ON sj_retry_task_0 (idempotent_id); -CREATE INDEX idx_sj_retry_task_0_05 ON sj_retry_task_0 (biz_no); -CREATE INDEX idx_sj_retry_task_0_06 ON sj_retry_task_0 (create_dt); - -COMMENT ON COLUMN sj_retry_task_0.id IS '主键'; -COMMENT ON COLUMN sj_retry_task_0.namespace_id IS '命名空间id'; -COMMENT ON COLUMN sj_retry_task_0.unique_id IS '同组下id唯一'; -COMMENT ON COLUMN sj_retry_task_0.group_name IS '组名称'; -COMMENT ON COLUMN sj_retry_task_0.scene_name IS '场景名称'; -COMMENT ON COLUMN sj_retry_task_0.idempotent_id IS '幂等id'; -COMMENT ON COLUMN sj_retry_task_0.biz_no IS '业务编号'; -COMMENT ON COLUMN sj_retry_task_0.executor_name IS '执行器名称'; -COMMENT ON COLUMN sj_retry_task_0.args_str IS '执行方法参数'; -COMMENT ON COLUMN sj_retry_task_0.ext_attrs IS '扩展字段'; -COMMENT ON COLUMN sj_retry_task_0.next_trigger_at IS '下次触发时间'; -COMMENT ON COLUMN sj_retry_task_0.retry_count IS '重试次数'; -COMMENT ON COLUMN sj_retry_task_0.retry_status IS '重试状态 0、重试中 1、成功 2、最大重试次数'; -COMMENT ON COLUMN sj_retry_task_0.task_type IS '任务类型 1、重试数据 2、回调数据'; -COMMENT ON COLUMN sj_retry_task_0.create_dt IS '创建时间'; -COMMENT ON COLUMN sj_retry_task_0.update_dt IS '修改时间'; -COMMENT ON TABLE sj_retry_task_0 IS '任务表'; - --- sj_retry_task_log -CREATE TABLE sj_retry_task_log +ALTER TABLE sj_retry + ADD CONSTRAINT pk_sj_retry PRIMARY KEY (id); + +CREATE UNIQUE INDEX uk_sj_retry_01 ON sj_retry (namespace_id, group_name, task_type, idempotent_id, deleted); + +CREATE INDEX idx_sj_retry_01 ON sj_retry (namespace_id, group_name, scene_name); +CREATE INDEX idx_sj_retry_02 ON sj_retry (namespace_id, group_name, retry_status); +CREATE INDEX idx_sj_retry_03 ON sj_retry (idempotent_id); +CREATE INDEX idx_sj_retry_04 ON sj_retry (biz_no); +CREATE INDEX idx_sj_retry_05 ON sj_retry (parent_id); +CREATE INDEX idx_sj_retry_06 ON sj_retry (create_dt); + +COMMENT ON COLUMN sj_retry.id IS '主键'; +COMMENT ON COLUMN sj_retry.namespace_id IS '命名空间id'; +COMMENT ON COLUMN sj_retry.group_name IS '组名称'; +COMMENT ON COLUMN sj_retry.scene_name IS '场景名称'; +COMMENT ON COLUMN sj_retry.idempotent_id IS '幂等id'; +COMMENT ON COLUMN sj_retry.biz_no IS '业务编号'; +COMMENT ON COLUMN sj_retry.executor_name IS '执行器名称'; +COMMENT ON COLUMN sj_retry.args_str IS '执行方法参数'; +COMMENT ON COLUMN sj_retry.ext_attrs IS '扩展字段'; +COMMENT ON COLUMN sj_retry.next_trigger_at IS '下次触发时间'; +COMMENT ON COLUMN sj_retry.retry_count IS '重试次数'; +COMMENT ON COLUMN sj_retry.retry_status IS '重试状态 0、重试中 1、成功 2、最大重试次数'; +COMMENT ON COLUMN sj_retry.task_type IS '任务类型 1、重试数据 2、回调数据'; +COMMENT ON COLUMN sj_retry.bucket_index IS 'bucket'; +COMMENT ON COLUMN sj_retry.parent_id IS '父节点id'; +COMMENT ON COLUMN sj_retry.deleted IS '逻辑删除'; +COMMENT ON COLUMN sj_retry.create_dt IS '创建时间'; +COMMENT ON COLUMN sj_retry.update_dt IS '修改时间'; +COMMENT ON TABLE sj_retry IS '重试信息表'; + +-- sj_retry_task +CREATE TABLE sj_retry_task ( - id number GENERATED ALWAYS AS IDENTITY, - namespace_id varchar2(64) DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' NULL, - unique_id varchar2(64) NULL, - group_name varchar2(64) NULL, - scene_name varchar2(64) NULL, - idempotent_id varchar2(64) NULL, - biz_no varchar2(64) DEFAULT '' NULL, - executor_name varchar2(512) DEFAULT '' NULL, - args_str clob NULL, - ext_attrs clob NULL, - retry_status smallint DEFAULT 0 NOT NULL, - task_type smallint DEFAULT 1 NOT NULL, - create_dt date DEFAULT CURRENT_TIMESTAMP NOT NULL, - update_dt date DEFAULT CURRENT_TIMESTAMP NOT NULL + id number GENERATED ALWAYS AS IDENTITY, + namespace_id varchar2(64) DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' NULL, + group_name varchar2(64) NULL, + scene_name varchar2(64) NULL, + retry_id number NOT NULL, + ext_attrs clob NULL, + task_status smallint DEFAULT 1 NOT NULL, + task_type smallint DEFAULT 1 NOT NULL, + operation_reason smallint DEFAULT 0 NOT NULL, + client_info varchar2(128) DEFAULT NULL NULL, + create_dt date DEFAULT CURRENT_TIMESTAMP NOT NULL, + update_dt date DEFAULT CURRENT_TIMESTAMP NOT NULL ); -ALTER TABLE sj_retry_task_log - ADD CONSTRAINT pk_sj_retry_task_log PRIMARY KEY (id); - -CREATE INDEX idx_sj_retry_task_log_01 ON sj_retry_task_log (namespace_id, group_name, scene_name); -CREATE INDEX idx_sj_retry_task_log_02 ON sj_retry_task_log (retry_status); -CREATE INDEX idx_sj_retry_task_log_03 ON sj_retry_task_log (idempotent_id); -CREATE INDEX idx_sj_retry_task_log_04 ON sj_retry_task_log (unique_id); -CREATE INDEX idx_sj_retry_task_log_05 ON sj_retry_task_log (biz_no); -CREATE INDEX idx_sj_retry_task_log_06 ON sj_retry_task_log (create_dt); - -COMMENT ON COLUMN sj_retry_task_log.id IS '主键'; -COMMENT ON COLUMN sj_retry_task_log.namespace_id IS '命名空间id'; -COMMENT ON COLUMN sj_retry_task_log.unique_id IS '同组下id唯一'; -COMMENT ON COLUMN sj_retry_task_log.group_name IS '组名称'; -COMMENT ON COLUMN sj_retry_task_log.scene_name IS '场景名称'; -COMMENT ON COLUMN sj_retry_task_log.idempotent_id IS '幂等id'; -COMMENT ON COLUMN sj_retry_task_log.biz_no IS '业务编号'; -COMMENT ON COLUMN sj_retry_task_log.executor_name IS '执行器名称'; -COMMENT ON COLUMN sj_retry_task_log.args_str IS '执行方法参数'; -COMMENT ON COLUMN sj_retry_task_log.ext_attrs IS '扩展字段'; -COMMENT ON COLUMN sj_retry_task_log.retry_status IS '重试状态 0、重试中 1、成功 2、最大次数'; -COMMENT ON COLUMN sj_retry_task_log.task_type IS '任务类型 1、重试数据 2、回调数据'; -COMMENT ON COLUMN sj_retry_task_log.create_dt IS '创建时间'; -COMMENT ON COLUMN sj_retry_task_log.update_dt IS '修改时间'; -COMMENT ON TABLE sj_retry_task_log IS '任务日志基础信息表'; +ALTER TABLE sj_retry_task + ADD CONSTRAINT pk_sj_retry_task PRIMARY KEY (id); + +CREATE INDEX idx_sj_retry_task_01 ON sj_retry_task (namespace_id, group_name, scene_name); +CREATE INDEX idx_sj_retry_task_02 ON sj_retry_task (task_status); +CREATE INDEX idx_sj_retry_task_03 ON sj_retry_task (create_dt); +CREATE INDEX idx_sj_retry_task_04 ON sj_retry_task (retry_id); + +COMMENT ON COLUMN sj_retry_task.id IS '主键'; +COMMENT ON COLUMN sj_retry_task.namespace_id IS '命名空间id'; +COMMENT ON COLUMN sj_retry_task.group_name IS '组名称'; +COMMENT ON COLUMN sj_retry_task.scene_name IS '场景名称'; +COMMENT ON COLUMN sj_retry_task.retry_id IS '重试信息Id'; +COMMENT ON COLUMN sj_retry_task.ext_attrs IS '扩展字段'; +COMMENT ON COLUMN sj_retry_task.task_status IS '重试状态'; +COMMENT ON COLUMN sj_retry_task.task_type IS '任务类型 1、重试数据 2、回调数据'; +COMMENT ON COLUMN sj_retry_task.operation_reason IS '操作原因'; +COMMENT ON COLUMN sj_retry_task.client_info IS '客户端地址 clientId#ip:port'; +COMMENT ON COLUMN sj_retry_task.create_dt IS '创建时间'; +COMMENT ON COLUMN sj_retry_task.update_dt IS '修改时间'; +COMMENT ON TABLE sj_retry_task IS '重试任务表'; -- sj_retry_task_log_message CREATE TABLE sj_retry_task_log_message ( - id number GENERATED ALWAYS AS IDENTITY, - namespace_id varchar2(64) DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' NULL, - group_name varchar2(64) NULL, - unique_id varchar2(64) NULL, - message clob NULL, - log_num number DEFAULT 1 NOT NULL, - real_time number DEFAULT 0 NOT NULL, - create_dt date DEFAULT CURRENT_TIMESTAMP NOT NULL + id number GENERATED ALWAYS AS IDENTITY, + namespace_id varchar2(64) DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' NULL, + group_name varchar2(64) NULL, + retry_id number NOT NULL, + retry_task_id number NOT NULL, + message clob NULL, + log_num number DEFAULT 1 NOT NULL, + real_time number DEFAULT 0 NOT NULL, + create_dt date DEFAULT CURRENT_TIMESTAMP NOT NULL ); ALTER TABLE sj_retry_task_log_message ADD CONSTRAINT pk_sj_retry_task_log_message PRIMARY KEY (id); -CREATE INDEX idx_sj_rt_log_message_01 ON sj_retry_task_log_message (namespace_id, group_name, unique_id); +CREATE INDEX idx_sj_rt_log_message_01 ON sj_retry_task_log_message (namespace_id, group_name, retry_task_id); CREATE INDEX idx_sj_rt_log_message_02 ON sj_retry_task_log_message (create_dt); COMMENT ON COLUMN sj_retry_task_log_message.id IS '主键'; COMMENT ON COLUMN sj_retry_task_log_message.namespace_id IS '命名空间id'; COMMENT ON COLUMN sj_retry_task_log_message.group_name IS '组名称'; -COMMENT ON COLUMN sj_retry_task_log_message.unique_id IS '同组下id唯一'; +COMMENT ON COLUMN sj_retry_task_log_message.retry_id IS '重试信息Id'; +COMMENT ON COLUMN sj_retry_task_log_message.retry_task_id IS '重试任务Id'; COMMENT ON COLUMN sj_retry_task_log_message.message IS '异常信息'; COMMENT ON COLUMN sj_retry_task_log_message.log_num IS '日志数量'; COMMENT ON COLUMN sj_retry_task_log_message.real_time IS '上报时间'; @@ -313,21 +306,26 @@ COMMENT ON TABLE sj_retry_task_log_message IS '任务调度日志信息记录表 -- sj_retry_scene_config CREATE TABLE sj_retry_scene_config ( - id number GENERATED ALWAYS AS IDENTITY, - namespace_id varchar2(64) DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' NULL, - scene_name varchar2(64) NULL, - group_name varchar2(64) NULL, - scene_status smallint DEFAULT 0 NOT NULL, - max_retry_count number DEFAULT 5 NOT NULL, - back_off smallint DEFAULT 1 NOT NULL, - trigger_interval varchar2(16) DEFAULT '' NULL, - notify_ids varchar2(128) DEFAULT '' NULL, - deadline_request number DEFAULT 60000 NOT NULL, - executor_timeout number DEFAULT 5 NOT NULL, - route_key smallint DEFAULT 4 NOT NULL, - description varchar2(256) DEFAULT '' NULL, - create_dt date DEFAULT CURRENT_TIMESTAMP NOT NULL, - update_dt date DEFAULT CURRENT_TIMESTAMP NOT NULL + id number GENERATED ALWAYS AS IDENTITY, + namespace_id varchar2(64) DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' NULL, + scene_name varchar2(64) NULL, + group_name varchar2(64) NULL, + scene_status smallint DEFAULT 0 NOT NULL, + max_retry_count number DEFAULT 5 NOT NULL, + back_off smallint DEFAULT 1 NOT NULL, + trigger_interval varchar2(16) DEFAULT '' NULL, + notify_ids varchar2(128) DEFAULT '' NULL, + deadline_request number DEFAULT 60000 NOT NULL, + executor_timeout number DEFAULT 5 NOT NULL, + route_key smallint DEFAULT 4 NOT NULL, + block_strategy smallint DEFAULT 1 NOT NULL, + cb_status smallint DEFAULT 0 NOT NULL, + cb_trigger_type smallint DEFAULT 1 NOT NULL, + cb_max_count number DEFAULT 16 NOT NULL, + cb_trigger_interval varchar2(16) DEFAULT '' NULL, + description varchar2(256) DEFAULT '' NULL, + create_dt date DEFAULT CURRENT_TIMESTAMP NOT NULL, + update_dt date DEFAULT CURRENT_TIMESTAMP NOT NULL ); ALTER TABLE sj_retry_scene_config @@ -347,6 +345,11 @@ COMMENT ON COLUMN sj_retry_scene_config.notify_ids IS '通知告警场景配置i COMMENT ON COLUMN sj_retry_scene_config.deadline_request IS 'Deadline Request 调用链超时 单位毫秒'; COMMENT ON COLUMN sj_retry_scene_config.executor_timeout IS '任务执行超时时间,单位秒'; COMMENT ON COLUMN sj_retry_scene_config.route_key IS '路由策略'; +COMMENT ON COLUMN sj_retry_scene_config.block_strategy IS '阻塞策略 1、丢弃 2、覆盖 3、并行'; +COMMENT ON COLUMN sj_retry_scene_config.cb_status IS '回调状态 0、不开启 1、开启'; +COMMENT ON COLUMN sj_retry_scene_config.cb_trigger_type IS '1、默认等级 2、固定间隔时间 3、CRON 表达式'; +COMMENT ON COLUMN sj_retry_scene_config.cb_max_count IS '回调的最大执行次数'; +COMMENT ON COLUMN sj_retry_scene_config.cb_trigger_interval IS '回调的最大执行次数'; COMMENT ON COLUMN sj_retry_scene_config.description IS '描述'; COMMENT ON COLUMN sj_retry_scene_config.create_dt IS '创建时间'; COMMENT ON COLUMN sj_retry_scene_config.update_dt IS '修改时间'; @@ -538,11 +541,11 @@ COMMENT ON COLUMN sj_job.executor_type IS '执行器类型'; COMMENT ON COLUMN sj_job.executor_info IS '执行器名称'; COMMENT ON COLUMN sj_job.trigger_type IS '触发类型 1.CRON 表达式 2. 固定时间'; COMMENT ON COLUMN sj_job.trigger_interval IS '间隔时长'; -COMMENT ON COLUMN sj_job.block_strategy IS '阻塞策略 1、丢弃 2、覆盖 3、并行'; +COMMENT ON COLUMN sj_job.block_strategy IS '阻塞策略 1、丢弃 2、覆盖 3、并行 4、恢复'; COMMENT ON COLUMN sj_job.executor_timeout IS '任务执行超时时间,单位秒'; COMMENT ON COLUMN sj_job.max_retry_times IS '最大重试次数'; COMMENT ON COLUMN sj_job.parallel_num IS '并行数'; -COMMENT ON COLUMN sj_job.retry_interval IS '重试间隔 ( s ) '; +COMMENT ON COLUMN sj_job.retry_interval IS '重试间隔 ( s)'; COMMENT ON COLUMN sj_job.bucket_index IS 'bucket'; COMMENT ON COLUMN sj_job.resident IS '是否是常驻任务'; COMMENT ON COLUMN sj_job.notify_ids IS '通知告警场景配置id列表'; @@ -721,7 +724,7 @@ CREATE INDEX idx_sj_job_summary_01 ON sj_job_summary (namespace_id, group_name, COMMENT ON COLUMN sj_job_summary.id IS '主键'; COMMENT ON COLUMN sj_job_summary.namespace_id IS '命名空间id'; COMMENT ON COLUMN sj_job_summary.group_name IS '组名称'; -COMMENT ON COLUMN sj_job_summary.business_id IS '业务id ( job_id或workflow_id ) '; +COMMENT ON COLUMN sj_job_summary.business_id IS '业务id ( job_id或workflow_id)'; COMMENT ON COLUMN sj_job_summary.system_task_type IS '任务类型 3、JOB任务 4、WORKFLOW任务'; COMMENT ON COLUMN sj_job_summary.trigger_at IS '统计时间'; COMMENT ON COLUMN sj_job_summary.success_num IS '执行成功-日志数量'; diff --git a/script/sql/postgres/postgres_ry_job.sql b/script/sql/postgres/postgres_ry_job.sql index 1a08a9990..8b682dfe5 100644 --- a/script/sql/postgres/postgres_ry_job.sql +++ b/script/sql/postgres/postgres_ry_job.sql @@ -2,7 +2,7 @@ SnailJob Database Transfer Tool Source Server Type : MySQL Target Server Type : PostgreSQL - Date: 2024-12-27 22:13:49 + Date: 2025-02-25 22:15:32 */ @@ -45,7 +45,6 @@ CREATE TABLE sj_group_config group_partition int NOT NULL, id_generator_mode smallint NOT NULL DEFAULT 1, init_scene smallint NOT NULL DEFAULT 0, - bucket_index int NOT NULL DEFAULT 0, create_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, update_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ); @@ -62,13 +61,12 @@ COMMENT ON COLUMN sj_group_config.version IS '版本号'; COMMENT ON COLUMN sj_group_config.group_partition IS '分区'; COMMENT ON COLUMN sj_group_config.id_generator_mode IS '唯一id生成模式 默认号段模式'; COMMENT ON COLUMN sj_group_config.init_scene IS '是否初始化场景 0:否 1:是'; -COMMENT ON COLUMN sj_group_config.bucket_index IS 'bucket'; COMMENT ON COLUMN sj_group_config.create_dt IS '创建时间'; COMMENT ON COLUMN sj_group_config.update_dt IS '修改时间'; COMMENT ON TABLE sj_group_config IS '组配置'; -INSERT INTO sj_group_config VALUES (1, 'dev', 'ruoyi_group', '', 'SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT', 1, 1, 0, 1, 1, 4, now(), now()); -INSERT INTO sj_group_config VALUES (2, 'prod', 'ruoyi_group', '', 'SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT', 1, 1, 0, 1, 1, 4, now(), now()); +INSERT INTO sj_group_config VALUES (1, 'dev', 'ruoyi_group', '', 'SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT', 1, 1, 0, 1, 1, now(), now()); +INSERT INTO sj_group_config VALUES (2, 'prod', 'ruoyi_group', '', 'SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT', 1, 1, 0, 1, 1, now(), now()); -- sj_notify_config CREATE TABLE sj_notify_config @@ -132,12 +130,11 @@ COMMENT ON COLUMN sj_notify_recipient.create_dt IS '创建时间'; COMMENT ON COLUMN sj_notify_recipient.update_dt IS '修改时间'; COMMENT ON TABLE sj_notify_recipient IS '告警通知接收人'; --- sj_retry_dead_letter_0 -CREATE TABLE sj_retry_dead_letter_0 +-- sj_retry_dead_letter +CREATE TABLE sj_retry_dead_letter ( id bigserial PRIMARY KEY, namespace_id varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a', - unique_id varchar(64) NOT NULL, group_name varchar(64) NOT NULL, scene_name varchar(64) NOT NULL, idempotent_id varchar(64) NOT NULL, @@ -145,37 +142,31 @@ CREATE TABLE sj_retry_dead_letter_0 executor_name varchar(512) NOT NULL DEFAULT '', args_str text NOT NULL, ext_attrs text NOT NULL, - task_type smallint NOT NULL DEFAULT 1, create_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ); -CREATE UNIQUE INDEX uk_sj_retry_dead_letter_0_01 ON sj_retry_dead_letter_0 (namespace_id, group_name, unique_id); - -CREATE INDEX idx_sj_retry_dead_letter_0_01 ON sj_retry_dead_letter_0 (namespace_id, group_name, scene_name); -CREATE INDEX idx_sj_retry_dead_letter_0_02 ON sj_retry_dead_letter_0 (idempotent_id); -CREATE INDEX idx_sj_retry_dead_letter_0_03 ON sj_retry_dead_letter_0 (biz_no); -CREATE INDEX idx_sj_retry_dead_letter_0_04 ON sj_retry_dead_letter_0 (create_dt); - -COMMENT ON COLUMN sj_retry_dead_letter_0.id IS '主键'; -COMMENT ON COLUMN sj_retry_dead_letter_0.namespace_id IS '命名空间id'; -COMMENT ON COLUMN sj_retry_dead_letter_0.unique_id IS '同组下id唯一'; -COMMENT ON COLUMN sj_retry_dead_letter_0.group_name IS '组名称'; -COMMENT ON COLUMN sj_retry_dead_letter_0.scene_name IS '场景名称'; -COMMENT ON COLUMN sj_retry_dead_letter_0.idempotent_id IS '幂等id'; -COMMENT ON COLUMN sj_retry_dead_letter_0.biz_no IS '业务编号'; -COMMENT ON COLUMN sj_retry_dead_letter_0.executor_name IS '执行器名称'; -COMMENT ON COLUMN sj_retry_dead_letter_0.args_str IS '执行方法参数'; -COMMENT ON COLUMN sj_retry_dead_letter_0.ext_attrs IS '扩展字段'; -COMMENT ON COLUMN sj_retry_dead_letter_0.task_type IS '任务类型 1、重试数据 2、回调数据'; -COMMENT ON COLUMN sj_retry_dead_letter_0.create_dt IS '创建时间'; -COMMENT ON TABLE sj_retry_dead_letter_0 IS '死信队列表'; - --- sj_retry_task_0 -CREATE TABLE sj_retry_task_0 +CREATE INDEX idx_sj_retry_dead_letter_01 ON sj_retry_dead_letter (namespace_id, group_name, scene_name); +CREATE INDEX idx_sj_retry_dead_letter_02 ON sj_retry_dead_letter (idempotent_id); +CREATE INDEX idx_sj_retry_dead_letter_03 ON sj_retry_dead_letter (biz_no); +CREATE INDEX idx_sj_retry_dead_letter_04 ON sj_retry_dead_letter (create_dt); + +COMMENT ON COLUMN sj_retry_dead_letter.id IS '主键'; +COMMENT ON COLUMN sj_retry_dead_letter.namespace_id IS '命名空间id'; +COMMENT ON COLUMN sj_retry_dead_letter.group_name IS '组名称'; +COMMENT ON COLUMN sj_retry_dead_letter.scene_name IS '场景名称'; +COMMENT ON COLUMN sj_retry_dead_letter.idempotent_id IS '幂等id'; +COMMENT ON COLUMN sj_retry_dead_letter.biz_no IS '业务编号'; +COMMENT ON COLUMN sj_retry_dead_letter.executor_name IS '执行器名称'; +COMMENT ON COLUMN sj_retry_dead_letter.args_str IS '执行方法参数'; +COMMENT ON COLUMN sj_retry_dead_letter.ext_attrs IS '扩展字段'; +COMMENT ON COLUMN sj_retry_dead_letter.create_dt IS '创建时间'; +COMMENT ON TABLE sj_retry_dead_letter IS '死信队列表'; + +-- sj_retry +CREATE TABLE sj_retry ( id bigserial PRIMARY KEY, namespace_id varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a', - unique_id varchar(64) NOT NULL, group_name varchar(64) NOT NULL, scene_name varchar(64) NOT NULL, idempotent_id varchar(64) NOT NULL, @@ -183,103 +174,104 @@ CREATE TABLE sj_retry_task_0 executor_name varchar(512) NOT NULL DEFAULT '', args_str text NOT NULL, ext_attrs text NOT NULL, - next_trigger_at timestamp NOT NULL, + next_trigger_at bigint NOT NULL, retry_count int NOT NULL DEFAULT 0, retry_status smallint NOT NULL DEFAULT 0, task_type smallint NOT NULL DEFAULT 1, + bucket_index int NOT NULL DEFAULT 0, + parent_id bigint NOT NULL DEFAULT 0, + deleted bigint NOT NULL DEFAULT 0, create_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, update_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ); -CREATE UNIQUE INDEX uk_sj_retry_task_0_01 ON sj_retry_task_0 (namespace_id, group_name, unique_id); - -CREATE INDEX idx_sj_retry_task_0_01 ON sj_retry_task_0 (namespace_id, group_name, scene_name); -CREATE INDEX idx_sj_retry_task_0_02 ON sj_retry_task_0 (namespace_id, group_name, task_type); -CREATE INDEX idx_sj_retry_task_0_03 ON sj_retry_task_0 (namespace_id, group_name, retry_status); -CREATE INDEX idx_sj_retry_task_0_04 ON sj_retry_task_0 (idempotent_id); -CREATE INDEX idx_sj_retry_task_0_05 ON sj_retry_task_0 (biz_no); -CREATE INDEX idx_sj_retry_task_0_06 ON sj_retry_task_0 (create_dt); - -COMMENT ON COLUMN sj_retry_task_0.id IS '主键'; -COMMENT ON COLUMN sj_retry_task_0.namespace_id IS '命名空间id'; -COMMENT ON COLUMN sj_retry_task_0.unique_id IS '同组下id唯一'; -COMMENT ON COLUMN sj_retry_task_0.group_name IS '组名称'; -COMMENT ON COLUMN sj_retry_task_0.scene_name IS '场景名称'; -COMMENT ON COLUMN sj_retry_task_0.idempotent_id IS '幂等id'; -COMMENT ON COLUMN sj_retry_task_0.biz_no IS '业务编号'; -COMMENT ON COLUMN sj_retry_task_0.executor_name IS '执行器名称'; -COMMENT ON COLUMN sj_retry_task_0.args_str IS '执行方法参数'; -COMMENT ON COLUMN sj_retry_task_0.ext_attrs IS '扩展字段'; -COMMENT ON COLUMN sj_retry_task_0.next_trigger_at IS '下次触发时间'; -COMMENT ON COLUMN sj_retry_task_0.retry_count IS '重试次数'; -COMMENT ON COLUMN sj_retry_task_0.retry_status IS '重试状态 0、重试中 1、成功 2、最大重试次数'; -COMMENT ON COLUMN sj_retry_task_0.task_type IS '任务类型 1、重试数据 2、回调数据'; -COMMENT ON COLUMN sj_retry_task_0.create_dt IS '创建时间'; -COMMENT ON COLUMN sj_retry_task_0.update_dt IS '修改时间'; -COMMENT ON TABLE sj_retry_task_0 IS '任务表'; - --- sj_retry_task_log -CREATE TABLE sj_retry_task_log +CREATE UNIQUE INDEX uk_sj_retry_01 ON sj_retry (namespace_id, group_name, task_type, idempotent_id, deleted); + +CREATE INDEX idx_sj_retry_01 ON sj_retry (namespace_id, group_name, scene_name); +CREATE INDEX idx_sj_retry_02 ON sj_retry (namespace_id, group_name, retry_status); +CREATE INDEX idx_sj_retry_03 ON sj_retry (idempotent_id); +CREATE INDEX idx_sj_retry_04 ON sj_retry (biz_no); +CREATE INDEX idx_sj_retry_05 ON sj_retry (parent_id); +CREATE INDEX idx_sj_retry_06 ON sj_retry (create_dt); + +COMMENT ON COLUMN sj_retry.id IS '主键'; +COMMENT ON COLUMN sj_retry.namespace_id IS '命名空间id'; +COMMENT ON COLUMN sj_retry.group_name IS '组名称'; +COMMENT ON COLUMN sj_retry.scene_name IS '场景名称'; +COMMENT ON COLUMN sj_retry.idempotent_id IS '幂等id'; +COMMENT ON COLUMN sj_retry.biz_no IS '业务编号'; +COMMENT ON COLUMN sj_retry.executor_name IS '执行器名称'; +COMMENT ON COLUMN sj_retry.args_str IS '执行方法参数'; +COMMENT ON COLUMN sj_retry.ext_attrs IS '扩展字段'; +COMMENT ON COLUMN sj_retry.next_trigger_at IS '下次触发时间'; +COMMENT ON COLUMN sj_retry.retry_count IS '重试次数'; +COMMENT ON COLUMN sj_retry.retry_status IS '重试状态 0、重试中 1、成功 2、最大重试次数'; +COMMENT ON COLUMN sj_retry.task_type IS '任务类型 1、重试数据 2、回调数据'; +COMMENT ON COLUMN sj_retry.bucket_index IS 'bucket'; +COMMENT ON COLUMN sj_retry.parent_id IS '父节点id'; +COMMENT ON COLUMN sj_retry.deleted IS '逻辑删除'; +COMMENT ON COLUMN sj_retry.create_dt IS '创建时间'; +COMMENT ON COLUMN sj_retry.update_dt IS '修改时间'; +COMMENT ON TABLE sj_retry IS '重试信息表'; + +-- sj_retry_task +CREATE TABLE sj_retry_task ( - id bigserial PRIMARY KEY, - namespace_id varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a', - unique_id varchar(64) NOT NULL, - group_name varchar(64) NOT NULL, - scene_name varchar(64) NOT NULL, - idempotent_id varchar(64) NOT NULL, - biz_no varchar(64) NOT NULL DEFAULT '', - executor_name varchar(512) NOT NULL DEFAULT '', - args_str text NOT NULL, - ext_attrs text NOT NULL, - retry_status smallint NOT NULL DEFAULT 0, - task_type smallint NOT NULL DEFAULT 1, - create_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, - update_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP + id bigserial PRIMARY KEY, + namespace_id varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a', + group_name varchar(64) NOT NULL, + scene_name varchar(64) NOT NULL, + retry_id bigint NOT NULL, + ext_attrs text NOT NULL, + task_status smallint NOT NULL DEFAULT 1, + task_type smallint NOT NULL DEFAULT 1, + operation_reason smallint NOT NULL DEFAULT 0, + client_info varchar(128) NULL DEFAULT NULL, + create_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + update_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ); -CREATE INDEX idx_sj_retry_task_log_01 ON sj_retry_task_log (namespace_id, group_name, scene_name); -CREATE INDEX idx_sj_retry_task_log_02 ON sj_retry_task_log (retry_status); -CREATE INDEX idx_sj_retry_task_log_03 ON sj_retry_task_log (idempotent_id); -CREATE INDEX idx_sj_retry_task_log_04 ON sj_retry_task_log (unique_id); -CREATE INDEX idx_sj_retry_task_log_05 ON sj_retry_task_log (biz_no); -CREATE INDEX idx_sj_retry_task_log_06 ON sj_retry_task_log (create_dt); - -COMMENT ON COLUMN sj_retry_task_log.id IS '主键'; -COMMENT ON COLUMN sj_retry_task_log.namespace_id IS '命名空间id'; -COMMENT ON COLUMN sj_retry_task_log.unique_id IS '同组下id唯一'; -COMMENT ON COLUMN sj_retry_task_log.group_name IS '组名称'; -COMMENT ON COLUMN sj_retry_task_log.scene_name IS '场景名称'; -COMMENT ON COLUMN sj_retry_task_log.idempotent_id IS '幂等id'; -COMMENT ON COLUMN sj_retry_task_log.biz_no IS '业务编号'; -COMMENT ON COLUMN sj_retry_task_log.executor_name IS '执行器名称'; -COMMENT ON COLUMN sj_retry_task_log.args_str IS '执行方法参数'; -COMMENT ON COLUMN sj_retry_task_log.ext_attrs IS '扩展字段'; -COMMENT ON COLUMN sj_retry_task_log.retry_status IS '重试状态 0、重试中 1、成功 2、最大次数'; -COMMENT ON COLUMN sj_retry_task_log.task_type IS '任务类型 1、重试数据 2、回调数据'; -COMMENT ON COLUMN sj_retry_task_log.create_dt IS '创建时间'; -COMMENT ON COLUMN sj_retry_task_log.update_dt IS '修改时间'; -COMMENT ON TABLE sj_retry_task_log IS '任务日志基础信息表'; +CREATE INDEX idx_sj_retry_task_01 ON sj_retry_task (namespace_id, group_name, scene_name); +CREATE INDEX idx_sj_retry_task_02 ON sj_retry_task (task_status); +CREATE INDEX idx_sj_retry_task_03 ON sj_retry_task (create_dt); +CREATE INDEX idx_sj_retry_task_04 ON sj_retry_task (retry_id); + +COMMENT ON COLUMN sj_retry_task.id IS '主键'; +COMMENT ON COLUMN sj_retry_task.namespace_id IS '命名空间id'; +COMMENT ON COLUMN sj_retry_task.group_name IS '组名称'; +COMMENT ON COLUMN sj_retry_task.scene_name IS '场景名称'; +COMMENT ON COLUMN sj_retry_task.retry_id IS '重试信息Id'; +COMMENT ON COLUMN sj_retry_task.ext_attrs IS '扩展字段'; +COMMENT ON COLUMN sj_retry_task.task_status IS '重试状态'; +COMMENT ON COLUMN sj_retry_task.task_type IS '任务类型 1、重试数据 2、回调数据'; +COMMENT ON COLUMN sj_retry_task.operation_reason IS '操作原因'; +COMMENT ON COLUMN sj_retry_task.client_info IS '客户端地址 clientId#ip:port'; +COMMENT ON COLUMN sj_retry_task.create_dt IS '创建时间'; +COMMENT ON COLUMN sj_retry_task.update_dt IS '修改时间'; +COMMENT ON TABLE sj_retry_task IS '重试任务表'; -- sj_retry_task_log_message CREATE TABLE sj_retry_task_log_message ( - id bigserial PRIMARY KEY, - namespace_id varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a', - group_name varchar(64) NOT NULL, - unique_id varchar(64) NOT NULL, - message text NOT NULL, - log_num int NOT NULL DEFAULT 1, - real_time bigint NOT NULL DEFAULT 0, - create_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP + id bigserial PRIMARY KEY, + namespace_id varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a', + group_name varchar(64) NOT NULL, + retry_id bigint NOT NULL, + retry_task_id bigint NOT NULL, + message text NOT NULL, + log_num int NOT NULL DEFAULT 1, + real_time bigint NOT NULL DEFAULT 0, + create_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ); -CREATE INDEX idx_sj_retry_task_log_message_01 ON sj_retry_task_log_message (namespace_id, group_name, unique_id); +CREATE INDEX idx_sj_retry_task_log_message_01 ON sj_retry_task_log_message (namespace_id, group_name, retry_task_id); CREATE INDEX idx_sj_retry_task_log_message_02 ON sj_retry_task_log_message (create_dt); COMMENT ON COLUMN sj_retry_task_log_message.id IS '主键'; COMMENT ON COLUMN sj_retry_task_log_message.namespace_id IS '命名空间id'; COMMENT ON COLUMN sj_retry_task_log_message.group_name IS '组名称'; -COMMENT ON COLUMN sj_retry_task_log_message.unique_id IS '同组下id唯一'; +COMMENT ON COLUMN sj_retry_task_log_message.retry_id IS '重试信息Id'; +COMMENT ON COLUMN sj_retry_task_log_message.retry_task_id IS '重试任务Id'; COMMENT ON COLUMN sj_retry_task_log_message.message IS '异常信息'; COMMENT ON COLUMN sj_retry_task_log_message.log_num IS '日志数量'; COMMENT ON COLUMN sj_retry_task_log_message.real_time IS '上报时间'; @@ -289,21 +281,26 @@ COMMENT ON TABLE sj_retry_task_log_message IS '任务调度日志信息记录表 -- sj_retry_scene_config CREATE TABLE sj_retry_scene_config ( - id bigserial PRIMARY KEY, - namespace_id varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a', - scene_name varchar(64) NOT NULL, - group_name varchar(64) NOT NULL, - scene_status smallint NOT NULL DEFAULT 0, - max_retry_count int NOT NULL DEFAULT 5, - back_off smallint NOT NULL DEFAULT 1, - trigger_interval varchar(16) NOT NULL DEFAULT '', - notify_ids varchar(128) NOT NULL DEFAULT '', - deadline_request bigint NOT NULL DEFAULT 60000, - executor_timeout int NOT NULL DEFAULT 5, - route_key smallint NOT NULL DEFAULT 4, - description varchar(256) NOT NULL DEFAULT '', - create_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, - update_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP + id bigserial PRIMARY KEY, + namespace_id varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a', + scene_name varchar(64) NOT NULL, + group_name varchar(64) NOT NULL, + scene_status smallint NOT NULL DEFAULT 0, + max_retry_count int NOT NULL DEFAULT 5, + back_off smallint NOT NULL DEFAULT 1, + trigger_interval varchar(16) NOT NULL DEFAULT '', + notify_ids varchar(128) NOT NULL DEFAULT '', + deadline_request bigint NOT NULL DEFAULT 60000, + executor_timeout int NOT NULL DEFAULT 5, + route_key smallint NOT NULL DEFAULT 4, + block_strategy smallint NOT NULL DEFAULT 1, + cb_status smallint NOT NULL DEFAULT 0, + cb_trigger_type smallint NOT NULL DEFAULT 1, + cb_max_count int NOT NULL DEFAULT 16, + cb_trigger_interval varchar(16) NOT NULL DEFAULT '', + description varchar(256) NOT NULL DEFAULT '', + create_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + update_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ); CREATE UNIQUE INDEX uk_sj_retry_scene_config_01 ON sj_retry_scene_config (namespace_id, group_name, scene_name); @@ -320,6 +317,11 @@ COMMENT ON COLUMN sj_retry_scene_config.notify_ids IS '通知告警场景配置i COMMENT ON COLUMN sj_retry_scene_config.deadline_request IS 'Deadline Request 调用链超时 单位毫秒'; COMMENT ON COLUMN sj_retry_scene_config.executor_timeout IS '任务执行超时时间,单位秒'; COMMENT ON COLUMN sj_retry_scene_config.route_key IS '路由策略'; +COMMENT ON COLUMN sj_retry_scene_config.block_strategy IS '阻塞策略 1、丢弃 2、覆盖 3、并行'; +COMMENT ON COLUMN sj_retry_scene_config.cb_status IS '回调状态 0、不开启 1、开启'; +COMMENT ON COLUMN sj_retry_scene_config.cb_trigger_type IS '1、默认等级 2、固定间隔时间 3、CRON 表达式'; +COMMENT ON COLUMN sj_retry_scene_config.cb_max_count IS '回调的最大执行次数'; +COMMENT ON COLUMN sj_retry_scene_config.cb_trigger_interval IS '回调的最大执行次数'; COMMENT ON COLUMN sj_retry_scene_config.description IS '描述'; COMMENT ON COLUMN sj_retry_scene_config.create_dt IS '创建时间'; COMMENT ON COLUMN sj_retry_scene_config.update_dt IS '修改时间'; @@ -362,7 +364,7 @@ COMMENT ON TABLE sj_server_node IS '服务器节点'; -- sj_distributed_lock CREATE TABLE sj_distributed_lock ( - name varchar(64) PRIMARY KEY, + name varchar(64) NOT NULL, lock_until timestamp(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3), locked_at timestamp(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3), locked_by varchar(255) NOT NULL, @@ -493,11 +495,11 @@ COMMENT ON COLUMN sj_job.executor_type IS '执行器类型'; COMMENT ON COLUMN sj_job.executor_info IS '执行器名称'; COMMENT ON COLUMN sj_job.trigger_type IS '触发类型 1.CRON 表达式 2. 固定时间'; COMMENT ON COLUMN sj_job.trigger_interval IS '间隔时长'; -COMMENT ON COLUMN sj_job.block_strategy IS '阻塞策略 1、丢弃 2、覆盖 3、并行'; +COMMENT ON COLUMN sj_job.block_strategy IS '阻塞策略 1、丢弃 2、覆盖 3、并行 4、恢复'; COMMENT ON COLUMN sj_job.executor_timeout IS '任务执行超时时间,单位秒'; COMMENT ON COLUMN sj_job.max_retry_times IS '最大重试次数'; COMMENT ON COLUMN sj_job.parallel_num IS '并行数'; -COMMENT ON COLUMN sj_job.retry_interval IS '重试间隔 ( s ) '; +COMMENT ON COLUMN sj_job.retry_interval IS '重试间隔 ( s)'; COMMENT ON COLUMN sj_job.bucket_index IS 'bucket'; COMMENT ON COLUMN sj_job.resident IS '是否是常驻任务'; COMMENT ON COLUMN sj_job.notify_ids IS '通知告警场景配置id列表'; @@ -664,7 +666,7 @@ CREATE INDEX idx_sj_job_summary_01 ON sj_job_summary (namespace_id, group_name, COMMENT ON COLUMN sj_job_summary.id IS '主键'; COMMENT ON COLUMN sj_job_summary.namespace_id IS '命名空间id'; COMMENT ON COLUMN sj_job_summary.group_name IS '组名称'; -COMMENT ON COLUMN sj_job_summary.business_id IS '业务id ( job_id或workflow_id ) '; +COMMENT ON COLUMN sj_job_summary.business_id IS '业务id ( job_id或workflow_id)'; COMMENT ON COLUMN sj_job_summary.system_task_type IS '任务类型 3、JOB任务 4、WORKFLOW任务'; COMMENT ON COLUMN sj_job_summary.trigger_at IS '统计时间'; COMMENT ON COLUMN sj_job_summary.success_num IS '执行成功-日志数量'; diff --git a/script/sql/ry_job.sql b/script/sql/ry_job.sql index c6ec01b45..3577d6614 100644 --- a/script/sql/ry_job.sql +++ b/script/sql/ry_job.sql @@ -30,7 +30,6 @@ CREATE TABLE `sj_group_config` `group_partition` int(11) NOT NULL COMMENT '分区', `id_generator_mode` tinyint(4) NOT NULL DEFAULT 1 COMMENT '唯一id生成模式 默认号段模式', `init_scene` tinyint(4) NOT NULL DEFAULT 0 COMMENT '是否初始化场景 0:否 1:是', - `bucket_index` int(11) NOT NULL DEFAULT 0 COMMENT 'bucket', `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间', PRIMARY KEY (`id`), @@ -39,8 +38,8 @@ CREATE TABLE `sj_group_config` AUTO_INCREMENT = 0 DEFAULT CHARSET = utf8mb4 COMMENT ='组配置'; -INSERT INTO `sj_group_config` VALUES (1, 'dev', 'ruoyi_group', '', 'SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT', 1, 1, 0, 1, 1, 4, now(), now()); -INSERT INTO `sj_group_config` VALUES (2, 'prod', 'ruoyi_group', '', 'SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT', 1, 1, 0, 1, 1, 4, now(), now()); +INSERT INTO `sj_group_config` VALUES (1, 'dev', 'ruoyi_group', '', 'SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT', 1, 1, 0, 1, 1, now(), now()); +INSERT INTO `sj_group_config` VALUES (2, 'prod', 'ruoyi_group', '', 'SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT', 1, 1, 0, 1, 1, now(), now()); CREATE TABLE `sj_notify_config` ( @@ -80,11 +79,10 @@ CREATE TABLE `sj_notify_recipient` AUTO_INCREMENT = 0 DEFAULT CHARSET = utf8mb4 COMMENT ='告警通知接收人'; -CREATE TABLE `sj_retry_dead_letter_0` +CREATE TABLE `sj_retry_dead_letter` ( `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键', `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id', - `unique_id` varchar(64) NOT NULL COMMENT '同组下id唯一', `group_name` varchar(64) NOT NULL COMMENT '组名称', `scene_name` varchar(64) NOT NULL COMMENT '场景名称', `idempotent_id` varchar(64) NOT NULL COMMENT '幂等id', @@ -92,23 +90,20 @@ CREATE TABLE `sj_retry_dead_letter_0` `executor_name` varchar(512) NOT NULL DEFAULT '' COMMENT '执行器名称', `args_str` text NOT NULL COMMENT '执行方法参数', `ext_attrs` text NOT NULL COMMENT '扩展字段', - `task_type` tinyint(4) NOT NULL DEFAULT 1 COMMENT '任务类型 1、重试数据 2、回调数据', `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', PRIMARY KEY (`id`), KEY `idx_namespace_id_group_name_scene_name` (`namespace_id`, `group_name`, `scene_name`), KEY `idx_idempotent_id` (`idempotent_id`), KEY `idx_biz_no` (`biz_no`), - KEY `idx_create_dt` (`create_dt`), - UNIQUE KEY `uk_namespace_id_group_name_unique_id` (`namespace_id`, `group_name`, `unique_id`) + KEY `idx_create_dt` (`create_dt`) ) ENGINE = InnoDB AUTO_INCREMENT = 0 DEFAULT CHARSET = utf8mb4 COMMENT ='死信队列表'; -CREATE TABLE `sj_retry_task_0` +CREATE TABLE `sj_retry` ( `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键', `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id', - `unique_id` varchar(64) NOT NULL COMMENT '同组下id唯一', `group_name` varchar(64) NOT NULL COMMENT '组名称', `scene_name` varchar(64) NOT NULL COMMENT '场景名称', `idempotent_id` varchar(64) NOT NULL COMMENT '幂等id', @@ -116,63 +111,63 @@ CREATE TABLE `sj_retry_task_0` `executor_name` varchar(512) NOT NULL DEFAULT '' COMMENT '执行器名称', `args_str` text NOT NULL COMMENT '执行方法参数', `ext_attrs` text NOT NULL COMMENT '扩展字段', - `next_trigger_at` datetime NOT NULL COMMENT '下次触发时间', + `next_trigger_at` bigint(13) NOT NULL COMMENT '下次触发时间', `retry_count` int(11) NOT NULL DEFAULT 0 COMMENT '重试次数', `retry_status` tinyint(4) NOT NULL DEFAULT 0 COMMENT '重试状态 0、重试中 1、成功 2、最大重试次数', `task_type` tinyint(4) NOT NULL DEFAULT 1 COMMENT '任务类型 1、重试数据 2、回调数据', + `bucket_index` int(11) NOT NULL DEFAULT 0 COMMENT 'bucket', + `parent_id` bigint(20) NOT NULL DEFAULT 0 COMMENT '父节点id', + `deleted` bigint(20) NOT NULL DEFAULT 0 COMMENT '逻辑删除', `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间', PRIMARY KEY (`id`), KEY `idx_namespace_id_group_name_scene_name` (`namespace_id`, `group_name`, `scene_name`), - KEY `idx_namespace_id_group_name_task_type` (`namespace_id`, `group_name`, `task_type`), KEY `idx_namespace_id_group_name_retry_status` (`namespace_id`, `group_name`, `retry_status`), KEY `idx_idempotent_id` (`idempotent_id`), KEY `idx_biz_no` (`biz_no`), + KEY `idx_parent_id` (`parent_id`), KEY `idx_create_dt` (`create_dt`), - UNIQUE KEY `uk_name_unique_id` (`namespace_id`, `group_name`, `unique_id`) + UNIQUE KEY `uk_name_task_type_idempotent_id_deleted` (`namespace_id`, `group_name`, `task_type`, `idempotent_id`, `deleted`) ) ENGINE = InnoDB AUTO_INCREMENT = 0 - DEFAULT CHARSET = utf8mb4 COMMENT ='任务表'; + DEFAULT CHARSET = utf8mb4 COMMENT ='重试信息表'; -CREATE TABLE `sj_retry_task_log` +CREATE TABLE `sj_retry_task` ( - `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键', - `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id', - `unique_id` varchar(64) NOT NULL COMMENT '同组下id唯一', - `group_name` varchar(64) NOT NULL COMMENT '组名称', - `scene_name` varchar(64) NOT NULL COMMENT '场景名称', - `idempotent_id` varchar(64) NOT NULL COMMENT '幂等id', - `biz_no` varchar(64) NOT NULL DEFAULT '' COMMENT '业务编号', - `executor_name` varchar(512) NOT NULL DEFAULT '' COMMENT '执行器名称', - `args_str` text NOT NULL COMMENT '执行方法参数', - `ext_attrs` text NOT NULL COMMENT '扩展字段', - `retry_status` tinyint(4) NOT NULL DEFAULT 0 COMMENT '重试状态 0、重试中 1、成功 2、最大次数', - `task_type` tinyint(4) NOT NULL DEFAULT 1 COMMENT '任务类型 1、重试数据 2、回调数据', - `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', - `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间', + `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键', + `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id', + `group_name` varchar(64) NOT NULL COMMENT '组名称', + `scene_name` varchar(64) NOT NULL COMMENT '场景名称', + `retry_id` bigint(20) NOT NULL COMMENT '重试信息Id', + `ext_attrs` text NOT NULL COMMENT '扩展字段', + `task_status` tinyint(4) NOT NULL DEFAULT 1 COMMENT '重试状态', + `task_type` tinyint(4) NOT NULL DEFAULT 1 COMMENT '任务类型 1、重试数据 2、回调数据', + `operation_reason` tinyint(4) NOT NULL DEFAULT 0 COMMENT '操作原因', + `client_info` varchar(128) DEFAULT NULL COMMENT '客户端地址 clientId#ip:port', + `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', + `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间', PRIMARY KEY (`id`), KEY `idx_group_name_scene_name` (`namespace_id`, `group_name`, `scene_name`), - KEY `idx_retry_status` (`retry_status`), - KEY `idx_idempotent_id` (`idempotent_id`), - KEY `idx_unique_id` (`unique_id`), - KEY `idx_biz_no` (`biz_no`), - KEY `idx_create_dt` (`create_dt`) + KEY `task_status` (`task_status`), + KEY `idx_create_dt` (`create_dt`), + KEY `idx_retry_id` (`retry_id`) ) ENGINE = InnoDB AUTO_INCREMENT = 0 - DEFAULT CHARSET = utf8mb4 COMMENT ='任务日志基础信息表'; + DEFAULT CHARSET = utf8mb4 COMMENT ='重试任务表'; CREATE TABLE `sj_retry_task_log_message` ( - `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键', - `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id', - `group_name` varchar(64) NOT NULL COMMENT '组名称', - `unique_id` varchar(64) NOT NULL COMMENT '同组下id唯一', - `message` longtext NOT NULL COMMENT '异常信息', - `log_num` int(11) NOT NULL DEFAULT 1 COMMENT '日志数量', - `real_time` bigint(13) NOT NULL DEFAULT 0 COMMENT '上报时间', - `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', + `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键', + `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id', + `group_name` varchar(64) NOT NULL COMMENT '组名称', + `retry_id` bigint(20) NOT NULL COMMENT '重试信息Id', + `retry_task_id` bigint(20) NOT NULL COMMENT '重试任务Id', + `message` longtext NOT NULL COMMENT '异常信息', + `log_num` int(11) NOT NULL DEFAULT 1 COMMENT '日志数量', + `real_time` bigint(13) NOT NULL DEFAULT 0 COMMENT '上报时间', + `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', PRIMARY KEY (`id`), - KEY `idx_namespace_id_group_name_scene_name` (`namespace_id`, `group_name`, `unique_id`), + KEY `idx_namespace_id_group_name_retry_task_id` (`namespace_id`, `group_name`, `retry_task_id`), KEY `idx_create_dt` (`create_dt`) ) ENGINE = InnoDB AUTO_INCREMENT = 0 @@ -180,21 +175,26 @@ CREATE TABLE `sj_retry_task_log_message` CREATE TABLE `sj_retry_scene_config` ( - `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键', - `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id', - `scene_name` varchar(64) NOT NULL COMMENT '场景名称', - `group_name` varchar(64) NOT NULL COMMENT '组名称', - `scene_status` tinyint(4) NOT NULL DEFAULT 0 COMMENT '组状态 0、未启用 1、启用', - `max_retry_count` int(11) NOT NULL DEFAULT 5 COMMENT '最大重试次数', - `back_off` tinyint(4) NOT NULL DEFAULT 1 COMMENT '1、默认等级 2、固定间隔时间 3、CRON 表达式', - `trigger_interval` varchar(16) NOT NULL DEFAULT '' COMMENT '间隔时长', - `notify_ids` varchar(128) NOT NULL DEFAULT '' COMMENT '通知告警场景配置id列表', - `deadline_request` bigint(20) unsigned NOT NULL DEFAULT 60000 COMMENT 'Deadline Request 调用链超时 单位毫秒', - `executor_timeout` int(11) unsigned NOT NULL DEFAULT 5 COMMENT '任务执行超时时间,单位秒', - `route_key` tinyint(4) NOT NULL DEFAULT 4 COMMENT '路由策略', - `description` varchar(256) NOT NULL DEFAULT '' COMMENT '描述', - `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', - `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间', + `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键', + `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id', + `scene_name` varchar(64) NOT NULL COMMENT '场景名称', + `group_name` varchar(64) NOT NULL COMMENT '组名称', + `scene_status` tinyint(4) NOT NULL DEFAULT 0 COMMENT '组状态 0、未启用 1、启用', + `max_retry_count` int(11) NOT NULL DEFAULT 5 COMMENT '最大重试次数', + `back_off` tinyint(4) NOT NULL DEFAULT 1 COMMENT '1、默认等级 2、固定间隔时间 3、CRON 表达式', + `trigger_interval` varchar(16) NOT NULL DEFAULT '' COMMENT '间隔时长', + `notify_ids` varchar(128) NOT NULL DEFAULT '' COMMENT '通知告警场景配置id列表', + `deadline_request` bigint(20) unsigned NOT NULL DEFAULT 60000 COMMENT 'Deadline Request 调用链超时 单位毫秒', + `executor_timeout` int(11) unsigned NOT NULL DEFAULT 5 COMMENT '任务执行超时时间,单位秒', + `route_key` tinyint(4) NOT NULL DEFAULT 4 COMMENT '路由策略', + `block_strategy` tinyint(4) NOT NULL DEFAULT 1 COMMENT '阻塞策略 1、丢弃 2、覆盖 3、并行', + `cb_status` tinyint(4) NOT NULL DEFAULT 0 COMMENT '回调状态 0、不开启 1、开启', + `cb_trigger_type` tinyint(4) NOT NULL DEFAULT 1 COMMENT '1、默认等级 2、固定间隔时间 3、CRON 表达式', + `cb_max_count` int(11) NOT NULL DEFAULT 16 COMMENT '回调的最大执行次数', + `cb_trigger_interval` varchar(16) NOT NULL DEFAULT '' COMMENT '回调的最大执行次数', + `description` varchar(256) NOT NULL DEFAULT '' COMMENT '描述', + `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', + `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间', PRIMARY KEY (`id`), UNIQUE KEY `uk_namespace_id_group_name_scene_name` (`namespace_id`, `group_name`, `scene_name`) ) ENGINE = InnoDB @@ -249,7 +249,8 @@ CREATE TABLE `sj_system_user` DEFAULT CHARSET = utf8mb4 COMMENT ='系统用户表'; -- pwd: admin -INSERT INTO `sj_system_user` VALUES (1, 'admin', '465c194afb65670f38322df087f0a9bb225cc257e43eb4ac5a0c98ef5b3173ac', 2, now(), now()); +INSERT INTO `sj_system_user` (username, password, role) +VALUES ('admin', '465c194afb65670f38322df087f0a9bb225cc257e43eb4ac5a0c98ef5b3173ac', 2); CREATE TABLE `sj_system_user_permission` ( @@ -294,7 +295,7 @@ CREATE TABLE `sj_job` `executor_info` varchar(255) DEFAULT NULL COMMENT '执行器名称', `trigger_type` tinyint(4) NOT NULL COMMENT '触发类型 1.CRON 表达式 2. 固定时间', `trigger_interval` varchar(255) NOT NULL COMMENT '间隔时长', - `block_strategy` tinyint(4) NOT NULL DEFAULT 1 COMMENT '阻塞策略 1、丢弃 2、覆盖 3、并行', + `block_strategy` tinyint(4) NOT NULL DEFAULT 1 COMMENT '阻塞策略 1、丢弃 2、覆盖 3、并行 4、恢复', `executor_timeout` int(11) NOT NULL DEFAULT 0 COMMENT '任务执行超时时间,单位秒', `max_retry_times` int(11) NOT NULL DEFAULT 0 COMMENT '最大重试次数', `parallel_num` int(11) NOT NULL DEFAULT 1 COMMENT '并行数', @@ -448,7 +449,7 @@ CREATE TABLE `sj_workflow` `workflow_status` tinyint(4) NOT NULL DEFAULT 1 COMMENT '工作流状态 0、关闭、1、开启', `trigger_type` tinyint(4) NOT NULL COMMENT '触发类型 1.CRON 表达式 2. 固定时间', `trigger_interval` varchar(255) NOT NULL COMMENT '间隔时长', - `next_trigger_at` bigint(13) NOT NULL COMMENT '下次触发时间', + `next_trigger_at` bigint NOT NULL COMMENT '下次触发时间', `block_strategy` tinyint(4) NOT NULL DEFAULT 1 COMMENT '阻塞策略 1、丢弃 2、覆盖 3、并行', `executor_timeout` int(11) NOT NULL DEFAULT 0 COMMENT '任务执行超时时间,单位秒', `description` varchar(256) NOT NULL DEFAULT '' COMMENT '描述', diff --git a/script/sql/sqlserver/sqlserver_ry_job.sql b/script/sql/sqlserver/sqlserver_ry_job.sql index 97addc3aa..5a0bbb39b 100644 --- a/script/sql/sqlserver/sqlserver_ry_job.sql +++ b/script/sql/sqlserver/sqlserver_ry_job.sql @@ -2,7 +2,7 @@ SnailJob Database Transfer Tool Source Server Type : MySQL Target Server Type : Microsoft SQL Server - Date: 2024-12-27 22:24:37 + Date: 2025-02-25 22:16:48 */ @@ -95,7 +95,6 @@ CREATE TABLE sj_group_config group_partition int NOT NULL, id_generator_mode tinyint NOT NULL DEFAULT 1, init_scene tinyint NOT NULL DEFAULT 0, - bucket_index int NOT NULL DEFAULT 0, create_dt datetime2 NOT NULL DEFAULT CURRENT_TIMESTAMP, update_dt datetime2 NOT NULL DEFAULT CURRENT_TIMESTAMP ) @@ -174,13 +173,6 @@ EXEC sp_addextendedproperty 'COLUMN', N'init_scene' GO -EXEC sp_addextendedproperty - 'MS_Description', N'bucket', - 'SCHEMA', N'dbo', - 'TABLE', N'sj_group_config', - 'COLUMN', N'bucket_index' -GO - EXEC sp_addextendedproperty 'MS_Description', N'创建时间', 'SCHEMA', N'dbo', @@ -201,9 +193,9 @@ EXEC sp_addextendedproperty 'TABLE', N'sj_group_config' GO -INSERT INTO sj_group_config(namespace_id, group_name, description, token, group_status, version, group_partition, id_generator_mode, init_scene, bucket_index, create_dt, update_dt) VALUES (N'dev', N'ruoyi_group', N'', N'SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT', N'1', N'1', N'0', N'1', N'1', N'4', getdate(), getdate()) +INSERT INTO sj_group_config(namespace_id, group_name, description, token, group_status, version, group_partition, id_generator_mode, init_scene, create_dt, update_dt) VALUES (N'dev', N'ruoyi_group', N'', N'SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT', N'1', N'1', N'0', N'1', N'1', getdate(), getdate()) GO -INSERT INTO sj_group_config(namespace_id, group_name, description, token, group_status, version, group_partition, id_generator_mode, init_scene, bucket_index, create_dt, update_dt) VALUES (N'prod', N'ruoyi_group', N'', N'SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT', N'1', N'1', N'0', N'1', N'1', N'4', getdate(), getdate()) +INSERT INTO sj_group_config(namespace_id, group_name, description, token, group_status, version, group_partition, id_generator_mode, init_scene, create_dt, update_dt) VALUES (N'prod', N'ruoyi_group', N'', N'SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT', N'1', N'1', N'0', N'1', N'1', getdate(), getdate()) GO -- sj_notify_config @@ -412,12 +404,11 @@ EXEC sp_addextendedproperty 'TABLE', N'sj_notify_recipient' GO --- sj_retry_dead_letter_0 -CREATE TABLE sj_retry_dead_letter_0 +-- sj_retry_dead_letter +CREATE TABLE sj_retry_dead_letter ( id bigint NOT NULL PRIMARY KEY IDENTITY, namespace_id nvarchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a', - unique_id nvarchar(64) NOT NULL, group_name nvarchar(64) NOT NULL, scene_name nvarchar(64) NOT NULL, idempotent_id nvarchar(64) NOT NULL, @@ -425,119 +416,100 @@ CREATE TABLE sj_retry_dead_letter_0 executor_name nvarchar(512) NOT NULL DEFAULT '', args_str nvarchar(max) NOT NULL, ext_attrs nvarchar(max) NOT NULL, - task_type tinyint NOT NULL DEFAULT 1, create_dt datetime2 NOT NULL DEFAULT CURRENT_TIMESTAMP ) GO -CREATE UNIQUE INDEX uk_sj_retry_dead_letter_0_01 ON sj_retry_dead_letter_0 (namespace_id, group_name, unique_id) -GO - -CREATE INDEX idx_sj_retry_dead_letter_0_01 ON sj_retry_dead_letter_0 (namespace_id, group_name, scene_name) +CREATE INDEX idx_sj_retry_dead_letter_01 ON sj_retry_dead_letter (namespace_id, group_name, scene_name) GO -CREATE INDEX idx_sj_retry_dead_letter_0_02 ON sj_retry_dead_letter_0 (idempotent_id) +CREATE INDEX idx_sj_retry_dead_letter_02 ON sj_retry_dead_letter (idempotent_id) GO -CREATE INDEX idx_sj_retry_dead_letter_0_03 ON sj_retry_dead_letter_0 (biz_no) +CREATE INDEX idx_sj_retry_dead_letter_03 ON sj_retry_dead_letter (biz_no) GO -CREATE INDEX idx_sj_retry_dead_letter_0_04 ON sj_retry_dead_letter_0 (create_dt) +CREATE INDEX idx_sj_retry_dead_letter_04 ON sj_retry_dead_letter (create_dt) GO EXEC sp_addextendedproperty 'MS_Description', N'主键', 'SCHEMA', N'dbo', - 'TABLE', N'sj_retry_dead_letter_0', + 'TABLE', N'sj_retry_dead_letter', 'COLUMN', N'id' GO EXEC sp_addextendedproperty 'MS_Description', N'命名空间id', 'SCHEMA', N'dbo', - 'TABLE', N'sj_retry_dead_letter_0', + 'TABLE', N'sj_retry_dead_letter', 'COLUMN', N'namespace_id' GO -EXEC sp_addextendedproperty - 'MS_Description', N'同组下id唯一', - 'SCHEMA', N'dbo', - 'TABLE', N'sj_retry_dead_letter_0', - 'COLUMN', N'unique_id' -GO - EXEC sp_addextendedproperty 'MS_Description', N'组名称', 'SCHEMA', N'dbo', - 'TABLE', N'sj_retry_dead_letter_0', + 'TABLE', N'sj_retry_dead_letter', 'COLUMN', N'group_name' GO EXEC sp_addextendedproperty 'MS_Description', N'场景名称', 'SCHEMA', N'dbo', - 'TABLE', N'sj_retry_dead_letter_0', + 'TABLE', N'sj_retry_dead_letter', 'COLUMN', N'scene_name' GO EXEC sp_addextendedproperty 'MS_Description', N'幂等id', 'SCHEMA', N'dbo', - 'TABLE', N'sj_retry_dead_letter_0', + 'TABLE', N'sj_retry_dead_letter', 'COLUMN', N'idempotent_id' GO EXEC sp_addextendedproperty 'MS_Description', N'业务编号', 'SCHEMA', N'dbo', - 'TABLE', N'sj_retry_dead_letter_0', + 'TABLE', N'sj_retry_dead_letter', 'COLUMN', N'biz_no' GO EXEC sp_addextendedproperty 'MS_Description', N'执行器名称', 'SCHEMA', N'dbo', - 'TABLE', N'sj_retry_dead_letter_0', + 'TABLE', N'sj_retry_dead_letter', 'COLUMN', N'executor_name' GO EXEC sp_addextendedproperty 'MS_Description', N'执行方法参数', 'SCHEMA', N'dbo', - 'TABLE', N'sj_retry_dead_letter_0', + 'TABLE', N'sj_retry_dead_letter', 'COLUMN', N'args_str' GO EXEC sp_addextendedproperty 'MS_Description', N'扩展字段', 'SCHEMA', N'dbo', - 'TABLE', N'sj_retry_dead_letter_0', + 'TABLE', N'sj_retry_dead_letter', 'COLUMN', N'ext_attrs' GO -EXEC sp_addextendedproperty - 'MS_Description', N'任务类型 1、重试数据 2、回调数据', - 'SCHEMA', N'dbo', - 'TABLE', N'sj_retry_dead_letter_0', - 'COLUMN', N'task_type' -GO - EXEC sp_addextendedproperty 'MS_Description', N'创建时间', 'SCHEMA', N'dbo', - 'TABLE', N'sj_retry_dead_letter_0', + 'TABLE', N'sj_retry_dead_letter', 'COLUMN', N'create_dt' GO EXEC sp_addextendedproperty 'MS_Description', N'死信队列表', 'SCHEMA', N'dbo', - 'TABLE', N'sj_retry_dead_letter_0' + 'TABLE', N'sj_retry_dead_letter' GO --- sj_retry_task_0 -CREATE TABLE sj_retry_task_0 +-- sj_retry +CREATE TABLE sj_retry ( id bigint NOT NULL PRIMARY KEY IDENTITY, namespace_id nvarchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a', - unique_id nvarchar(64) NOT NULL, group_name nvarchar(64) NOT NULL, scene_name nvarchar(64) NOT NULL, idempotent_id nvarchar(64) NOT NULL, @@ -545,301 +517,299 @@ CREATE TABLE sj_retry_task_0 executor_name nvarchar(512) NOT NULL DEFAULT '', args_str nvarchar(max) NOT NULL, ext_attrs nvarchar(max) NOT NULL, - next_trigger_at datetime2 NOT NULL, + next_trigger_at bigint NOT NULL, retry_count int NOT NULL DEFAULT 0, retry_status tinyint NOT NULL DEFAULT 0, task_type tinyint NOT NULL DEFAULT 1, + bucket_index int NOT NULL DEFAULT 0, + parent_id bigint NOT NULL DEFAULT 0, + deleted bigint NOT NULL DEFAULT 0, create_dt datetime2 NOT NULL DEFAULT CURRENT_TIMESTAMP, update_dt datetime2 NOT NULL DEFAULT CURRENT_TIMESTAMP ) GO -CREATE UNIQUE INDEX uk_sj_retry_task_0_01 ON sj_retry_task_0 (namespace_id, group_name, unique_id) +CREATE UNIQUE INDEX uk_sj_retry_01 ON sj_retry (namespace_id, group_name, task_type, idempotent_id, deleted) GO -CREATE INDEX idx_sj_retry_task_0_01 ON sj_retry_task_0 (namespace_id, group_name, scene_name) +CREATE INDEX idx_sj_retry_01 ON sj_retry (namespace_id, group_name, scene_name) GO -CREATE INDEX idx_sj_retry_task_0_02 ON sj_retry_task_0 (namespace_id, group_name, task_type) +CREATE INDEX idx_sj_retry_02 ON sj_retry (namespace_id, group_name, retry_status) GO -CREATE INDEX idx_sj_retry_task_0_03 ON sj_retry_task_0 (namespace_id, group_name, retry_status) +CREATE INDEX idx_sj_retry_03 ON sj_retry (idempotent_id) GO -CREATE INDEX idx_sj_retry_task_0_04 ON sj_retry_task_0 (idempotent_id) +CREATE INDEX idx_sj_retry_04 ON sj_retry (biz_no) GO -CREATE INDEX idx_sj_retry_task_0_05 ON sj_retry_task_0 (biz_no) +CREATE INDEX idx_sj_retry_05 ON sj_retry (parent_id) GO -CREATE INDEX idx_sj_retry_task_0_06 ON sj_retry_task_0 (create_dt) +CREATE INDEX idx_sj_retry_06 ON sj_retry (create_dt) GO EXEC sp_addextendedproperty 'MS_Description', N'主键', 'SCHEMA', N'dbo', - 'TABLE', N'sj_retry_task_0', + 'TABLE', N'sj_retry', 'COLUMN', N'id' GO EXEC sp_addextendedproperty 'MS_Description', N'命名空间id', 'SCHEMA', N'dbo', - 'TABLE', N'sj_retry_task_0', + 'TABLE', N'sj_retry', 'COLUMN', N'namespace_id' GO -EXEC sp_addextendedproperty - 'MS_Description', N'同组下id唯一', - 'SCHEMA', N'dbo', - 'TABLE', N'sj_retry_task_0', - 'COLUMN', N'unique_id' -GO - EXEC sp_addextendedproperty 'MS_Description', N'组名称', 'SCHEMA', N'dbo', - 'TABLE', N'sj_retry_task_0', + 'TABLE', N'sj_retry', 'COLUMN', N'group_name' GO EXEC sp_addextendedproperty 'MS_Description', N'场景名称', 'SCHEMA', N'dbo', - 'TABLE', N'sj_retry_task_0', + 'TABLE', N'sj_retry', 'COLUMN', N'scene_name' GO EXEC sp_addextendedproperty 'MS_Description', N'幂等id', 'SCHEMA', N'dbo', - 'TABLE', N'sj_retry_task_0', + 'TABLE', N'sj_retry', 'COLUMN', N'idempotent_id' GO EXEC sp_addextendedproperty 'MS_Description', N'业务编号', 'SCHEMA', N'dbo', - 'TABLE', N'sj_retry_task_0', + 'TABLE', N'sj_retry', 'COLUMN', N'biz_no' GO EXEC sp_addextendedproperty 'MS_Description', N'执行器名称', 'SCHEMA', N'dbo', - 'TABLE', N'sj_retry_task_0', + 'TABLE', N'sj_retry', 'COLUMN', N'executor_name' GO EXEC sp_addextendedproperty 'MS_Description', N'执行方法参数', 'SCHEMA', N'dbo', - 'TABLE', N'sj_retry_task_0', + 'TABLE', N'sj_retry', 'COLUMN', N'args_str' GO EXEC sp_addextendedproperty 'MS_Description', N'扩展字段', 'SCHEMA', N'dbo', - 'TABLE', N'sj_retry_task_0', + 'TABLE', N'sj_retry', 'COLUMN', N'ext_attrs' GO EXEC sp_addextendedproperty 'MS_Description', N'下次触发时间', 'SCHEMA', N'dbo', - 'TABLE', N'sj_retry_task_0', + 'TABLE', N'sj_retry', 'COLUMN', N'next_trigger_at' GO EXEC sp_addextendedproperty 'MS_Description', N'重试次数', 'SCHEMA', N'dbo', - 'TABLE', N'sj_retry_task_0', + 'TABLE', N'sj_retry', 'COLUMN', N'retry_count' GO EXEC sp_addextendedproperty 'MS_Description', N'重试状态 0、重试中 1、成功 2、最大重试次数', 'SCHEMA', N'dbo', - 'TABLE', N'sj_retry_task_0', + 'TABLE', N'sj_retry', 'COLUMN', N'retry_status' GO EXEC sp_addextendedproperty 'MS_Description', N'任务类型 1、重试数据 2、回调数据', 'SCHEMA', N'dbo', - 'TABLE', N'sj_retry_task_0', + 'TABLE', N'sj_retry', 'COLUMN', N'task_type' GO +EXEC sp_addextendedproperty + 'MS_Description', N'bucket', + 'SCHEMA', N'dbo', + 'TABLE', N'sj_retry', + 'COLUMN', N'bucket_index' +GO + +EXEC sp_addextendedproperty + 'MS_Description', N'父节点id', + 'SCHEMA', N'dbo', + 'TABLE', N'sj_retry', + 'COLUMN', N'parent_id' +GO + +EXEC sp_addextendedproperty + 'MS_Description', N'逻辑删除', + 'SCHEMA', N'dbo', + 'TABLE', N'sj_retry', + 'COLUMN', N'deleted' +GO + EXEC sp_addextendedproperty 'MS_Description', N'创建时间', 'SCHEMA', N'dbo', - 'TABLE', N'sj_retry_task_0', + 'TABLE', N'sj_retry', 'COLUMN', N'create_dt' GO EXEC sp_addextendedproperty 'MS_Description', N'修改时间', 'SCHEMA', N'dbo', - 'TABLE', N'sj_retry_task_0', + 'TABLE', N'sj_retry', 'COLUMN', N'update_dt' GO EXEC sp_addextendedproperty - 'MS_Description', N'任务表', + 'MS_Description', N'重试信息表', 'SCHEMA', N'dbo', - 'TABLE', N'sj_retry_task_0' + 'TABLE', N'sj_retry' GO --- sj_retry_task_log -CREATE TABLE sj_retry_task_log +-- sj_retry_task +CREATE TABLE sj_retry_task ( - id bigint NOT NULL PRIMARY KEY IDENTITY, - namespace_id nvarchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a', - unique_id nvarchar(64) NOT NULL, - group_name nvarchar(64) NOT NULL, - scene_name nvarchar(64) NOT NULL, - idempotent_id nvarchar(64) NOT NULL, - biz_no nvarchar(64) NOT NULL DEFAULT '', - executor_name nvarchar(512) NOT NULL DEFAULT '', - args_str nvarchar(max) NOT NULL, - ext_attrs nvarchar(max) NOT NULL, - retry_status tinyint NOT NULL DEFAULT 0, - task_type tinyint NOT NULL DEFAULT 1, - create_dt datetime2 NOT NULL DEFAULT CURRENT_TIMESTAMP, - update_dt datetime2 NOT NULL DEFAULT CURRENT_TIMESTAMP + id bigint NOT NULL PRIMARY KEY IDENTITY, + namespace_id nvarchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a', + group_name nvarchar(64) NOT NULL, + scene_name nvarchar(64) NOT NULL, + retry_id bigint NOT NULL, + ext_attrs nvarchar(max) NOT NULL, + task_status tinyint NOT NULL DEFAULT 1, + task_type tinyint NOT NULL DEFAULT 1, + operation_reason tinyint NOT NULL DEFAULT 0, + client_info nvarchar(128) NULL DEFAULT NULL, + create_dt datetime2 NOT NULL DEFAULT CURRENT_TIMESTAMP, + update_dt datetime2 NOT NULL DEFAULT CURRENT_TIMESTAMP ) GO -CREATE INDEX idx_sj_retry_task_log_01 ON sj_retry_task_log (namespace_id, group_name, scene_name) -GO -CREATE INDEX idx_sj_retry_task_log_02 ON sj_retry_task_log (retry_status) -GO -CREATE INDEX idx_sj_retry_task_log_03 ON sj_retry_task_log (idempotent_id) +CREATE INDEX idx_sj_retry_task_01 ON sj_retry_task (namespace_id, group_name, scene_name) GO -CREATE INDEX idx_sj_retry_task_log_04 ON sj_retry_task_log (unique_id) +CREATE INDEX idx_sj_retry_task_02 ON sj_retry_task (task_status) GO -CREATE INDEX idx_sj_retry_task_log_05 ON sj_retry_task_log (biz_no) +CREATE INDEX idx_sj_retry_task_03 ON sj_retry_task (create_dt) GO -CREATE INDEX idx_sj_retry_task_log_06 ON sj_retry_task_log (create_dt) +CREATE INDEX idx_sj_retry_task_04 ON sj_retry_task (retry_id) GO EXEC sp_addextendedproperty 'MS_Description', N'主键', 'SCHEMA', N'dbo', - 'TABLE', N'sj_retry_task_log', + 'TABLE', N'sj_retry_task', 'COLUMN', N'id' GO EXEC sp_addextendedproperty 'MS_Description', N'命名空间id', 'SCHEMA', N'dbo', - 'TABLE', N'sj_retry_task_log', + 'TABLE', N'sj_retry_task', 'COLUMN', N'namespace_id' GO -EXEC sp_addextendedproperty - 'MS_Description', N'同组下id唯一', - 'SCHEMA', N'dbo', - 'TABLE', N'sj_retry_task_log', - 'COLUMN', N'unique_id' -GO - EXEC sp_addextendedproperty 'MS_Description', N'组名称', 'SCHEMA', N'dbo', - 'TABLE', N'sj_retry_task_log', + 'TABLE', N'sj_retry_task', 'COLUMN', N'group_name' GO EXEC sp_addextendedproperty 'MS_Description', N'场景名称', 'SCHEMA', N'dbo', - 'TABLE', N'sj_retry_task_log', + 'TABLE', N'sj_retry_task', 'COLUMN', N'scene_name' GO EXEC sp_addextendedproperty - 'MS_Description', N'幂等id', + 'MS_Description', N'重试信息Id', 'SCHEMA', N'dbo', - 'TABLE', N'sj_retry_task_log', - 'COLUMN', N'idempotent_id' -GO - -EXEC sp_addextendedproperty - 'MS_Description', N'业务编号', - 'SCHEMA', N'dbo', - 'TABLE', N'sj_retry_task_log', - 'COLUMN', N'biz_no' + 'TABLE', N'sj_retry_task', + 'COLUMN', N'retry_id' GO EXEC sp_addextendedproperty - 'MS_Description', N'执行器名称', + 'MS_Description', N'扩展字段', 'SCHEMA', N'dbo', - 'TABLE', N'sj_retry_task_log', - 'COLUMN', N'executor_name' + 'TABLE', N'sj_retry_task', + 'COLUMN', N'ext_attrs' GO EXEC sp_addextendedproperty - 'MS_Description', N'执行方法参数', + 'MS_Description', N'重试状态', 'SCHEMA', N'dbo', - 'TABLE', N'sj_retry_task_log', - 'COLUMN', N'args_str' + 'TABLE', N'sj_retry_task', + 'COLUMN', N'task_status' GO EXEC sp_addextendedproperty - 'MS_Description', N'扩展字段', + 'MS_Description', N'任务类型 1、重试数据 2、回调数据', 'SCHEMA', N'dbo', - 'TABLE', N'sj_retry_task_log', - 'COLUMN', N'ext_attrs' + 'TABLE', N'sj_retry_task', + 'COLUMN', N'task_type' GO EXEC sp_addextendedproperty - 'MS_Description', N'重试状态 0、重试中 1、成功 2、最大次数', + 'MS_Description', N'操作原因', 'SCHEMA', N'dbo', - 'TABLE', N'sj_retry_task_log', - 'COLUMN', N'retry_status' + 'TABLE', N'sj_retry_task', + 'COLUMN', N'operation_reason' GO EXEC sp_addextendedproperty - 'MS_Description', N'任务类型 1、重试数据 2、回调数据', + 'MS_Description', N'客户端地址 clientId#ip:port', 'SCHEMA', N'dbo', - 'TABLE', N'sj_retry_task_log', - 'COLUMN', N'task_type' + 'TABLE', N'sj_retry_task', + 'COLUMN', N'client_info' GO EXEC sp_addextendedproperty 'MS_Description', N'创建时间', 'SCHEMA', N'dbo', - 'TABLE', N'sj_retry_task_log', + 'TABLE', N'sj_retry_task', 'COLUMN', N'create_dt' GO EXEC sp_addextendedproperty 'MS_Description', N'修改时间', 'SCHEMA', N'dbo', - 'TABLE', N'sj_retry_task_log', + 'TABLE', N'sj_retry_task', 'COLUMN', N'update_dt' GO EXEC sp_addextendedproperty - 'MS_Description', N'任务日志基础信息表', + 'MS_Description', N'重试任务表', 'SCHEMA', N'dbo', - 'TABLE', N'sj_retry_task_log' + 'TABLE', N'sj_retry_task' GO -- sj_retry_task_log_message CREATE TABLE sj_retry_task_log_message ( - id bigint NOT NULL PRIMARY KEY IDENTITY, - namespace_id nvarchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a', - group_name nvarchar(64) NOT NULL, - unique_id nvarchar(64) NOT NULL, - message nvarchar(max) NOT NULL, - log_num int NOT NULL DEFAULT 1, - real_time bigint NOT NULL DEFAULT 0, - create_dt datetime2 NOT NULL DEFAULT CURRENT_TIMESTAMP + id bigint NOT NULL PRIMARY KEY IDENTITY, + namespace_id nvarchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a', + group_name nvarchar(64) NOT NULL, + retry_id bigint NOT NULL, + retry_task_id bigint NOT NULL, + message nvarchar(max) NOT NULL, + log_num int NOT NULL DEFAULT 1, + real_time bigint NOT NULL DEFAULT 0, + create_dt datetime2 NOT NULL DEFAULT CURRENT_TIMESTAMP ) GO -CREATE INDEX idx_sj_retry_task_log_message_01 ON sj_retry_task_log_message (namespace_id, group_name, unique_id) +CREATE INDEX idx_sj_retry_task_log_message_01 ON sj_retry_task_log_message (namespace_id, group_name, retry_task_id) GO CREATE INDEX idx_sj_retry_task_log_message_02 ON sj_retry_task_log_message (create_dt) GO @@ -866,10 +836,17 @@ EXEC sp_addextendedproperty GO EXEC sp_addextendedproperty - 'MS_Description', N'同组下id唯一', + 'MS_Description', N'重试信息Id', 'SCHEMA', N'dbo', 'TABLE', N'sj_retry_task_log_message', - 'COLUMN', N'unique_id' + 'COLUMN', N'retry_id' +GO + +EXEC sp_addextendedproperty + 'MS_Description', N'重试任务Id', + 'SCHEMA', N'dbo', + 'TABLE', N'sj_retry_task_log_message', + 'COLUMN', N'retry_task_id' GO EXEC sp_addextendedproperty @@ -909,21 +886,26 @@ GO -- sj_retry_scene_config CREATE TABLE sj_retry_scene_config ( - id bigint NOT NULL PRIMARY KEY IDENTITY, - namespace_id nvarchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a', - scene_name nvarchar(64) NOT NULL, - group_name nvarchar(64) NOT NULL, - scene_status tinyint NOT NULL DEFAULT 0, - max_retry_count int NOT NULL DEFAULT 5, - back_off tinyint NOT NULL DEFAULT 1, - trigger_interval nvarchar(16) NOT NULL DEFAULT '', - notify_ids nvarchar(128) NOT NULL DEFAULT '', - deadline_request bigint NOT NULL DEFAULT 60000, - executor_timeout int NOT NULL DEFAULT 5, - route_key tinyint NOT NULL DEFAULT 4, - description nvarchar(256) NOT NULL DEFAULT '', - create_dt datetime2 NOT NULL DEFAULT CURRENT_TIMESTAMP, - update_dt datetime2 NOT NULL DEFAULT CURRENT_TIMESTAMP + id bigint NOT NULL PRIMARY KEY IDENTITY, + namespace_id nvarchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a', + scene_name nvarchar(64) NOT NULL, + group_name nvarchar(64) NOT NULL, + scene_status tinyint NOT NULL DEFAULT 0, + max_retry_count int NOT NULL DEFAULT 5, + back_off tinyint NOT NULL DEFAULT 1, + trigger_interval nvarchar(16) NOT NULL DEFAULT '', + notify_ids nvarchar(128) NOT NULL DEFAULT '', + deadline_request bigint NOT NULL DEFAULT 60000, + executor_timeout int NOT NULL DEFAULT 5, + route_key tinyint NOT NULL DEFAULT 4, + block_strategy tinyint NOT NULL DEFAULT 1, + cb_status tinyint NOT NULL DEFAULT 0, + cb_trigger_type tinyint NOT NULL DEFAULT 1, + cb_max_count int NOT NULL DEFAULT 16, + cb_trigger_interval nvarchar(16) NOT NULL DEFAULT '', + description nvarchar(256) NOT NULL DEFAULT '', + create_dt datetime2 NOT NULL DEFAULT CURRENT_TIMESTAMP, + update_dt datetime2 NOT NULL DEFAULT CURRENT_TIMESTAMP ) GO @@ -1014,6 +996,41 @@ EXEC sp_addextendedproperty 'COLUMN', N'route_key' GO +EXEC sp_addextendedproperty + 'MS_Description', N'阻塞策略 1、丢弃 2、覆盖 3、并行', + 'SCHEMA', N'dbo', + 'TABLE', N'sj_retry_scene_config', + 'COLUMN', N'block_strategy' +GO + +EXEC sp_addextendedproperty + 'MS_Description', N'回调状态 0、不开启 1、开启', + 'SCHEMA', N'dbo', + 'TABLE', N'sj_retry_scene_config', + 'COLUMN', N'cb_status' +GO + +EXEC sp_addextendedproperty + 'MS_Description', N'1、默认等级 2、固定间隔时间 3、CRON 表达式', + 'SCHEMA', N'dbo', + 'TABLE', N'sj_retry_scene_config', + 'COLUMN', N'cb_trigger_type' +GO + +EXEC sp_addextendedproperty + 'MS_Description', N'回调的最大执行次数', + 'SCHEMA', N'dbo', + 'TABLE', N'sj_retry_scene_config', + 'COLUMN', N'cb_max_count' +GO + +EXEC sp_addextendedproperty + 'MS_Description', N'回调的最大执行次数', + 'SCHEMA', N'dbo', + 'TABLE', N'sj_retry_scene_config', + 'COLUMN', N'cb_trigger_interval' +GO + EXEC sp_addextendedproperty 'MS_Description', N'描述', 'SCHEMA', N'dbo', @@ -1152,7 +1169,7 @@ GO -- sj_distributed_lock CREATE TABLE sj_distributed_lock ( - name nvarchar(64) NOT NULL PRIMARY KEY, + name nvarchar(64) NOT NULL, lock_until datetime2 NOT NULL DEFAULT CURRENT_TIMESTAMP, locked_at datetime2 NOT NULL DEFAULT CURRENT_TIMESTAMP, locked_by nvarchar(255) NOT NULL, @@ -1539,7 +1556,7 @@ EXEC sp_addextendedproperty GO EXEC sp_addextendedproperty - 'MS_Description', N'阻塞策略 1、丢弃 2、覆盖 3、并行', + 'MS_Description', N'阻塞策略 1、丢弃 2、覆盖 3、并行 4、恢复', 'SCHEMA', N'dbo', 'TABLE', N'sj_job', 'COLUMN', N'block_strategy' @@ -1567,7 +1584,7 @@ EXEC sp_addextendedproperty GO EXEC sp_addextendedproperty - 'MS_Description', N'重试间隔 ( s ) ', + 'MS_Description', N'重试间隔 ( s)', 'SCHEMA', N'dbo', 'TABLE', N'sj_job', 'COLUMN', N'retry_interval' @@ -2121,7 +2138,7 @@ EXEC sp_addextendedproperty GO EXEC sp_addextendedproperty - 'MS_Description', N'业务id ( job_id或workflow_id ) ', + 'MS_Description', N'业务id ( job_id或workflow_id)', 'SCHEMA', N'dbo', 'TABLE', N'sj_job_summary', 'COLUMN', N'business_id' -- Gitee From d14ee599128ae4e2911d8b37676600f624960a24 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Tue, 18 Mar 2025 17:25:01 +0800 Subject: [PATCH 484/540] update springboot-admin 3.4.2 => 3.4.5 update redisson 3.44.0 => 3.45.1 update sms4j 3.3.3 => 3.3.4 --- pom.xml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pom.xml b/pom.xml index e887efd5c..048f44e3f 100644 --- a/pom.xml +++ b/pom.xml @@ -27,8 +27,8 @@ 3.5.10.1 3.9.1 5.8.35 - 3.4.2 - 3.44.0 + 3.4.5 + 3.45.1 2.2.7 4.3.1 1.4.0-beta2 @@ -43,7 +43,7 @@ 2.28.22 - 3.3.3 + 3.3.4 1.2.83 -- Gitee From d4f792810e008fceddab871b14db1cb4b316c706 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Wed, 19 Mar 2025 10:09:32 +0800 Subject: [PATCH 485/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E7=AE=80?= =?UTF-8?q?=E5=8C=96=20SysTaskAssigneeServiceImpl=20=E4=BB=A3=E7=A0=81?= =?UTF-8?q?=E5=AE=9E=E7=8E=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dromara/system/domain/bo/SysDeptBo.java | 5 + .../system/service/ISysDeptService.java | 12 ++ .../service/impl/SysDeptServiceImpl.java | 26 ++++ .../impl/SysTaskAssigneeServiceImpl.java | 139 +++++++----------- 4 files changed, 93 insertions(+), 89 deletions(-) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysDeptBo.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysDeptBo.java index 5f64d6f30..0d8ac84b9 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysDeptBo.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysDeptBo.java @@ -73,4 +73,9 @@ public class SysDeptBo extends BaseEntity { */ private String status; + /** + * 归属部门id(部门树) + */ + private Long belongDeptId; + } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysDeptService.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysDeptService.java index bf16642fe..1397443cb 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysDeptService.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysDeptService.java @@ -1,6 +1,8 @@ package org.dromara.system.service; import cn.hutool.core.lang.tree.Tree; +import org.dromara.common.mybatis.core.page.PageQuery; +import org.dromara.common.mybatis.core.page.TableDataInfo; import org.dromara.system.domain.bo.SysDeptBo; import org.dromara.system.domain.vo.SysDeptVo; @@ -12,6 +14,16 @@ import java.util.List; * @author Lion Li */ public interface ISysDeptService { + + /** + * 分页查询部门管理数据 + * + * @param dept 部门信息 + * @param pageQuery 分页对象 + * @return 部门信息集合 + */ + TableDataInfo selectPageDeptList(SysDeptBo dept, PageQuery pageQuery); + /** * 查询部门管理数据 * diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java index ecd309f4e..98aad216b 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java @@ -8,6 +8,7 @@ import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import lombok.RequiredArgsConstructor; import org.dromara.common.core.constant.CacheNames; import org.dromara.common.core.constant.SystemConstants; @@ -15,6 +16,8 @@ import org.dromara.common.core.domain.dto.DeptDTO; import org.dromara.common.core.exception.ServiceException; import org.dromara.common.core.service.DeptService; import org.dromara.common.core.utils.*; +import org.dromara.common.mybatis.core.page.PageQuery; +import org.dromara.common.mybatis.core.page.TableDataInfo; import org.dromara.common.mybatis.helper.DataBaseHelper; import org.dromara.common.redis.utils.CacheUtils; import org.dromara.common.satoken.utils.LoginHelper; @@ -50,6 +53,19 @@ public class SysDeptServiceImpl implements ISysDeptService, DeptService { private final SysRoleMapper roleMapper; private final SysUserMapper userMapper; + /** + * 分页查询部门管理数据 + * + * @param dept 部门信息 + * @param pageQuery 分页对象 + * @return 部门信息集合 + */ + @Override + public TableDataInfo selectPageDeptList(SysDeptBo dept, PageQuery pageQuery) { + Page page = baseMapper.selectPageDeptList(pageQuery.build(), buildQueryWrapper(dept)); + return TableDataInfo.build(page); + } + /** * 查询部门管理数据 * @@ -87,6 +103,16 @@ public class SysDeptServiceImpl implements ISysDeptService, DeptService { lqw.orderByAsc(SysDept::getParentId); lqw.orderByAsc(SysDept::getOrderNum); lqw.orderByAsc(SysDept::getDeptId); + if (ObjectUtil.isNotNull(bo.getBelongDeptId())) { + //部门树搜索 + lqw.and(x -> { + Long parentId = bo.getBelongDeptId(); + List deptList = baseMapper.selectListByParentId(parentId); + List deptIds = StreamUtils.toList(deptList, SysDept::getDeptId); + deptIds.add(parentId); + x.in(SysDept::getDeptId, deptIds); + }); + } return lqw; } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTaskAssigneeServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTaskAssigneeServiceImpl.java index 2fbf2408b..0a5f4b1d4 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTaskAssigneeServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTaskAssigneeServiceImpl.java @@ -1,32 +1,27 @@ package org.dromara.system.service.impl; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.core.toolkit.Wrappers; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import lombok.RequiredArgsConstructor; -import org.dromara.common.core.constant.SystemConstants; import org.dromara.common.core.domain.dto.TaskAssigneeDTO; import org.dromara.common.core.domain.model.TaskAssigneeBody; import org.dromara.common.core.service.TaskAssigneeService; -import org.dromara.common.core.utils.StreamUtils; -import org.dromara.common.core.utils.StringUtils; import org.dromara.common.mybatis.core.page.PageQuery; -import org.dromara.system.domain.SysDept; -import org.dromara.system.domain.SysPost; -import org.dromara.system.domain.SysRole; -import org.dromara.system.domain.SysUser; +import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.dromara.system.domain.bo.SysDeptBo; +import org.dromara.system.domain.bo.SysPostBo; +import org.dromara.system.domain.bo.SysRoleBo; +import org.dromara.system.domain.bo.SysUserBo; import org.dromara.system.domain.vo.SysDeptVo; import org.dromara.system.domain.vo.SysPostVo; import org.dromara.system.domain.vo.SysRoleVo; import org.dromara.system.domain.vo.SysUserVo; -import org.dromara.system.mapper.SysDeptMapper; -import org.dromara.system.mapper.SysPostMapper; -import org.dromara.system.mapper.SysRoleMapper; -import org.dromara.system.mapper.SysUserMapper; +import org.dromara.system.service.ISysDeptService; +import org.dromara.system.service.ISysPostService; +import org.dromara.system.service.ISysRoleService; +import org.dromara.system.service.ISysUserService; import org.springframework.stereotype.Service; import java.util.List; +import java.util.Map; /** * 工作流设计器获取任务执行人 @@ -37,10 +32,11 @@ import java.util.List; @Service public class SysTaskAssigneeServiceImpl implements TaskAssigneeService { - private final SysPostMapper postMapper; - private final SysDeptMapper deptMapper; - private final SysUserMapper userMapper; - private final SysRoleMapper roleMapper; + // 上级Service注入下级Service 其他Service永远不可能注入当前类 避免循环注入 + private final ISysPostService postService; + private final ISysDeptService deptService; + private final ISysUserService userService; + private final ISysRoleService roleService; /** * 查询角色并返回任务指派的列表,支持分页 @@ -51,17 +47,15 @@ public class SysTaskAssigneeServiceImpl implements TaskAssigneeService { @Override public TaskAssigneeDTO selectRolesByTaskAssigneeList(TaskAssigneeBody taskQuery) { PageQuery pageQuery = new PageQuery(taskQuery.getPageSize(), taskQuery.getPageNum()); - QueryWrapper wrapper = Wrappers.query(); - wrapper.eq("r.del_flag", SystemConstants.NORMAL) - .eq("r.status", SystemConstants.NORMAL) - .like(StringUtils.isNotBlank(taskQuery.getHandlerCode()), "r.role_name", taskQuery.getHandlerCode()) - .like(StringUtils.isNotBlank(taskQuery.getHandlerName()), "r.role_key", taskQuery.getHandlerName()) - .between(StringUtils.isNotBlank(taskQuery.getBeginTime()) && StringUtils.isNotBlank(taskQuery.getEndTime()), - "r.create_time", taskQuery.getBeginTime(), taskQuery.getEndTime()) - .orderByAsc("r.role_sort").orderByAsc("r.create_time"); - Page page = roleMapper.selectPageRoleList(pageQuery.build(), wrapper); + SysRoleBo bo = new SysRoleBo(); + bo.setRoleName(taskQuery.getHandlerCode()); + bo.setRoleKey(taskQuery.getHandlerName()); + Map params = bo.getParams(); + params.put("beginTime", taskQuery.getBeginTime()); + params.put("endTime", taskQuery.getEndTime()); + TableDataInfo page = roleService.selectPageRoleList(bo, pageQuery); // 使用封装的字段映射方法进行转换 - List handlers = TaskAssigneeDTO.convertToHandlerList(page.getRecords(), + List handlers = TaskAssigneeDTO.convertToHandlerList(page.getRows(), SysRoleVo::getRoleId, SysRoleVo::getRoleKey, SysRoleVo::getRoleName, null, SysRoleVo::getCreateTime); return new TaskAssigneeDTO(page.getTotal(), handlers); } @@ -75,24 +69,16 @@ public class SysTaskAssigneeServiceImpl implements TaskAssigneeService { @Override public TaskAssigneeDTO selectPostsByTaskAssigneeList(TaskAssigneeBody taskQuery) { PageQuery pageQuery = new PageQuery(taskQuery.getPageSize(), taskQuery.getPageNum()); - LambdaQueryWrapper wrapper = Wrappers.lambdaQuery() - .eq(SysPost::getStatus, SystemConstants.NORMAL) - .like(StringUtils.isNotBlank(taskQuery.getHandlerCode()), SysPost::getPostCategory, taskQuery.getHandlerCode()) - .like(StringUtils.isNotBlank(taskQuery.getHandlerName()), SysPost::getPostName, taskQuery.getHandlerName()) - .between(StringUtils.isNotBlank(taskQuery.getBeginTime()) && StringUtils.isNotBlank(taskQuery.getEndTime()), - SysPost::getCreateTime, taskQuery.getBeginTime(), taskQuery.getEndTime()); - if (StringUtils.isNotBlank(taskQuery.getGroupId())) { - Long belongDeptId = Long.valueOf(taskQuery.getGroupId()); - wrapper.and(x -> { - List deptList = deptMapper.selectListByParentId(belongDeptId); - List deptIds = StreamUtils.toList(deptList, SysDept::getDeptId); - deptIds.add(belongDeptId); - x.in(SysPost::getDeptId, deptIds); - }); - } - Page page = postMapper.selectPagePostList(pageQuery.build(), wrapper); + SysPostBo bo = new SysPostBo(); + bo.setPostCategory(taskQuery.getHandlerCode()); + bo.setPostName(taskQuery.getHandlerName()); + Map params = bo.getParams(); + params.put("beginTime", taskQuery.getBeginTime()); + params.put("endTime", taskQuery.getEndTime()); + bo.setBelongDeptId(Long.valueOf(taskQuery.getGroupId())); + TableDataInfo page = postService.selectPagePostList(bo, pageQuery); // 使用封装的字段映射方法进行转换 - List handlers = TaskAssigneeDTO.convertToHandlerList(page.getRecords(), + List handlers = TaskAssigneeDTO.convertToHandlerList(page.getRows(), SysPostVo::getPostId, SysPostVo::getPostCategory, SysPostVo::getPostName, SysPostVo::getDeptId, SysPostVo::getCreateTime); return new TaskAssigneeDTO(page.getTotal(), handlers); } @@ -106,30 +92,16 @@ public class SysTaskAssigneeServiceImpl implements TaskAssigneeService { @Override public TaskAssigneeDTO selectDeptsByTaskAssigneeList(TaskAssigneeBody taskQuery) { PageQuery pageQuery = new PageQuery(taskQuery.getPageSize(), taskQuery.getPageNum()); - LambdaQueryWrapper wrapper = Wrappers.lambdaQuery() - .eq(SysDept::getDelFlag, SystemConstants.NORMAL) - .eq(SysDept::getStatus, SystemConstants.NORMAL) - .like(StringUtils.isNotBlank(taskQuery.getHandlerCode()), SysDept::getDeptCategory, taskQuery.getHandlerCode()) - .like(StringUtils.isNotBlank(taskQuery.getHandlerName()), SysDept::getDeptName, taskQuery.getHandlerName()) - .between(StringUtils.isNotBlank(taskQuery.getBeginTime()) && StringUtils.isNotBlank(taskQuery.getEndTime()), - SysDept::getCreateTime, taskQuery.getBeginTime(), taskQuery.getEndTime()) - .orderByAsc(SysDept::getAncestors) - .orderByAsc(SysDept::getParentId) - .orderByAsc(SysDept::getOrderNum) - .orderByAsc(SysDept::getDeptId); - if (StringUtils.isNotBlank(taskQuery.getGroupId())) { - //部门树搜索 - wrapper.and(x -> { - Long parentId = Long.valueOf(taskQuery.getGroupId()); - List deptList = deptMapper.selectListByParentId(parentId); - List deptIds = StreamUtils.toList(deptList, SysDept::getDeptId); - deptIds.add(parentId); - x.in(SysDept::getDeptId, deptIds); - }); - } - Page page = deptMapper.selectPageDeptList(pageQuery.build(), wrapper); + SysDeptBo bo = new SysDeptBo(); + bo.setDeptCategory(taskQuery.getHandlerCode()); + bo.setDeptName(taskQuery.getHandlerName()); + Map params = bo.getParams(); + params.put("beginTime", taskQuery.getBeginTime()); + params.put("endTime", taskQuery.getEndTime()); + bo.setBelongDeptId(Long.valueOf(taskQuery.getGroupId())); + TableDataInfo page = deptService.selectPageDeptList(bo, pageQuery); // 使用封装的字段映射方法进行转换 - List handlers = TaskAssigneeDTO.convertToHandlerList(page.getRecords(), + List handlers = TaskAssigneeDTO.convertToHandlerList(page.getRows(), SysDeptVo::getDeptId, SysDeptVo::getDeptCategory, SysDeptVo::getDeptName, SysDeptVo::getParentId, SysDeptVo::getCreateTime); return new TaskAssigneeDTO(page.getTotal(), handlers); } @@ -144,27 +116,16 @@ public class SysTaskAssigneeServiceImpl implements TaskAssigneeService { @Override public TaskAssigneeDTO selectUsersByTaskAssigneeList(TaskAssigneeBody taskQuery) { PageQuery pageQuery = new PageQuery(taskQuery.getPageSize(), taskQuery.getPageNum()); - QueryWrapper wrapper = Wrappers.query(); - wrapper.eq("u.del_flag", SystemConstants.NORMAL) - .eq("u.status", SystemConstants.NORMAL) - .like(StringUtils.isNotBlank(taskQuery.getHandlerCode()), "u.user_name", taskQuery.getHandlerCode()) - .like(StringUtils.isNotBlank(taskQuery.getHandlerName()), "u.nick_name", taskQuery.getHandlerName()) - .between(taskQuery.getBeginTime() != null && taskQuery.getEndTime() != null, - "u.create_time", taskQuery.getBeginTime(), taskQuery.getEndTime()) - .orderByAsc("u.user_id"); - if (StringUtils.isNotBlank(taskQuery.getGroupId())) { - //部门树搜索 - wrapper.and(x -> { - Long parentId = Long.valueOf(taskQuery.getGroupId()); - List deptList = deptMapper.selectListByParentId(parentId); - List deptIds = StreamUtils.toList(deptList, SysDept::getDeptId); - deptIds.add(parentId); - x.in("u.dept_id", deptIds); - }); - } - Page page = userMapper.selectPageUserList(pageQuery.build(), wrapper); + SysUserBo bo = new SysUserBo(); + bo.setUserName(taskQuery.getHandlerCode()); + bo.setNickName(taskQuery.getHandlerName()); + Map params = bo.getParams(); + params.put("beginTime", taskQuery.getBeginTime()); + params.put("endTime", taskQuery.getEndTime()); + bo.setDeptId(Long.valueOf(taskQuery.getGroupId())); + TableDataInfo page = userService.selectPageUserList(bo, pageQuery); // 使用封装的字段映射方法进行转换 - List handlers = TaskAssigneeDTO.convertToHandlerList(page.getRecords(), + List handlers = TaskAssigneeDTO.convertToHandlerList(page.getRows(), SysUserVo::getUserId, SysUserVo::getUserName, SysUserVo::getNickName, SysUserVo::getDeptId, SysUserVo::getCreateTime); return new TaskAssigneeDTO(page.getTotal(), handlers); } -- Gitee From bba163f7b487601ccd246953e5c35bdead410ed4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Wed, 19 Mar 2025 11:34:53 +0800 Subject: [PATCH 486/540] update warm-flow 1.6.7 => 1.6.8 --- pom.xml | 2 +- script/sql/oracle/oracle_ry_workflow.sql | 1 + script/sql/postgres/postgres_ry_workflow.sql | 2 ++ script/sql/ry_workflow.sql | 3 ++- script/sql/sqlserver/sqlserver_ry_workflow.sql | 2 ++ script/sql/update/oracle/update_5.3.0-5.3.1.sql | 1 + script/sql/update/postgres/update_5.3.0-5.3.1.sql | 1 + script/sql/update/sqlserver/update_5.3.0-5.3.1.sql | 3 +++ script/sql/update/update_5.3.0-5.3.1.sql | 1 + 9 files changed, 14 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index 048f44e3f..281035978 100644 --- a/pom.xml +++ b/pom.xml @@ -49,7 +49,7 @@ 8.7.2-20250101 - 1.6.7 + 1.6.8 3.2.2 diff --git a/script/sql/oracle/oracle_ry_workflow.sql b/script/sql/oracle/oracle_ry_workflow.sql index baecd91fa..d982f03ed 100644 --- a/script/sql/oracle/oracle_ry_workflow.sql +++ b/script/sql/oracle/oracle_ry_workflow.sql @@ -278,6 +278,7 @@ comment on column FLOW_USER.DEL_FLAG is '删除标志'; comment on column FLOW_USER.TENANT_ID is '租户id'; create index USER_PROCESSED_TYPE on FLOW_USER (PROCESSED_BY, TYPE); +create index USER_ASSOCIATED_IDX on FLOW_USER (ASSOCIATED); -- ---------------------------- -- 流程分类表 diff --git a/script/sql/postgres/postgres_ry_workflow.sql b/script/sql/postgres/postgres_ry_workflow.sql index 3fbd70f05..df3d41313 100644 --- a/script/sql/postgres/postgres_ry_workflow.sql +++ b/script/sql/postgres/postgres_ry_workflow.sql @@ -262,6 +262,8 @@ CREATE TABLE flow_user CONSTRAINT flow_user_pk PRIMARY KEY (id) ); CREATE INDEX user_processed_type ON flow_user USING btree (processed_by, type); +CREATE INDEX user_associated_idx ON FLOW_USER USING btree (associated); + COMMENT ON TABLE flow_user IS '流程用户表'; COMMENT ON COLUMN flow_user.id IS '主键id'; diff --git a/script/sql/ry_workflow.sql b/script/sql/ry_workflow.sql index 652f4c084..acc297ec5 100644 --- a/script/sql/ry_workflow.sql +++ b/script/sql/ry_workflow.sql @@ -146,7 +146,8 @@ CREATE TABLE `flow_user` `del_flag` char(1) DEFAULT '0' COMMENT '删除标志', `tenant_id` varchar(40) DEFAULT NULL COMMENT '租户id', PRIMARY KEY (`id`) USING BTREE, - KEY `user_processed_type` (`processed_by`, `type`) + KEY `user_processed_type` (`processed_by`, `type`), + KEY `user_associated` (`associated`) USING BTREE ) ENGINE = InnoDB COMMENT ='流程用户表'; -- ---------------------------- diff --git a/script/sql/sqlserver/sqlserver_ry_workflow.sql b/script/sql/sqlserver/sqlserver_ry_workflow.sql index f376e8485..96ea62ad3 100644 --- a/script/sql/sqlserver/sqlserver_ry_workflow.sql +++ b/script/sql/sqlserver/sqlserver_ry_workflow.sql @@ -918,6 +918,8 @@ GO CREATE NONCLUSTERED INDEX user_processed_type ON flow_user (processed_by ASC, type ASC) GO +CREATE NONCLUSTERED INDEX user_associated_idx ON flow_user (associated ASC) +GO EXEC sp_addextendedproperty 'MS_Description', N'主键id', diff --git a/script/sql/update/oracle/update_5.3.0-5.3.1.sql b/script/sql/update/oracle/update_5.3.0-5.3.1.sql index 143c909d3..09000fe2d 100644 --- a/script/sql/update/oracle/update_5.3.0-5.3.1.sql +++ b/script/sql/update/oracle/update_5.3.0-5.3.1.sql @@ -1,6 +1,7 @@ ALTER TABLE flow_node DROP COLUMN skip_any_node; ALTER TABLE flow_node ADD (ext VARCHAR2(500)); COMMENT ON COLUMN flow_node.ext IS '扩展属性'; +create index USER_ASSOCIATED_IDX on FLOW_USER (ASSOCIATED); ALTER TABLE sys_oss ADD (ext1 VARCHAR2(500)); COMMENT ON COLUMN sys_oss.ext1 IS '扩展属性'; diff --git a/script/sql/update/postgres/update_5.3.0-5.3.1.sql b/script/sql/update/postgres/update_5.3.0-5.3.1.sql index 31bf7465e..de5dd5681 100644 --- a/script/sql/update/postgres/update_5.3.0-5.3.1.sql +++ b/script/sql/update/postgres/update_5.3.0-5.3.1.sql @@ -1,6 +1,7 @@ ALTER TABLE flow_node DROP COLUMN skip_any_node; ALTER TABLE flow_node ADD COLUMN ext varchar(500); COMMENT ON COLUMN flow_node.ext IS '扩展属性'; +CREATE INDEX user_associated_idx ON FLOW_USER USING btree (associated); ALTER TABLE sys_oss ADD COLUMN ext1 varchar(500)); COMMENT ON COLUMN sys_oss.ext1 IS '扩展属性'; diff --git a/script/sql/update/sqlserver/update_5.3.0-5.3.1.sql b/script/sql/update/sqlserver/update_5.3.0-5.3.1.sql index 8a22c00bb..50859deec 100644 --- a/script/sql/update/sqlserver/update_5.3.0-5.3.1.sql +++ b/script/sql/update/sqlserver/update_5.3.0-5.3.1.sql @@ -8,6 +8,9 @@ EXEC sp_addextendedproperty 'COLUMN', N'ext' GO +CREATE NONCLUSTERED INDEX user_associated_idx ON flow_user (associated ASC) +GO + ALTER TABLE sys_oss ADD ext1 nvarchar(500) NULL; EXEC sp_addextendedproperty diff --git a/script/sql/update/update_5.3.0-5.3.1.sql b/script/sql/update/update_5.3.0-5.3.1.sql index f1a0efd7b..f45cc4019 100644 --- a/script/sql/update/update_5.3.0-5.3.1.sql +++ b/script/sql/update/update_5.3.0-5.3.1.sql @@ -1,6 +1,7 @@ ALTER TABLE `flow_node` DROP COLUMN `skip_any_node`; ALTER TABLE `flow_node` ADD COLUMN `ext` text NULL COMMENT '扩展属性' AFTER `update_time`; +ALTER TABLE `flow_user` ADD INDEX `user_associated`(`associated`) USING BTREE ALTER TABLE `sys_oss` ADD COLUMN `ext1` text NULL COMMENT '扩展属性' AFTER `url`; -- Gitee From 778096d1002da92788d964b79cc0c2b2221f061b Mon Sep 17 00:00:00 2001 From: guo83551218 <83551218@qq.com> Date: Wed, 19 Mar 2025 05:23:34 +0000 Subject: [PATCH 487/540] =?UTF-8?q?!658=20fix=20=E4=BF=AE=E5=A4=8Dpg?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=E5=BA=93=20=E5=BC=BA=E7=B1=BB=E5=9E=8B?= =?UTF-8?q?=E8=BD=AC=E6=8D=A2=E6=8A=A5=E9=94=99=20*=20fix=20=E4=BF=AE?= =?UTF-8?q?=E5=A4=8Dpg=E6=95=B0=E6=8D=AE=E5=BA=93=20=E5=BC=BA=E7=B1=BB?= =?UTF-8?q?=E5=9E=8B=E8=BD=AC=E6=8D=A2=E6=8A=A5=E9=94=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/org/dromara/workflow/domain/bo/FlowNextNodeBo.java | 2 +- .../org/dromara/workflow/service/impl/FlwTaskServiceImpl.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/FlowNextNodeBo.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/FlowNextNodeBo.java index 385eb892b..12f0653ef 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/FlowNextNodeBo.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/FlowNextNodeBo.java @@ -21,7 +21,7 @@ public class FlowNextNodeBo implements Serializable { /** * 任务id */ - private String taskId; + private Long taskId; /** * 流程变量 diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java index 209073bdb..d93ba00ab 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java @@ -575,7 +575,7 @@ public class FlwTaskServiceImpl implements IFlwTaskService { */ @Override public List getNextNodeList(FlowNextNodeBo bo) { - String taskId = bo.getTaskId(); + Long taskId = bo.getTaskId(); Map variables = bo.getVariables(); Task task = taskService.getById(taskId); Instance instance = insService.getById(task.getInstanceId()); -- Gitee From 5e5d478cf24811f10870c8deb7880f660dfeda05 Mon Sep 17 00:00:00 2001 From: guo83551218 <83551218@qq.com> Date: Wed, 19 Mar 2025 06:50:24 +0000 Subject: [PATCH 488/540] =?UTF-8?q?!660=20fix=20=E4=BF=AE=E5=A4=8D=20pg?= =?UTF-8?q?=E5=BC=BA=E7=B1=BB=E5=9E=8B=E6=A0=A1=E9=AA=8C=E9=97=AE=E9=A2=98?= =?UTF-8?q?=20*=20fix=20=E4=BF=AE=E5=A4=8D=20pg=E5=BC=BA=E7=B1=BB=E5=9E=8B?= =?UTF-8?q?=E6=A0=A1=E9=AA=8C=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dromara/workflow/service/impl/FlwInstanceServiceImpl.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwInstanceServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwInstanceServiceImpl.java index b5c943e90..3c0b59541 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwInstanceServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwInstanceServiceImpl.java @@ -186,7 +186,7 @@ public class FlwInstanceServiceImpl implements IFlwInstanceService { @Override @Transactional(rollbackFor = Exception.class) public boolean deleteByBusinessIds(List businessIds) { - List flowInstances = flowInstanceMapper.selectList(new LambdaQueryWrapper().in(FlowInstance::getBusinessId, businessIds)); + List flowInstances = flowInstanceMapper.selectList(new LambdaQueryWrapper().in(FlowInstance::getBusinessId, StreamUtils.toList(businessIds,Convert::toStr))); if (CollUtil.isEmpty(flowInstances)) { log.warn("未找到对应的流程实例信息,无法执行删除操作。"); return false; -- Gitee From 33698ee448fa2e6caccec96953ffc907d2f7e034 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 20 Mar 2025 16:53:15 +0800 Subject: [PATCH 489/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20=E8=BD=AC?= =?UTF-8?q?=E6=8D=A2id=20=E5=8F=82=E6=95=B0=E4=B8=BAnull=E6=8A=A5=E9=94=99?= =?UTF-8?q?=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../system/service/impl/SysTaskAssigneeServiceImpl.java | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTaskAssigneeServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTaskAssigneeServiceImpl.java index 0a5f4b1d4..d4f2c0d4e 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTaskAssigneeServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTaskAssigneeServiceImpl.java @@ -1,5 +1,6 @@ package org.dromara.system.service.impl; +import cn.hutool.core.convert.Convert; import lombok.RequiredArgsConstructor; import org.dromara.common.core.domain.dto.TaskAssigneeDTO; import org.dromara.common.core.domain.model.TaskAssigneeBody; @@ -75,7 +76,7 @@ public class SysTaskAssigneeServiceImpl implements TaskAssigneeService { Map params = bo.getParams(); params.put("beginTime", taskQuery.getBeginTime()); params.put("endTime", taskQuery.getEndTime()); - bo.setBelongDeptId(Long.valueOf(taskQuery.getGroupId())); + bo.setBelongDeptId(Convert.toLong(taskQuery.getGroupId())); TableDataInfo page = postService.selectPagePostList(bo, pageQuery); // 使用封装的字段映射方法进行转换 List handlers = TaskAssigneeDTO.convertToHandlerList(page.getRows(), @@ -98,7 +99,7 @@ public class SysTaskAssigneeServiceImpl implements TaskAssigneeService { Map params = bo.getParams(); params.put("beginTime", taskQuery.getBeginTime()); params.put("endTime", taskQuery.getEndTime()); - bo.setBelongDeptId(Long.valueOf(taskQuery.getGroupId())); + bo.setBelongDeptId(Convert.toLong(taskQuery.getGroupId())); TableDataInfo page = deptService.selectPageDeptList(bo, pageQuery); // 使用封装的字段映射方法进行转换 List handlers = TaskAssigneeDTO.convertToHandlerList(page.getRows(), @@ -122,7 +123,7 @@ public class SysTaskAssigneeServiceImpl implements TaskAssigneeService { Map params = bo.getParams(); params.put("beginTime", taskQuery.getBeginTime()); params.put("endTime", taskQuery.getEndTime()); - bo.setDeptId(Long.valueOf(taskQuery.getGroupId())); + bo.setDeptId(Convert.toLong(taskQuery.getGroupId())); TableDataInfo page = userService.selectPageUserList(bo, pageQuery); // 使用封装的字段映射方法进行转换 List handlers = TaskAssigneeDTO.convertToHandlerList(page.getRows(), -- Gitee From 5de1ffff9008fa949e175c8bbaf716268e58ef25 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 21 Mar 2025 13:53:23 +0800 Subject: [PATCH 490/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20excel?= =?UTF-8?q?=E5=AF=BC=E5=87=BA=20=E4=B8=8B=E6=8B=89=E6=A1=86=E6=94=AF?= =?UTF-8?q?=E6=8C=81=E9=A1=BA=E5=BA=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/org/dromara/common/excel/core/ExcelDownHandler.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/core/ExcelDownHandler.java b/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/core/ExcelDownHandler.java index 32fee7a6c..e8752653f 100644 --- a/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/core/ExcelDownHandler.java +++ b/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/core/ExcelDownHandler.java @@ -16,6 +16,7 @@ import org.apache.poi.ss.usermodel.*; import org.apache.poi.ss.util.CellRangeAddressList; import org.apache.poi.ss.util.WorkbookUtil; import org.apache.poi.xssf.usermodel.XSSFDataValidation; +import org.dromara.common.core.domain.dto.DictDataDTO; import org.dromara.common.core.exception.ServiceException; import org.dromara.common.core.service.DictService; import org.dromara.common.core.utils.SpringUtils; @@ -102,9 +103,9 @@ public class ExcelDownHandler implements SheetWriteHandler { String converterExp = format.readConverterExp(); if (StringUtils.isNotBlank(dictType)) { // 如果传递了字典名,则依据字典建立下拉 - Collection values = Optional.ofNullable(dictService.getAllDictByDictType(dictType)) + Collection values = Optional.ofNullable(dictService.getDictData(dictType)) .orElseThrow(() -> new ServiceException(String.format("字典 %s 不存在", dictType))) - .values(); + .stream().map(DictDataDTO::getDictLabel).toList(); options = new ArrayList<>(values); } else if (StringUtils.isNotBlank(converterExp)) { // 如果指定了确切的值,则直接解析确切的值 -- Gitee From 0f95e9393d7ff3be1d5ea3960dfda5ac3feb59ed Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 21 Mar 2025 13:55:38 +0800 Subject: [PATCH 491/540] update springboot 3.4.3 => 3.4.4 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 281035978..2c6e4f134 100644 --- a/pom.xml +++ b/pom.xml @@ -14,7 +14,7 @@ 5.3.1-BETA - 3.4.3 + 3.4.4 UTF-8 UTF-8 17 -- Gitee From 5626b97a19cd7c0415d3be560e8661c6e3ce14f5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 21 Mar 2025 14:42:58 +0800 Subject: [PATCH 492/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E5=85=BC?= =?UTF-8?q?=E5=AE=B9=E8=80=81=E7=89=88=E6=9C=AC=E6=95=B0=E6=8D=AE=E6=9D=83?= =?UTF-8?q?=E9=99=90=E7=94=A8=E6=88=B7=E5=86=99=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../handler/PlusDataPermissionHandler.java | 33 ++++++++++++++++--- 1 file changed, 29 insertions(+), 4 deletions(-) diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/PlusDataPermissionHandler.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/PlusDataPermissionHandler.java index a3547075b..6dee1214a 100644 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/PlusDataPermissionHandler.java +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/PlusDataPermissionHandler.java @@ -35,6 +35,7 @@ import org.springframework.expression.spel.standard.SpelExpressionParser; import org.springframework.expression.spel.support.StandardEvaluationContext; import org.springframework.util.ClassUtils; +import java.lang.reflect.Method; import java.util.*; import java.util.concurrent.ConcurrentHashMap; import java.util.function.Function; @@ -229,10 +230,7 @@ public class PlusDataPermissionHandler { // 获取资源对应的类对象 Class clazz = Resources.classForName(classMetadata.getClassName()); // 查找类中的特定注解 - if (AnnotationUtil.hasAnnotation(clazz, DataPermission.class)) { - DataPermission dataPermission = AnnotationUtil.getAnnotation(clazz, DataPermission.class); - dataPermissionCacheMap.put(clazz.getName(), dataPermission); - } + findAnnotation(clazz); } } } catch (Exception e) { @@ -240,6 +238,29 @@ public class PlusDataPermissionHandler { } } + /** + * 在指定的类中查找特定的注解 DataPermission,并将带有这个注解的方法或类存储到 dataPermissionCacheMap 中 + * + * @param clazz 要查找的类 + */ + private void findAnnotation(Class clazz) { + DataPermission dataPermission; + for (Method method : clazz.getMethods()) { + if (method.isDefault() || method.isVarArgs()) { + continue; + } + String mappedStatementId = clazz.getName() + "." + method.getName(); + if (AnnotationUtil.hasAnnotation(method, DataPermission.class)) { + dataPermission = AnnotationUtil.getAnnotation(method, DataPermission.class); + dataPermissionCacheMap.put(mappedStatementId, dataPermission); + } + } + if (AnnotationUtil.hasAnnotation(clazz, DataPermission.class)) { + dataPermission = AnnotationUtil.getAnnotation(clazz, DataPermission.class); + dataPermissionCacheMap.put(clazz.getName(), dataPermission); + } + } + /** * 根据映射语句 ID 或类名获取对应的 DataPermission 注解对象 * @@ -251,6 +272,10 @@ public class PlusDataPermissionHandler { if (DataPermissionHelper.getPermission() != null) { return DataPermissionHelper.getPermission(); } + // 检查缓存中是否包含映射语句 ID 对应的 DataPermission 注解对象 + if (dataPermissionCacheMap.containsKey(mapperId)) { + return dataPermissionCacheMap.get(mapperId); + } // 如果缓存中不包含映射语句 ID 对应的 DataPermission 注解对象,则尝试使用类名作为键查找 String clazzName = mapperId.substring(0, mapperId.lastIndexOf(".")); if (dataPermissionCacheMap.containsKey(clazzName)) { -- Gitee From c0eeafb5cdeb6026a74542641b1d9b0c2fc14a3d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 21 Mar 2025 15:14:54 +0800 Subject: [PATCH 493/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20excel?= =?UTF-8?q?=E5=AF=BC=E5=87=BA=20=E4=B8=8B=E6=8B=89=E6=A1=86=E6=94=AF?= =?UTF-8?q?=E6=8C=81=E9=A1=BA=E5=BA=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dromara/common/excel/core/ExcelDownHandler.java | 5 ++--- .../system/service/impl/SysDictTypeServiceImpl.java | 12 +++++++----- 2 files changed, 9 insertions(+), 8 deletions(-) diff --git a/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/core/ExcelDownHandler.java b/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/core/ExcelDownHandler.java index e8752653f..32fee7a6c 100644 --- a/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/core/ExcelDownHandler.java +++ b/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/core/ExcelDownHandler.java @@ -16,7 +16,6 @@ import org.apache.poi.ss.usermodel.*; import org.apache.poi.ss.util.CellRangeAddressList; import org.apache.poi.ss.util.WorkbookUtil; import org.apache.poi.xssf.usermodel.XSSFDataValidation; -import org.dromara.common.core.domain.dto.DictDataDTO; import org.dromara.common.core.exception.ServiceException; import org.dromara.common.core.service.DictService; import org.dromara.common.core.utils.SpringUtils; @@ -103,9 +102,9 @@ public class ExcelDownHandler implements SheetWriteHandler { String converterExp = format.readConverterExp(); if (StringUtils.isNotBlank(dictType)) { // 如果传递了字典名,则依据字典建立下拉 - Collection values = Optional.ofNullable(dictService.getDictData(dictType)) + Collection values = Optional.ofNullable(dictService.getAllDictByDictType(dictType)) .orElseThrow(() -> new ServiceException(String.format("字典 %s 不存在", dictType))) - .stream().map(DictDataDTO::getDictLabel).toList(); + .values(); options = new ArrayList<>(values); } else if (StringUtils.isNotBlank(converterExp)) { // 如果指定了确切的值,则直接解析确切的值 diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDictTypeServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDictTypeServiceImpl.java index 1e5188c38..c417b42ca 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDictTypeServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDictTypeServiceImpl.java @@ -33,10 +33,7 @@ import org.springframework.cache.annotation.Cacheable; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import java.util.Map; +import java.util.*; import java.util.stream.Collectors; /** @@ -265,7 +262,12 @@ public class SysDictTypeServiceImpl implements ISysDictTypeService, DictService @Override public Map getAllDictByDictType(String dictType) { List list = SpringUtils.getAopProxy(this).selectDictDataByType(dictType); - return StreamUtils.toMap(list, SysDictDataVo::getDictValue, SysDictDataVo::getDictLabel); + // 保证顺序 + LinkedHashMap map = new LinkedHashMap<>(); + for (SysDictDataVo vo : list) { + map.put(vo.getDictValue(), vo.getDictLabel()); + } + return map; } /** -- Gitee From fe40d7db32a8147c6d0dc2338675a4e779432df2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 21 Mar 2025 15:17:31 +0800 Subject: [PATCH 494/540] =?UTF-8?q?=E5=8F=91=E5=B8=83=205.3.1-BETA2=20?= =?UTF-8?q?=E5=85=AC=E6=B5=8B=E7=89=88=E6=9C=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .run/ruoyi-monitor-admin.run.xml | 2 +- .run/ruoyi-server.run.xml | 2 +- .run/ruoyi-snailjob-server.run.xml | 2 +- README.md | 2 +- pom.xml | 2 +- ruoyi-common/ruoyi-common-bom/pom.xml | 2 +- script/docker/docker-compose.yml | 8 ++++---- 7 files changed, 10 insertions(+), 10 deletions(-) diff --git a/.run/ruoyi-monitor-admin.run.xml b/.run/ruoyi-monitor-admin.run.xml index 4e0c21057..3b5b97b4d 100644 --- a/.run/ruoyi-monitor-admin.run.xml +++ b/.run/ruoyi-monitor-admin.run.xml @@ -2,7 +2,7 @@ - diff --git a/.run/ruoyi-server.run.xml b/.run/ruoyi-server.run.xml index bf72a8bae..dddc04057 100644 --- a/.run/ruoyi-server.run.xml +++ b/.run/ruoyi-server.run.xml @@ -2,7 +2,7 @@ - diff --git a/.run/ruoyi-snailjob-server.run.xml b/.run/ruoyi-snailjob-server.run.xml index 885007b07..e48c539d2 100644 --- a/.run/ruoyi-snailjob-server.run.xml +++ b/.run/ruoyi-snailjob-server.run.xml @@ -2,7 +2,7 @@ - diff --git a/README.md b/README.md index 08832377e..ca67c874a 100644 --- a/README.md +++ b/README.md @@ -10,7 +10,7 @@ [![License](https://img.shields.io/badge/License-MIT-blue.svg)](https://gitee.com/dromara/RuoYi-Vue-Plus/blob/master/LICENSE) [![使用IntelliJ IDEA开发维护](https://img.shields.io/badge/IntelliJ%20IDEA-提供支持-blue.svg)](https://www.jetbrains.com/?from=RuoYi-Vue-Plus)
    -[![RuoYi-Vue-Plus](https://img.shields.io/badge/RuoYi_Vue_Plus-5.3.0--BETA-success.svg)](https://gitee.com/dromara/RuoYi-Vue-Plus) +[![RuoYi-Vue-Plus](https://img.shields.io/badge/RuoYi_Vue_Plus-5.3.0--BETA2-success.svg)](https://gitee.com/dromara/RuoYi-Vue-Plus) [![Spring Boot](https://img.shields.io/badge/Spring%20Boot-3.4-blue.svg)]() [![JDK-17](https://img.shields.io/badge/JDK-17-green.svg)]() [![JDK-21](https://img.shields.io/badge/JDK-21-green.svg)]() diff --git a/pom.xml b/pom.xml index 2c6e4f134..c99cbb252 100644 --- a/pom.xml +++ b/pom.xml @@ -13,7 +13,7 @@ Dromara RuoYi-Vue-Plus多租户管理系统 - 5.3.1-BETA + 5.3.1-BETA2 3.4.4 UTF-8 UTF-8 diff --git a/ruoyi-common/ruoyi-common-bom/pom.xml b/ruoyi-common/ruoyi-common-bom/pom.xml index e82179891..c8ea1ffa4 100644 --- a/ruoyi-common/ruoyi-common-bom/pom.xml +++ b/ruoyi-common/ruoyi-common-bom/pom.xml @@ -14,7 +14,7 @@ - 5.3.1-BETA + 5.3.1-BETA2 diff --git a/script/docker/docker-compose.yml b/script/docker/docker-compose.yml index 35979cb3a..cd5b567a3 100644 --- a/script/docker/docker-compose.yml +++ b/script/docker/docker-compose.yml @@ -98,7 +98,7 @@ services: network_mode: "host" ruoyi-server1: - image: ruoyi/ruoyi-server:5.3.1-BETA + image: ruoyi/ruoyi-server:5.3.1-BETA2 container_name: ruoyi-server1 environment: # 时区上海 @@ -113,7 +113,7 @@ services: network_mode: "host" ruoyi-server2: - image: ruoyi/ruoyi-server:5.3.1-BETA + image: ruoyi/ruoyi-server:5.3.1-BETA2 container_name: ruoyi-server2 environment: # 时区上海 @@ -128,7 +128,7 @@ services: network_mode: "host" ruoyi-monitor-admin: - image: ruoyi/ruoyi-monitor-admin:5.3.1-BETA + image: ruoyi/ruoyi-monitor-admin:5.3.1-BETA2 container_name: ruoyi-monitor-admin environment: # 时区上海 @@ -140,7 +140,7 @@ services: network_mode: "host" ruoyi-snailjob-server: - image: ruoyi/ruoyi-snailjob-server:5.3.1-BETA + image: ruoyi/ruoyi-snailjob-server:5.3.1-BETA2 container_name: ruoyi-snailjob-server environment: # 时区上海 -- Gitee From 4e62054bd1191e127a706f0e056698e645191410 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Wed, 26 Mar 2025 14:30:25 +0800 Subject: [PATCH 495/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20=E8=B7=A8?= =?UTF-8?q?=E5=9F=9F=E6=9C=AA=E8=AE=BE=E7=BD=AE=E8=AF=B7=E6=B1=82=E5=A4=B4?= =?UTF-8?q?=E9=97=AE=E9=A2=98(cloud=E7=89=88=E6=9C=AC=E4=B8=8D=E9=9C=80?= =?UTF-8?q?=E8=A6=81=20vue=E7=89=88=E6=9C=AC=E9=9C=80=E8=A6=81)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/encrypt/filter/EncryptResponseBodyWrapper.java | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/ruoyi-common/ruoyi-common-encrypt/src/main/java/org/dromara/common/encrypt/filter/EncryptResponseBodyWrapper.java b/ruoyi-common/ruoyi-common-encrypt/src/main/java/org/dromara/common/encrypt/filter/EncryptResponseBodyWrapper.java index 7bbca49d0..78e06ff73 100644 --- a/ruoyi-common/ruoyi-common-encrypt/src/main/java/org/dromara/common/encrypt/filter/EncryptResponseBodyWrapper.java +++ b/ruoyi-common/ruoyi-common-encrypt/src/main/java/org/dromara/common/encrypt/filter/EncryptResponseBodyWrapper.java @@ -76,9 +76,14 @@ public class EncryptResponseBodyWrapper extends HttpServletResponseWrapper { String encryptPassword = EncryptUtils.encryptByRsa(encryptAes, publicKey); // 设置响应头 + // vue版本需要设置 + servletResponse.addHeader("Access-Control-Expose-Headers", headerFlag); + servletResponse.setHeader("Access-Control-Allow-Origin", "*"); + servletResponse.setHeader("Access-Control-Allow-Methods", "*"); servletResponse.setHeader(headerFlag, encryptPassword); servletResponse.setCharacterEncoding(StandardCharsets.UTF_8.toString()); + // 获取原始内容 String originalBody = this.getContent(); // 对内容进行加密 -- Gitee From 4d925a4d6229d2a52f7a517b8481b4fdfa9d9306 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Wed, 26 Mar 2025 15:18:39 +0800 Subject: [PATCH 496/540] =?UTF-8?q?update=20mybatis-plus=203.5.10.1=20=3D>?= =?UTF-8?q?=203.5.11=20update=20snailjob=201.4.0-beta2=20=3D>=201.4.0=20?= =?UTF-8?q?=E6=AD=A3=E5=BC=8F=E7=89=88?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 4 ++-- .../src/main/resources/application-dev.yml | 4 +--- .../src/main/resources/application-prod.yml | 4 +--- 3 files changed, 4 insertions(+), 8 deletions(-) diff --git a/pom.xml b/pom.xml index c99cbb252..51e36eb12 100644 --- a/pom.xml +++ b/pom.xml @@ -24,14 +24,14 @@ 4.0.3 2.3 1.40.0 - 3.5.10.1 + 3.5.11 3.9.1 5.8.35 3.4.5 3.45.1 2.2.7 4.3.1 - 1.4.0-beta2 + 1.4.0 1.4.6 0.2.0 1.18.36 diff --git a/ruoyi-extend/ruoyi-snailjob-server/src/main/resources/application-dev.yml b/ruoyi-extend/ruoyi-snailjob-server/src/main/resources/application-dev.yml index caf5dba55..aaf474895 100644 --- a/ruoyi-extend/ruoyi-snailjob-server/src/main/resources/application-dev.yml +++ b/ruoyi-extend/ruoyi-snailjob-server/src/main/resources/application-dev.yml @@ -22,10 +22,8 @@ snail-job: job-pull-page-size: 1000 # 服务器端口 server-port: 17888 - # 号段模式下步长配置 - step: 100 # 日志保存时间(单位: day) - log-storage: 90 + log-storage: 7 rpc-type: grpc --- # 监控中心配置 diff --git a/ruoyi-extend/ruoyi-snailjob-server/src/main/resources/application-prod.yml b/ruoyi-extend/ruoyi-snailjob-server/src/main/resources/application-prod.yml index caf5dba55..aaf474895 100644 --- a/ruoyi-extend/ruoyi-snailjob-server/src/main/resources/application-prod.yml +++ b/ruoyi-extend/ruoyi-snailjob-server/src/main/resources/application-prod.yml @@ -22,10 +22,8 @@ snail-job: job-pull-page-size: 1000 # 服务器端口 server-port: 17888 - # 号段模式下步长配置 - step: 100 # 日志保存时间(单位: day) - log-storage: 90 + log-storage: 7 rpc-type: grpc --- # 监控中心配置 -- Gitee From c2f67b4a7795ab60db5f2b9d9f01bb898d7b8889 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 27 Mar 2025 09:32:16 +0800 Subject: [PATCH 497/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E7=BB=9F?= =?UTF-8?q?=E4=B8=80=E7=94=A8=E6=88=B7=E5=AF=86=E7=A0=81=E6=A0=A1=E9=AA=8C?= =?UTF-8?q?=E9=95=BF=E5=BA=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dromara/common/core/domain/model/PasswordLoginBody.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/model/PasswordLoginBody.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/model/PasswordLoginBody.java index 87d0e8e73..36e33b24b 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/model/PasswordLoginBody.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/model/PasswordLoginBody.java @@ -18,14 +18,14 @@ public class PasswordLoginBody extends LoginBody { * 用户名 */ @NotBlank(message = "{user.username.not.blank}") - @Length(min = 2, max = 20, message = "{user.username.length.valid}") + @Length(min = 2, max = 30, message = "{user.username.length.valid}") private String username; /** * 用户密码 */ @NotBlank(message = "{user.password.not.blank}") - @Length(min = 5, max = 20, message = "{user.password.length.valid}") + @Length(min = 5, max = 30, message = "{user.password.length.valid}") private String password; } -- Gitee From 26abb987471340504ee0a7ea4cef9b3f2098b802 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 27 Mar 2025 10:03:16 +0800 Subject: [PATCH 498/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20excel?= =?UTF-8?q?=E6=A8=A1=E6=9D=BF=E5=AF=BC=E5=87=BA=E6=95=B0=E6=8D=AE=E8=A2=AB?= =?UTF-8?q?=E8=A6=86=E7=9B=96=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/org/dromara/common/excel/utils/ExcelUtil.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/utils/ExcelUtil.java b/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/utils/ExcelUtil.java index b22e6f987..0e9569677 100644 --- a/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/utils/ExcelUtil.java +++ b/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/utils/ExcelUtil.java @@ -245,9 +245,10 @@ public class ExcelUtil { .registerWriteHandler(new DataWriteHandler(data.get(0).getClass())) .build(); WriteSheet writeSheet = EasyExcel.writerSheet().build(); + FillConfig fillConfig = FillConfig.builder().forceNewRow(Boolean.TRUE).build(); // 单表多数据导出 模板格式为 {.属性} for (T d : data) { - excelWriter.fill(d, writeSheet); + excelWriter.fill(d, fillConfig, writeSheet); } excelWriter.finish(); } @@ -320,7 +321,7 @@ public class ExcelUtil { // 多表导出必须使用 FillWrapper excelWriter.fill(new FillWrapper(map.getKey(), (Collection) map.getValue()), fillConfig, writeSheet); } else { - excelWriter.fill(map.getValue(), writeSheet); + excelWriter.fill(map.getValue(), fillConfig, writeSheet); } } excelWriter.finish(); -- Gitee From 34031cae8decce479053f390431826e3f76359bc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 27 Mar 2025 10:38:48 +0800 Subject: [PATCH 499/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E5=88=A0?= =?UTF-8?q?=E9=99=A4=E6=97=A0=E7=94=A8=E9=85=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ruoyi-extend/ruoyi-monitor-admin/pom.xml | 3 --- 1 file changed, 3 deletions(-) diff --git a/ruoyi-extend/ruoyi-monitor-admin/pom.xml b/ruoyi-extend/ruoyi-monitor-admin/pom.xml index 77c9eb71a..538ffbd9f 100644 --- a/ruoyi-extend/ruoyi-monitor-admin/pom.xml +++ b/ruoyi-extend/ruoyi-monitor-admin/pom.xml @@ -59,9 +59,6 @@ org.springframework.boot spring-boot-maven-plugin ${spring-boot.version} - - - -- Gitee From 3761473967772f4accbd74756cbd990f2d945a9d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 27 Mar 2025 10:45:00 +0800 Subject: [PATCH 500/540] =?UTF-8?q?=F0=9F=90=B3=E5=8F=91=E5=B8=83=205.3.1?= =?UTF-8?q?=20=E6=AD=A3=E5=BC=8F=E7=89=88?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .run/ruoyi-monitor-admin.run.xml | 2 +- .run/ruoyi-server.run.xml | 2 +- .run/ruoyi-snailjob-server.run.xml | 2 +- README.md | 2 +- pom.xml | 2 +- ruoyi-common/ruoyi-common-bom/pom.xml | 2 +- script/docker/docker-compose.yml | 8 ++++---- 7 files changed, 10 insertions(+), 10 deletions(-) diff --git a/.run/ruoyi-monitor-admin.run.xml b/.run/ruoyi-monitor-admin.run.xml index 3b5b97b4d..065ff01a7 100644 --- a/.run/ruoyi-monitor-admin.run.xml +++ b/.run/ruoyi-monitor-admin.run.xml @@ -2,7 +2,7 @@ - diff --git a/.run/ruoyi-server.run.xml b/.run/ruoyi-server.run.xml index dddc04057..6c5031edb 100644 --- a/.run/ruoyi-server.run.xml +++ b/.run/ruoyi-server.run.xml @@ -2,7 +2,7 @@ - diff --git a/.run/ruoyi-snailjob-server.run.xml b/.run/ruoyi-snailjob-server.run.xml index e48c539d2..859902ac1 100644 --- a/.run/ruoyi-snailjob-server.run.xml +++ b/.run/ruoyi-snailjob-server.run.xml @@ -2,7 +2,7 @@ - diff --git a/README.md b/README.md index ca67c874a..fc3131a24 100644 --- a/README.md +++ b/README.md @@ -10,7 +10,7 @@ [![License](https://img.shields.io/badge/License-MIT-blue.svg)](https://gitee.com/dromara/RuoYi-Vue-Plus/blob/master/LICENSE) [![使用IntelliJ IDEA开发维护](https://img.shields.io/badge/IntelliJ%20IDEA-提供支持-blue.svg)](https://www.jetbrains.com/?from=RuoYi-Vue-Plus)
    -[![RuoYi-Vue-Plus](https://img.shields.io/badge/RuoYi_Vue_Plus-5.3.0--BETA2-success.svg)](https://gitee.com/dromara/RuoYi-Vue-Plus) +[![RuoYi-Vue-Plus](https://img.shields.io/badge/RuoYi_Vue_Plus-5.3.0-success.svg)](https://gitee.com/dromara/RuoYi-Vue-Plus) [![Spring Boot](https://img.shields.io/badge/Spring%20Boot-3.4-blue.svg)]() [![JDK-17](https://img.shields.io/badge/JDK-17-green.svg)]() [![JDK-21](https://img.shields.io/badge/JDK-21-green.svg)]() diff --git a/pom.xml b/pom.xml index 51e36eb12..f1362f2e3 100644 --- a/pom.xml +++ b/pom.xml @@ -13,7 +13,7 @@ Dromara RuoYi-Vue-Plus多租户管理系统 - 5.3.1-BETA2 + 5.3.1 3.4.4 UTF-8 UTF-8 diff --git a/ruoyi-common/ruoyi-common-bom/pom.xml b/ruoyi-common/ruoyi-common-bom/pom.xml index c8ea1ffa4..62967c30d 100644 --- a/ruoyi-common/ruoyi-common-bom/pom.xml +++ b/ruoyi-common/ruoyi-common-bom/pom.xml @@ -14,7 +14,7 @@ - 5.3.1-BETA2 + 5.3.1 diff --git a/script/docker/docker-compose.yml b/script/docker/docker-compose.yml index cd5b567a3..fb35cae6f 100644 --- a/script/docker/docker-compose.yml +++ b/script/docker/docker-compose.yml @@ -98,7 +98,7 @@ services: network_mode: "host" ruoyi-server1: - image: ruoyi/ruoyi-server:5.3.1-BETA2 + image: ruoyi/ruoyi-server:5.3.1 container_name: ruoyi-server1 environment: # 时区上海 @@ -113,7 +113,7 @@ services: network_mode: "host" ruoyi-server2: - image: ruoyi/ruoyi-server:5.3.1-BETA2 + image: ruoyi/ruoyi-server:5.3.1 container_name: ruoyi-server2 environment: # 时区上海 @@ -128,7 +128,7 @@ services: network_mode: "host" ruoyi-monitor-admin: - image: ruoyi/ruoyi-monitor-admin:5.3.1-BETA2 + image: ruoyi/ruoyi-monitor-admin:5.3.1 container_name: ruoyi-monitor-admin environment: # 时区上海 @@ -140,7 +140,7 @@ services: network_mode: "host" ruoyi-snailjob-server: - image: ruoyi/ruoyi-snailjob-server:5.3.1-BETA2 + image: ruoyi/ruoyi-snailjob-server:5.3.1 container_name: ruoyi-snailjob-server environment: # 时区上海 -- Gitee From 16923cc86a036d3a53b152024275e6d1b498e1ba Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 28 Mar 2025 22:51:32 +0800 Subject: [PATCH 501/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E6=94=AF?= =?UTF-8?q?=E6=8C=81excel=E6=96=B9=E6=B3=95=E6=8A=9B=E5=87=BAjson=E5=BC=82?= =?UTF-8?q?=E5=B8=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dromara/common/excel/utils/ExcelUtil.java | 36 +++++++++++-------- 1 file changed, 22 insertions(+), 14 deletions(-) diff --git a/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/utils/ExcelUtil.java b/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/utils/ExcelUtil.java index 0e9569677..5c5e5ccca 100644 --- a/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/utils/ExcelUtil.java +++ b/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/utils/ExcelUtil.java @@ -23,7 +23,6 @@ import org.dromara.common.excel.handler.DataWriteHandler; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; -import java.io.UnsupportedEncodingException; import java.util.Collection; import java.util.List; import java.util.Map; @@ -84,7 +83,6 @@ public class ExcelUtil { */ public static void exportExcel(List list, String sheetName, Class clazz, HttpServletResponse response) { try { - resetResponse(sheetName, response); ServletOutputStream os = response.getOutputStream(); exportExcel(list, sheetName, clazz, false, os, null); } catch (IOException e) { @@ -103,7 +101,6 @@ public class ExcelUtil { */ public static void exportExcel(List list, String sheetName, Class clazz, HttpServletResponse response, List options) { try { - resetResponse(sheetName, response); ServletOutputStream os = response.getOutputStream(); exportExcel(list, sheetName, clazz, false, os, options); } catch (IOException e) { @@ -122,7 +119,6 @@ public class ExcelUtil { */ public static void exportExcel(List list, String sheetName, Class clazz, boolean merge, HttpServletResponse response) { try { - resetResponse(sheetName, response); ServletOutputStream os = response.getOutputStream(); exportExcel(list, sheetName, clazz, merge, os, null); } catch (IOException e) { @@ -142,7 +138,6 @@ public class ExcelUtil { */ public static void exportExcel(List list, String sheetName, Class clazz, boolean merge, HttpServletResponse response, List options) { try { - resetResponse(sheetName, response); ServletOutputStream os = response.getOutputStream(); exportExcel(list, sheetName, clazz, merge, os, options); } catch (IOException e) { @@ -186,6 +181,12 @@ public class ExcelUtil { */ public static void exportExcel(List list, String sheetName, Class clazz, boolean merge, OutputStream os, List options) { + if (CollUtil.isEmpty(list)) { + throw new IllegalArgumentException("数据为空"); + } + if (os instanceof HttpServletResponse response) { + resetResponse(sheetName, response); + } ExcelWriterSheetBuilder builder = EasyExcel.write(os, clazz) .autoCloseStream(false) // 自动适配 @@ -215,9 +216,8 @@ public class ExcelUtil { */ public static void exportTemplate(List data, String filename, String templatePath, HttpServletResponse response) { try { - resetResponse(filename, response); ServletOutputStream os = response.getOutputStream(); - exportTemplate(data, templatePath, os); + exportTemplate(data, filename, templatePath, os); } catch (IOException e) { throw new RuntimeException("导出Excel异常"); } @@ -232,10 +232,13 @@ public class ExcelUtil { * @param data 模板需要的数据 * @param os 输出流 */ - public static void exportTemplate(List data, String templatePath, OutputStream os) { + public static void exportTemplate(List data, String filename, String templatePath, OutputStream os) { if (CollUtil.isEmpty(data)) { throw new IllegalArgumentException("数据为空"); } + if (os instanceof HttpServletResponse response) { + resetResponse(filename, response); + } ClassPathResource templateResource = new ClassPathResource(templatePath); ExcelWriter excelWriter = EasyExcel.write(os) .withTemplate(templateResource.getStream()) @@ -267,7 +270,7 @@ public class ExcelUtil { try { resetResponse(filename, response); ServletOutputStream os = response.getOutputStream(); - exportTemplateMultiList(data, templatePath, os); + exportTemplateMultiList(data, filename, templatePath, os); } catch (IOException e) { throw new RuntimeException("导出Excel异常"); } @@ -285,9 +288,8 @@ public class ExcelUtil { */ public static void exportTemplateMultiSheet(List> data, String filename, String templatePath, HttpServletResponse response) { try { - resetResponse(filename, response); ServletOutputStream os = response.getOutputStream(); - exportTemplateMultiSheet(data, templatePath, os); + exportTemplateMultiSheet(data, filename, templatePath, os); } catch (IOException e) { throw new RuntimeException("导出Excel异常"); } @@ -302,10 +304,13 @@ public class ExcelUtil { * @param data 模板需要的数据 * @param os 输出流 */ - public static void exportTemplateMultiList(Map data, String templatePath, OutputStream os) { + public static void exportTemplateMultiList(Map data, String filename, String templatePath, OutputStream os) { if (CollUtil.isEmpty(data)) { throw new IllegalArgumentException("数据为空"); } + if (os instanceof HttpServletResponse response) { + resetResponse(filename, response); + } ClassPathResource templateResource = new ClassPathResource(templatePath); ExcelWriter excelWriter = EasyExcel.write(os) .withTemplate(templateResource.getStream()) @@ -336,10 +341,13 @@ public class ExcelUtil { * @param data 模板需要的数据 * @param os 输出流 */ - public static void exportTemplateMultiSheet(List> data, String templatePath, OutputStream os) { + public static void exportTemplateMultiSheet(List> data, String filename, String templatePath, OutputStream os) { if (CollUtil.isEmpty(data)) { throw new IllegalArgumentException("数据为空"); } + if (os instanceof HttpServletResponse response) { + resetResponse(filename, response); + } ClassPathResource templateResource = new ClassPathResource(templatePath); ExcelWriter excelWriter = EasyExcel.write(os) .withTemplate(templateResource.getStream()) @@ -366,7 +374,7 @@ public class ExcelUtil { /** * 重置响应体 */ - private static void resetResponse(String sheetName, HttpServletResponse response) throws UnsupportedEncodingException { + private static void resetResponse(String sheetName, HttpServletResponse response) { String filename = encodingFilename(sheetName); FileUtils.setAttachmentResponseHeader(response, filename); response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8"); -- Gitee From 7129ad4fac42e43980524f2942c6326b403481f5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 28 Mar 2025 23:11:11 +0800 Subject: [PATCH 502/540] =?UTF-8?q?Revert=20"update=20=E4=BC=98=E5=8C=96?= =?UTF-8?q?=20=E6=94=AF=E6=8C=81excel=E6=96=B9=E6=B3=95=E6=8A=9B=E5=87=BAj?= =?UTF-8?q?son=E5=BC=82=E5=B8=B8"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This reverts commit 16923cc86a036d3a53b152024275e6d1b498e1ba. --- .../dromara/common/excel/utils/ExcelUtil.java | 36 ++++++++----------- 1 file changed, 14 insertions(+), 22 deletions(-) diff --git a/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/utils/ExcelUtil.java b/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/utils/ExcelUtil.java index 5c5e5ccca..0e9569677 100644 --- a/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/utils/ExcelUtil.java +++ b/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/utils/ExcelUtil.java @@ -23,6 +23,7 @@ import org.dromara.common.excel.handler.DataWriteHandler; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; +import java.io.UnsupportedEncodingException; import java.util.Collection; import java.util.List; import java.util.Map; @@ -83,6 +84,7 @@ public class ExcelUtil { */ public static void exportExcel(List list, String sheetName, Class clazz, HttpServletResponse response) { try { + resetResponse(sheetName, response); ServletOutputStream os = response.getOutputStream(); exportExcel(list, sheetName, clazz, false, os, null); } catch (IOException e) { @@ -101,6 +103,7 @@ public class ExcelUtil { */ public static void exportExcel(List list, String sheetName, Class clazz, HttpServletResponse response, List options) { try { + resetResponse(sheetName, response); ServletOutputStream os = response.getOutputStream(); exportExcel(list, sheetName, clazz, false, os, options); } catch (IOException e) { @@ -119,6 +122,7 @@ public class ExcelUtil { */ public static void exportExcel(List list, String sheetName, Class clazz, boolean merge, HttpServletResponse response) { try { + resetResponse(sheetName, response); ServletOutputStream os = response.getOutputStream(); exportExcel(list, sheetName, clazz, merge, os, null); } catch (IOException e) { @@ -138,6 +142,7 @@ public class ExcelUtil { */ public static void exportExcel(List list, String sheetName, Class clazz, boolean merge, HttpServletResponse response, List options) { try { + resetResponse(sheetName, response); ServletOutputStream os = response.getOutputStream(); exportExcel(list, sheetName, clazz, merge, os, options); } catch (IOException e) { @@ -181,12 +186,6 @@ public class ExcelUtil { */ public static void exportExcel(List list, String sheetName, Class clazz, boolean merge, OutputStream os, List options) { - if (CollUtil.isEmpty(list)) { - throw new IllegalArgumentException("数据为空"); - } - if (os instanceof HttpServletResponse response) { - resetResponse(sheetName, response); - } ExcelWriterSheetBuilder builder = EasyExcel.write(os, clazz) .autoCloseStream(false) // 自动适配 @@ -216,8 +215,9 @@ public class ExcelUtil { */ public static void exportTemplate(List data, String filename, String templatePath, HttpServletResponse response) { try { + resetResponse(filename, response); ServletOutputStream os = response.getOutputStream(); - exportTemplate(data, filename, templatePath, os); + exportTemplate(data, templatePath, os); } catch (IOException e) { throw new RuntimeException("导出Excel异常"); } @@ -232,13 +232,10 @@ public class ExcelUtil { * @param data 模板需要的数据 * @param os 输出流 */ - public static void exportTemplate(List data, String filename, String templatePath, OutputStream os) { + public static void exportTemplate(List data, String templatePath, OutputStream os) { if (CollUtil.isEmpty(data)) { throw new IllegalArgumentException("数据为空"); } - if (os instanceof HttpServletResponse response) { - resetResponse(filename, response); - } ClassPathResource templateResource = new ClassPathResource(templatePath); ExcelWriter excelWriter = EasyExcel.write(os) .withTemplate(templateResource.getStream()) @@ -270,7 +267,7 @@ public class ExcelUtil { try { resetResponse(filename, response); ServletOutputStream os = response.getOutputStream(); - exportTemplateMultiList(data, filename, templatePath, os); + exportTemplateMultiList(data, templatePath, os); } catch (IOException e) { throw new RuntimeException("导出Excel异常"); } @@ -288,8 +285,9 @@ public class ExcelUtil { */ public static void exportTemplateMultiSheet(List> data, String filename, String templatePath, HttpServletResponse response) { try { + resetResponse(filename, response); ServletOutputStream os = response.getOutputStream(); - exportTemplateMultiSheet(data, filename, templatePath, os); + exportTemplateMultiSheet(data, templatePath, os); } catch (IOException e) { throw new RuntimeException("导出Excel异常"); } @@ -304,13 +302,10 @@ public class ExcelUtil { * @param data 模板需要的数据 * @param os 输出流 */ - public static void exportTemplateMultiList(Map data, String filename, String templatePath, OutputStream os) { + public static void exportTemplateMultiList(Map data, String templatePath, OutputStream os) { if (CollUtil.isEmpty(data)) { throw new IllegalArgumentException("数据为空"); } - if (os instanceof HttpServletResponse response) { - resetResponse(filename, response); - } ClassPathResource templateResource = new ClassPathResource(templatePath); ExcelWriter excelWriter = EasyExcel.write(os) .withTemplate(templateResource.getStream()) @@ -341,13 +336,10 @@ public class ExcelUtil { * @param data 模板需要的数据 * @param os 输出流 */ - public static void exportTemplateMultiSheet(List> data, String filename, String templatePath, OutputStream os) { + public static void exportTemplateMultiSheet(List> data, String templatePath, OutputStream os) { if (CollUtil.isEmpty(data)) { throw new IllegalArgumentException("数据为空"); } - if (os instanceof HttpServletResponse response) { - resetResponse(filename, response); - } ClassPathResource templateResource = new ClassPathResource(templatePath); ExcelWriter excelWriter = EasyExcel.write(os) .withTemplate(templateResource.getStream()) @@ -374,7 +366,7 @@ public class ExcelUtil { /** * 重置响应体 */ - private static void resetResponse(String sheetName, HttpServletResponse response) { + private static void resetResponse(String sheetName, HttpServletResponse response) throws UnsupportedEncodingException { String filename = encodingFilename(sheetName); FileUtils.setAttachmentResponseHeader(response, filename); response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8"); -- Gitee From e71d6fa9837f74539ea6d943685668f75233d91b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 28 Mar 2025 23:12:40 +0800 Subject: [PATCH 503/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E6=94=AF?= =?UTF-8?q?=E6=8C=81excel=E6=96=B9=E6=B3=95=E6=8A=9B=E5=87=BAjson=E5=BC=82?= =?UTF-8?q?=E5=B8=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dromara/common/excel/utils/ExcelUtil.java | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/utils/ExcelUtil.java b/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/utils/ExcelUtil.java index 0e9569677..70ab31d9c 100644 --- a/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/utils/ExcelUtil.java +++ b/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/utils/ExcelUtil.java @@ -215,6 +215,9 @@ public class ExcelUtil { */ public static void exportTemplate(List data, String filename, String templatePath, HttpServletResponse response) { try { + if (CollUtil.isEmpty(data)) { + throw new IllegalArgumentException("数据为空"); + } resetResponse(filename, response); ServletOutputStream os = response.getOutputStream(); exportTemplate(data, templatePath, os); @@ -233,9 +236,6 @@ public class ExcelUtil { * @param os 输出流 */ public static void exportTemplate(List data, String templatePath, OutputStream os) { - if (CollUtil.isEmpty(data)) { - throw new IllegalArgumentException("数据为空"); - } ClassPathResource templateResource = new ClassPathResource(templatePath); ExcelWriter excelWriter = EasyExcel.write(os) .withTemplate(templateResource.getStream()) @@ -265,6 +265,9 @@ public class ExcelUtil { */ public static void exportTemplateMultiList(Map data, String filename, String templatePath, HttpServletResponse response) { try { + if (CollUtil.isEmpty(data)) { + throw new IllegalArgumentException("数据为空"); + } resetResponse(filename, response); ServletOutputStream os = response.getOutputStream(); exportTemplateMultiList(data, templatePath, os); @@ -285,6 +288,9 @@ public class ExcelUtil { */ public static void exportTemplateMultiSheet(List> data, String filename, String templatePath, HttpServletResponse response) { try { + if (CollUtil.isEmpty(data)) { + throw new IllegalArgumentException("数据为空"); + } resetResponse(filename, response); ServletOutputStream os = response.getOutputStream(); exportTemplateMultiSheet(data, templatePath, os); @@ -303,9 +309,6 @@ public class ExcelUtil { * @param os 输出流 */ public static void exportTemplateMultiList(Map data, String templatePath, OutputStream os) { - if (CollUtil.isEmpty(data)) { - throw new IllegalArgumentException("数据为空"); - } ClassPathResource templateResource = new ClassPathResource(templatePath); ExcelWriter excelWriter = EasyExcel.write(os) .withTemplate(templateResource.getStream()) @@ -337,9 +340,6 @@ public class ExcelUtil { * @param os 输出流 */ public static void exportTemplateMultiSheet(List> data, String templatePath, OutputStream os) { - if (CollUtil.isEmpty(data)) { - throw new IllegalArgumentException("数据为空"); - } ClassPathResource templateResource = new ClassPathResource(templatePath); ExcelWriter excelWriter = EasyExcel.write(os) .withTemplate(templateResource.getStream()) -- Gitee From 124bcc4bba585d92007615309b95195f96566ca0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Mon, 31 Mar 2025 09:41:46 +0800 Subject: [PATCH 504/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20sse=20?= =?UTF-8?q?=E5=88=A0=E9=99=A4=E4=B9=8B=E5=90=8E=20=E6=89=8B=E5=8A=A8?= =?UTF-8?q?=E8=A7=A6=E5=8F=91=E5=AE=8C=E6=88=90=20=E9=98=B2=E6=AD=A2?= =?UTF-8?q?=E5=86=85=E5=AD=98=E6=B3=84=E6=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/sse/core/SseEmitterManager.java | 30 ++++++++++++++----- 1 file changed, 23 insertions(+), 7 deletions(-) diff --git a/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/core/SseEmitterManager.java b/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/core/SseEmitterManager.java index 64dfcff37..ccf358ae3 100644 --- a/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/core/SseEmitterManager.java +++ b/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/core/SseEmitterManager.java @@ -39,14 +39,27 @@ public class SseEmitterManager { Map emitters = USER_TOKEN_EMITTERS.computeIfAbsent(userId, k -> new ConcurrentHashMap<>()); // 创建一个新的 SseEmitter 实例,超时时间设置为 0 表示无限制 - SseEmitter emitter = new SseEmitter(0L); - - emitters.put(token, emitter); + SseEmitter emitter = emitters.computeIfAbsent(token, k -> new SseEmitter(0L)); // 当 emitter 完成、超时或发生错误时,从映射表中移除对应的 token - emitter.onCompletion(() -> emitters.remove(token)); - emitter.onTimeout(() -> emitters.remove(token)); - emitter.onError((e) -> emitters.remove(token)); + emitter.onCompletion(() -> { + SseEmitter remove = emitters.remove(token); + if (remove != null) { + remove.complete(); + } + }); + emitter.onTimeout(() -> { + SseEmitter remove = emitters.remove(token); + if (remove != null) { + remove.complete(); + } + }); + emitter.onError((e) -> { + SseEmitter remove = emitters.remove(token); + if (remove != null) { + remove.complete(); + } + }); try { // 向客户端发送一条连接成功的事件 @@ -106,7 +119,10 @@ public class SseEmitterManager { .name("message") .data(message)); } catch (Exception e) { - emitters.remove(entry.getKey()); + SseEmitter remove = emitters.remove(entry.getKey()); + if (remove != null) { + remove.complete(); + } } } } else { -- Gitee From 5868fadbf5de2142e895953a47c30ffdcf425bac Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Mon, 31 Mar 2025 09:42:30 +0800 Subject: [PATCH 505/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20sse=20?= =?UTF-8?q?=E5=88=A0=E9=99=A4=E4=B9=8B=E5=90=8E=20=E6=89=8B=E5=8A=A8?= =?UTF-8?q?=E8=A7=A6=E5=8F=91=E5=AE=8C=E6=88=90=20=E9=98=B2=E6=AD=A2?= =?UTF-8?q?=E5=86=85=E5=AD=98=E6=B3=84=E6=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/org/dromara/common/sse/core/SseEmitterManager.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/core/SseEmitterManager.java b/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/core/SseEmitterManager.java index ccf358ae3..cb9442850 100644 --- a/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/core/SseEmitterManager.java +++ b/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/core/SseEmitterManager.java @@ -39,7 +39,9 @@ public class SseEmitterManager { Map emitters = USER_TOKEN_EMITTERS.computeIfAbsent(userId, k -> new ConcurrentHashMap<>()); // 创建一个新的 SseEmitter 实例,超时时间设置为 0 表示无限制 - SseEmitter emitter = emitters.computeIfAbsent(token, k -> new SseEmitter(0L)); + SseEmitter emitter = new SseEmitter(0L); + + emitters.put(token, emitter); // 当 emitter 完成、超时或发生错误时,从映射表中移除对应的 token emitter.onCompletion(() -> { -- Gitee From 40eac0778959fa33da4dfa80cd930eb2af4ba35f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Mon, 31 Mar 2025 10:56:03 +0800 Subject: [PATCH 506/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20FlwNodeEx?= =?UTF-8?q?tServiceImpl=20=E4=BB=A3=E7=A0=81=E5=AE=9E=E7=8E=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/FlwNodeExtServiceImpl.java | 46 ++++++++----------- 1 file changed, 18 insertions(+), 28 deletions(-) diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwNodeExtServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwNodeExtServiceImpl.java index 231487d04..a6af73988 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwNodeExtServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwNodeExtServiceImpl.java @@ -26,34 +26,16 @@ import java.util.*; @Service public class FlwNodeExtServiceImpl implements NodeExtService { - /** - * 权限页code - */ - private static final String PERMISSION_TAB = "wf_button_tab"; - - /** - * 权限页名称 - */ - private static final String PERMISSION_TAB_NAME = "权限"; - - /** - * 基础设置 - */ - private static final int TYPE_BASE_SETTING = 1; - - /** - * 新页签 - */ - private static final int TYPE_NEW_TAB = 2; - /** * 存储不同 dictType 对应的配置信息 */ - private static final Map> CHILD_NODE_MAP = new HashMap<>(); + private static final Map CHILD_NODE_MAP = new HashMap<>(); + + record ButtonPermission(String label, Integer type, Boolean must, Boolean multiple) {} static { CHILD_NODE_MAP.put(ButtonPermissionEnum.class.getSimpleName(), - Map.of("label", "权限按钮", "type", 4, "must", false, "multiple", true)); + new ButtonPermission("权限按钮", 4, false, true)); } private final DictService dictService; @@ -67,8 +49,10 @@ public class FlwNodeExtServiceImpl implements NodeExtService { public List getNodeExt() { List nodeExtList = new ArrayList<>(); // 构建按钮权限页面 - nodeExtList.add(buildNodeExt(PERMISSION_TAB, PERMISSION_TAB_NAME, TYPE_NEW_TAB, + nodeExtList.add(buildNodeExt("wf_button_tab", "权限", 2, List.of(ButtonPermissionEnum.class))); + // 自定义构建 规则参考 NodeExt 与 warm-flow文档说明 + // nodeExtList.add(buildNodeExt("xxx_xxx", "xxx", 1, List); return nodeExtList; } @@ -160,15 +144,21 @@ public class FlwNodeExtServiceImpl implements NodeExtService { */ private NodeExt.ChildNode buildChildNodeMap(String key) { NodeExt.ChildNode childNode = new NodeExt.ChildNode(); - Map map = CHILD_NODE_MAP.get(key); + ButtonPermission bp = CHILD_NODE_MAP.get(key); + if (bp == null) { + childNode.setType(1); + childNode.setMust(false); + childNode.setMultiple(true); + return childNode; + } // label名称 - childNode.setLabel((String) map.get("label")); + childNode.setLabel(bp.label()); // 1:输入框 2:输入框 3:下拉框 4:选择框 - childNode.setType(Convert.toInt(map.get("type"), 1)); + childNode.setType(bp.type()); // 是否必填 - childNode.setMust(Convert.toBool(map.get("must"), false)); + childNode.setMust(bp.must()); // 是否多选 - childNode.setMultiple(Convert.toBool(map.get("multiple"), true)); + childNode.setMultiple(bp.multiple()); return childNode; } -- Gitee From 7c3f3523ea0d8f46c25e5879b0d5ba96c3a128a2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Mon, 31 Mar 2025 11:31:05 +0800 Subject: [PATCH 507/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E4=BD=BF?= =?UTF-8?q?=E7=94=A8=20record=20=E7=AE=80=E5=8C=96vo=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/monitor/CacheController.java | 13 ++++----- .../controller/system/SysMenuController.java | 16 +++++----- .../system/SysProfileController.java | 18 ++++++------ .../controller/system/SysRoleController.java | 11 ++++--- .../dromara/system/domain/vo/AvatarVo.java | 18 ------------ .../system/domain/vo/CacheListInfoVo.java | 23 --------------- .../system/domain/vo/DeptTreeSelectVo.java | 26 ----------------- .../system/domain/vo/MenuTreeSelectVo.java | 26 ----------------- .../dromara/system/domain/vo/ProfileVo.java | 29 ------------------- 9 files changed, 31 insertions(+), 149 deletions(-) delete mode 100644 ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/AvatarVo.java delete mode 100644 ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/CacheListInfoVo.java delete mode 100644 ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/DeptTreeSelectVo.java delete mode 100644 ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/MenuTreeSelectVo.java delete mode 100644 ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/ProfileVo.java diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/monitor/CacheController.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/monitor/CacheController.java index 6b7499ace..1e9c6558b 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/monitor/CacheController.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/monitor/CacheController.java @@ -1,10 +1,9 @@ package org.dromara.system.controller.monitor; import cn.dev33.satoken.annotation.SaCheckPermission; +import lombok.RequiredArgsConstructor; import org.dromara.common.core.domain.R; import org.dromara.common.core.utils.StringUtils; -import org.dromara.system.domain.vo.CacheListInfoVo; -import lombok.RequiredArgsConstructor; import org.redisson.spring.data.connection.RedissonConnectionFactory; import org.springframework.data.redis.connection.RedisConnection; import org.springframework.web.bind.annotation.GetMapping; @@ -45,11 +44,11 @@ public class CacheController { }); } - CacheListInfoVo infoVo = new CacheListInfoVo(); - infoVo.setInfo(connection.commands().info()); - infoVo.setDbSize(connection.commands().dbSize()); - infoVo.setCommandStats(pieList); - return R.ok(infoVo); + return R.ok(new CacheListInfoVo( + connection.commands().info(), + connection.commands().dbSize(), pieList)); } + public record CacheListInfoVo(Properties info, Long dbSize, List> commandStats) {} + } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysMenuController.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysMenuController.java index d8cd335ce..a6c3e115e 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysMenuController.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysMenuController.java @@ -15,7 +15,6 @@ import org.dromara.common.satoken.utils.LoginHelper; import org.dromara.common.web.core.BaseController; import org.dromara.system.domain.SysMenu; import org.dromara.system.domain.bo.SysMenuBo; -import org.dromara.system.domain.vo.MenuTreeSelectVo; import org.dromara.system.domain.vo.RouterVo; import org.dromara.system.domain.vo.SysMenuVo; import org.dromara.system.service.ISysMenuService; @@ -96,9 +95,9 @@ public class SysMenuController extends BaseController { @GetMapping(value = "/roleMenuTreeselect/{roleId}") public R roleMenuTreeselect(@PathVariable("roleId") Long roleId) { List menus = menuService.selectMenuList(LoginHelper.getUserId()); - MenuTreeSelectVo selectVo = new MenuTreeSelectVo(); - selectVo.setCheckedKeys(menuService.selectMenuListByRoleId(roleId)); - selectVo.setMenus(menuService.buildMenuTreeSelect(menus)); + MenuTreeSelectVo selectVo = new MenuTreeSelectVo( + menuService.selectMenuListByRoleId(roleId), + menuService.buildMenuTreeSelect(menus)); return R.ok(selectVo); } @@ -112,9 +111,9 @@ public class SysMenuController extends BaseController { @GetMapping(value = "/tenantPackageMenuTreeselect/{packageId}") public R tenantPackageMenuTreeselect(@PathVariable("packageId") Long packageId) { List menus = menuService.selectMenuList(LoginHelper.getUserId()); - MenuTreeSelectVo selectVo = new MenuTreeSelectVo(); - selectVo.setCheckedKeys(menuService.selectMenuListByPackageId(packageId)); - selectVo.setMenus(menuService.buildMenuTreeSelect(menus)); + MenuTreeSelectVo selectVo = new MenuTreeSelectVo( + menuService.selectMenuListByPackageId(packageId), + menuService.buildMenuTreeSelect(menus)); return R.ok(selectVo); } @@ -171,4 +170,7 @@ public class SysMenuController extends BaseController { return toAjax(menuService.deleteMenuById(menuId)); } + public record MenuTreeSelectVo(List checkedKeys, List> menus) { + } + } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysProfileController.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysProfileController.java index 5f187cb91..7a6bc2c1d 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysProfileController.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysProfileController.java @@ -17,8 +17,6 @@ import org.dromara.common.web.core.BaseController; import org.dromara.system.domain.bo.SysUserBo; import org.dromara.system.domain.bo.SysUserPasswordBo; import org.dromara.system.domain.bo.SysUserProfileBo; -import org.dromara.system.domain.vo.AvatarVo; -import org.dromara.system.domain.vo.ProfileVo; import org.dromara.system.domain.vo.SysOssVo; import org.dromara.system.domain.vo.SysUserVo; import org.dromara.system.service.ISysOssService; @@ -50,10 +48,9 @@ public class SysProfileController extends BaseController { @GetMapping public R profile() { SysUserVo user = userService.selectUserById(LoginHelper.getUserId()); - ProfileVo profileVo = new ProfileVo(); - profileVo.setUser(user); - profileVo.setRoleGroup(userService.selectUserRoleGroup(user.getUserId())); - profileVo.setPostGroup(userService.selectUserPostGroup(user.getUserId())); + String roleGroup = userService.selectUserRoleGroup(user.getUserId()); + String postGroup = userService.selectUserPostGroup(user.getUserId()); + ProfileVo profileVo = new ProfileVo(user, roleGroup, postGroup); return R.ok(profileVo); } @@ -123,11 +120,14 @@ public class SysProfileController extends BaseController { String avatar = oss.getUrl(); boolean updateSuccess = DataPermissionHelper.ignore(() -> userService.updateUserAvatar(LoginHelper.getUserId(), oss.getOssId())); if (updateSuccess) { - AvatarVo avatarVo = new AvatarVo(); - avatarVo.setImgUrl(avatar); - return R.ok(avatarVo); + return R.ok(new AvatarVo(avatar)); } } return R.fail("上传图片异常,请联系管理员"); } + + public record AvatarVo(String imgUrl) {} + + public record ProfileVo(SysUserVo user, String roleGroup, String postGroup) {} + } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysRoleController.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysRoleController.java index d4a9dc8a4..e6afa3c07 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysRoleController.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysRoleController.java @@ -1,6 +1,7 @@ package org.dromara.system.controller.system; import cn.dev33.satoken.annotation.SaCheckPermission; +import cn.hutool.core.lang.tree.Tree; import jakarta.servlet.http.HttpServletResponse; import lombok.RequiredArgsConstructor; import org.dromara.common.core.domain.R; @@ -14,7 +15,6 @@ import org.dromara.system.domain.SysUserRole; import org.dromara.system.domain.bo.SysDeptBo; import org.dromara.system.domain.bo.SysRoleBo; import org.dromara.system.domain.bo.SysUserBo; -import org.dromara.system.domain.vo.DeptTreeSelectVo; import org.dromara.system.domain.vo.SysRoleVo; import org.dromara.system.domain.vo.SysUserVo; import org.dromara.system.service.ISysDeptService; @@ -221,9 +221,12 @@ public class SysRoleController extends BaseController { @SaCheckPermission("system:role:list") @GetMapping(value = "/deptTree/{roleId}") public R roleDeptTreeselect(@PathVariable("roleId") Long roleId) { - DeptTreeSelectVo selectVo = new DeptTreeSelectVo(); - selectVo.setCheckedKeys(deptService.selectDeptListByRoleId(roleId)); - selectVo.setDepts(deptService.selectDeptTreeList(new SysDeptBo())); + DeptTreeSelectVo selectVo = new DeptTreeSelectVo( + deptService.selectDeptListByRoleId(roleId), + deptService.selectDeptTreeList(new SysDeptBo())); return R.ok(selectVo); } + + public record DeptTreeSelectVo(List checkedKeys, List> depts) {} + } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/AvatarVo.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/AvatarVo.java deleted file mode 100644 index 46c020b7c..000000000 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/AvatarVo.java +++ /dev/null @@ -1,18 +0,0 @@ -package org.dromara.system.domain.vo; - -import lombok.Data; - -/** - * 用户头像信息 - * - * @author Michelle.Chung - */ -@Data -public class AvatarVo { - - /** - * 头像地址 - */ - private String imgUrl; - -} diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/CacheListInfoVo.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/CacheListInfoVo.java deleted file mode 100644 index f827cba04..000000000 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/CacheListInfoVo.java +++ /dev/null @@ -1,23 +0,0 @@ -package org.dromara.system.domain.vo; - -import lombok.Data; - -import java.util.List; -import java.util.Map; -import java.util.Properties; - -/** - * 缓存监控列表信息 - * - * @author Michelle.Chung - */ -@Data -public class CacheListInfoVo { - - private Properties info; - - private Long dbSize; - - private List> commandStats; - -} diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/DeptTreeSelectVo.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/DeptTreeSelectVo.java deleted file mode 100644 index 6f7db2869..000000000 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/DeptTreeSelectVo.java +++ /dev/null @@ -1,26 +0,0 @@ -package org.dromara.system.domain.vo; - -import cn.hutool.core.lang.tree.Tree; -import lombok.Data; - -import java.util.List; - -/** - * 角色部门列表树信息 - * - * @author Michelle.Chung - */ -@Data -public class DeptTreeSelectVo { - - /** - * 选中部门列表 - */ - private List checkedKeys; - - /** - * 下拉树结构列表 - */ - private List> depts; - -} diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/MenuTreeSelectVo.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/MenuTreeSelectVo.java deleted file mode 100644 index 072453853..000000000 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/MenuTreeSelectVo.java +++ /dev/null @@ -1,26 +0,0 @@ -package org.dromara.system.domain.vo; - -import cn.hutool.core.lang.tree.Tree; -import lombok.Data; - -import java.util.List; - -/** - * 角色菜单列表树信息 - * - * @author Michelle.Chung - */ -@Data -public class MenuTreeSelectVo { - - /** - * 选中菜单列表 - */ - private List checkedKeys; - - /** - * 菜单下拉树结构列表 - */ - private List> menus; - -} diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/ProfileVo.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/ProfileVo.java deleted file mode 100644 index c0476519d..000000000 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/ProfileVo.java +++ /dev/null @@ -1,29 +0,0 @@ -package org.dromara.system.domain.vo; - -import lombok.Data; - -/** - * 用户个人信息 - * - * @author Michelle.Chung - */ -@Data -public class ProfileVo { - - /** - * 用户信息 - */ - private SysUserVo user; - - /** - * 用户所属角色组 - */ - private String roleGroup; - - /** - * 用户所属岗位组 - */ - private String postGroup; - - -} -- Gitee From 9e551a0b2ab566363363c6c9ee9c76d596b5f5a6 Mon Sep 17 00:00:00 2001 From: Binary Date: Tue, 1 Apr 2025 06:29:08 +0000 Subject: [PATCH 508/540] =?UTF-8?q?!665=20admin=20Dockerfile=20=E6=9E=84?= =?UTF-8?q?=E5=BB=BA=E6=96=87=E4=BB=B6=E6=96=B0=E5=A2=9E=E6=9A=B4=E9=9C=B2?= =?UTF-8?q?=20snail=20job=20=E5=AE=A2=E6=88=B7=E7=AB=AF=E7=AB=AF=E5=8F=A3?= =?UTF-8?q?=20=E7=94=A8=E4=BA=8E=E5=AE=9A=E6=97=B6=E4=BB=BB=E5=8A=A1?= =?UTF-8?q?=E8=B0=83=E5=BA=A6=E4=B8=AD=E5=BF=83=E9=80=9A=E4=BF=A1=20*=20ad?= =?UTF-8?q?min=20Dockerfile=20=E6=9E=84=E5=BB=BA=E6=96=87=E4=BB=B6?= =?UTF-8?q?=E6=96=B0=E5=A2=9E=E6=9A=B4=E9=9C=B2=20snail=20job=20=E5=AE=A2?= =?UTF-8?q?=E6=88=B7=E7=AB=AF=E7=AB=AF=E5=8F=A3=20=E7=94=A8=E4=BA=8E?= =?UTF-8?q?=E5=AE=9A=E6=97=B6=E4=BB=BB=E5=8A=A1=E8=B0=83=E5=BA=A6=E4=B8=AD?= =?UTF-8?q?=E5=BF=83=E9=80=9A=E4=BF=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ruoyi-admin/Dockerfile | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/ruoyi-admin/Dockerfile b/ruoyi-admin/Dockerfile index b489ab57c..a3a66756f 100644 --- a/ruoyi-admin/Dockerfile +++ b/ruoyi-admin/Dockerfile @@ -11,9 +11,11 @@ RUN mkdir -p /ruoyi/server/logs \ WORKDIR /ruoyi/server -ENV SERVER_PORT=8080 LANG=C.UTF-8 LC_ALL=C.UTF-8 JAVA_OPTS="" +ENV SERVER_PORT=8080 SNAIL_PORT=28080 LANG=C.UTF-8 LC_ALL=C.UTF-8 JAVA_OPTS="" EXPOSE ${SERVER_PORT} +# 暴露 snail job 客户端端口 用于定时任务调度中心通信 +EXPOSE ${SNAIL_PORT} ADD ./target/ruoyi-admin.jar ./app.jar # 工作流字体文件 @@ -22,6 +24,7 @@ ADD ./zhFonts/ /usr/share/fonts/zhFonts/ SHELL ["/bin/bash", "-c"] ENTRYPOINT java -Djava.security.egd=file:/dev/./urandom -Dserver.port=${SERVER_PORT} \ + -Dsnail-job.port=${SNAIL_PORT} \ # 应用名称 如果想区分集群节点监控 改成不同的名称即可 #-Dskywalking.agent.service_name=ruoyi-server \ #-javaagent:/ruoyi/skywalking/agent/skywalking-agent.jar \ -- Gitee From 023ceaaf91447ca5b853392b91c131e7a21f28af Mon Sep 17 00:00:00 2001 From: velenooo <8834950+velenooo@user.noreply.gitee.com> Date: Wed, 2 Apr 2025 05:20:53 +0000 Subject: [PATCH 509/540] =?UTF-8?q?!666=20fix:=20=E6=A8=A1=E6=9D=BF?= =?UTF-8?q?=E5=AF=BC=E5=87=BA=E5=A4=9A=E4=B8=AA=E5=AD=97=E6=AE=B5=E4=B8=8B?= =?UTF-8?q?=E6=8B=89=E5=80=BC=E8=B6=85=E8=BF=87100=E4=B8=AA=E5=BC=82?= =?UTF-8?q?=E5=B8=B8=EF=BC=8C=E9=87=87=E7=94=A8=E5=A4=9A=E4=B8=AAsheet?= =?UTF-8?q?=E7=9A=84=E6=96=B9=E6=A1=88=E8=A7=A3=E5=86=B3=E3=80=82=20*=20fi?= =?UTF-8?q?x:=20=E6=A8=A1=E6=9D=BF=E5=AF=BC=E5=87=BA=E5=A4=9A=E4=B8=AA?= =?UTF-8?q?=E5=AD=97=E6=AE=B5=E4=B8=8B=E6=8B=89=E5=80=BC=E8=B6=85=E8=BF=87?= =?UTF-8?q?100=E4=B8=AA=E5=BC=82=E5=B8=B8=EF=BC=8C=E9=87=87=E7=94=A8?= =?UTF-8?q?=E5=A4=9A=E4=B8=AAsheet=E7=9A=84=E6=96=B9=E6=A1=88=E8=A7=A3?= =?UTF-8?q?=E5=86=B3=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/excel/core/ExcelDownHandler.java | 20 ++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/core/ExcelDownHandler.java b/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/core/ExcelDownHandler.java index 32fee7a6c..d10ec70e6 100644 --- a/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/core/ExcelDownHandler.java +++ b/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/core/ExcelDownHandler.java @@ -291,9 +291,11 @@ public class ExcelDownHandler implements SheetWriteHandler { * @param value 下拉选可选值 */ private void dropDownWithSheet(DataValidationHelper helper, Workbook workbook, Sheet sheet, Integer celIndex, List value) { + //由于poi的写出相关问题,超过100个会被临时写进硬盘,导致后续内存合并会出Attempting to write a row[] in the range [] that is already written to disk + String tmpOptionsSheetName = OPTIONS_SHEET_NAME + "_" + currentOptionsColumnIndex; // 创建下拉数据表 - Sheet simpleDataSheet = Optional.ofNullable(workbook.getSheet(WorkbookUtil.createSafeSheetName(OPTIONS_SHEET_NAME))) - .orElseGet(() -> workbook.createSheet(WorkbookUtil.createSafeSheetName(OPTIONS_SHEET_NAME))); + Sheet simpleDataSheet = Optional.ofNullable(workbook.getSheet(WorkbookUtil.createSafeSheetName(tmpOptionsSheetName))) + .orElseGet(() -> workbook.createSheet(WorkbookUtil.createSafeSheetName(tmpOptionsSheetName))); // 将下拉表隐藏 workbook.setSheetHidden(workbook.getSheetIndex(simpleDataSheet), true); // 完善纵向的一级选项数据表 @@ -302,9 +304,9 @@ public class ExcelDownHandler implements SheetWriteHandler { // 获取每一选项行,如果没有则创建 Row row = Optional.ofNullable(simpleDataSheet.getRow(i)) .orElseGet(() -> simpleDataSheet.createRow(finalI)); - // 获取本级选项对应的选项列,如果没有则创建 - Cell cell = Optional.ofNullable(row.getCell(currentOptionsColumnIndex)) - .orElseGet(() -> row.createCell(currentOptionsColumnIndex)); + // 获取本级选项对应的选项列,如果没有则创建。上述采用多个sheet,默认索引为1列 + Cell cell = Optional.ofNullable(row.getCell(0)) + .orElseGet(() -> row.createCell(0)); // 设置值 cell.setCellValue(value.get(i)); } @@ -312,13 +314,13 @@ public class ExcelDownHandler implements SheetWriteHandler { // 创建名称管理器 Name name = workbook.createName(); // 设置名称管理器的别名 - String nameName = String.format("%s_%d", OPTIONS_SHEET_NAME, celIndex); + String nameName = String.format("%s_%d", tmpOptionsSheetName, celIndex); name.setNameName(nameName); // 以纵向第一列创建一级下拉拼接引用位置 String function = String.format("%s!$%s$1:$%s$%d", - OPTIONS_SHEET_NAME, - getExcelColumnName(currentOptionsColumnIndex), - getExcelColumnName(currentOptionsColumnIndex), + tmpOptionsSheetName, + getExcelColumnName(0), + getExcelColumnName(0), value.size()); // 设置名称管理器的引用位置 name.setRefersToFormula(function); -- Gitee From 07fdc240d78cebe5360404b65b6e4c3997cfecb4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Wed, 2 Apr 2025 14:04:41 +0800 Subject: [PATCH 510/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20=E5=9C=A8?= =?UTF-8?q?=E7=BA=BF=E7=94=A8=E6=88=B7=E8=AE=BE=E7=BD=AE=E8=BF=87=E6=9C=9F?= =?UTF-8?q?=E6=97=B6=E9=97=B4=E4=B8=8E=E5=AE=A2=E6=88=B7=E7=AB=AF=E4=B8=8D?= =?UTF-8?q?=E5=90=8C=E6=AD=A5=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/org/dromara/web/listener/UserActionListener.java | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/ruoyi-admin/src/main/java/org/dromara/web/listener/UserActionListener.java b/ruoyi-admin/src/main/java/org/dromara/web/listener/UserActionListener.java index 07595e092..86d26edf7 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/listener/UserActionListener.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/listener/UserActionListener.java @@ -1,6 +1,5 @@ package org.dromara.web.listener; -import cn.dev33.satoken.config.SaTokenConfig; import cn.dev33.satoken.listener.SaTokenListener; import cn.dev33.satoken.stp.SaLoginModel; import cn.dev33.satoken.stp.StpUtil; @@ -35,7 +34,6 @@ import java.time.Duration; @Slf4j public class UserActionListener implements SaTokenListener { - private final SaTokenConfig tokenConfig; private final SysLoginService loginService; /** @@ -59,10 +57,10 @@ public class UserActionListener implements SaTokenListener { dto.setDeviceType(loginModel.getDevice()); dto.setDeptName((String) loginModel.getExtra(LoginHelper.DEPT_NAME_KEY)); TenantHelper.dynamic(tenantId, () -> { - if(tokenConfig.getTimeout() == -1) { + if(loginModel.getTimeout() == -1) { RedisUtils.setCacheObject(CacheConstants.ONLINE_TOKEN_KEY + tokenValue, dto); } else { - RedisUtils.setCacheObject(CacheConstants.ONLINE_TOKEN_KEY + tokenValue, dto, Duration.ofSeconds(tokenConfig.getTimeout())); + RedisUtils.setCacheObject(CacheConstants.ONLINE_TOKEN_KEY + tokenValue, dto, Duration.ofSeconds(loginModel.getTimeout())); } }); // 记录登录日志 -- Gitee From 8e99dd306a3635d5410897de5138231b535fcc68 Mon Sep 17 00:00:00 2001 From: gssong <1742057357@qq.com> Date: Wed, 2 Apr 2025 21:03:58 +0800 Subject: [PATCH 511/540] =?UTF-8?q?https://gitee.com/dromara/RuoYi-Vue-Plu?= =?UTF-8?q?s/issues/IBYCY7=20fix=20=E4=BF=AE=E5=A4=8D=E9=80=89=E6=8B=A9?= =?UTF-8?q?=E5=BC=B9=E7=AA=97=E4=BC=9A=E7=AD=BE=E4=BA=BA=E5=91=98=E5=90=8E?= =?UTF-8?q?=EF=BC=8C=E4=BC=9A=E7=AD=BE=E5=AE=A1=E6=89=B9=E5=87=BA=E7=8E=B0?= =?UTF-8?q?=E6=AF=8F=E4=B8=AA=E4=BB=BB=E5=8A=A1=E7=9A=84=E5=AE=A1=E6=89=B9?= =?UTF-8?q?=E4=BA=BA=E9=83=BD=E6=98=AF=E9=80=89=E6=8B=A9=E7=9A=84=E5=A4=9A?= =?UTF-8?q?=E4=BA=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../workflow/service/impl/FlwTaskServiceImpl.java | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java index d93ba00ab..990c32383 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java @@ -183,7 +183,7 @@ public class FlwTaskServiceImpl implements IFlwTaskService { // 消息通知 flwCommonService.sendMessage(definition.getFlowName(), ins.getId(), messageType, notice); //设置下一环节处理人 - setNextHandler(ins.getId()); + setNextHandler(ins.getId(), completeTaskBo.getAssigneeMap()); return true; } catch (Exception e) { log.error(e.getMessage(), e); @@ -194,9 +194,13 @@ public class FlwTaskServiceImpl implements IFlwTaskService { /** * 设置下一环节处理人 * - * @param instanceId 实例ID + * @param instanceId 实例ID + * @param assigneeMap 办理人 */ - private void setNextHandler(Long instanceId) { + private void setNextHandler(Long instanceId, Map assigneeMap) { + if (CollUtil.isEmpty(assigneeMap)) { + return; + } Instance inst = insService.getById(instanceId); List flowTaskList = selectByInstId(instanceId); Map variableMap = inst.getVariableMap(); -- Gitee From 5bf901cdcd05e02d5cb513fa31575f0f7b4fc59d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 3 Apr 2025 13:34:41 +0800 Subject: [PATCH 512/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0api=E5=AE=A1=E6=89=B9=E7=AE=80=E5=8C=96=E6=96=B9?= =?UTF-8?q?=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/core/service/WorkflowService.java | 11 ++++++++++- .../service/impl/WorkflowServiceImpl.java | 19 +++++++++++++++++++ 2 files changed, 29 insertions(+), 1 deletion(-) diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/service/WorkflowService.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/service/WorkflowService.java index abbcbff19..9d1a90195 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/service/WorkflowService.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/service/WorkflowService.java @@ -78,9 +78,18 @@ public interface WorkflowService { /** * 办理任务 + * 系统后台发起审批 无用户信息 需要忽略权限 + * completeTask.getVariables().put("ignore", true); * * @param completeTask 参数 - * @return 结果 */ boolean completeTask(CompleteTaskDTO completeTask); + + /** + * 办理任务 + * + * @param taskId 任务ID + * @param message 办理意见 + */ + boolean completeTask(Long taskId, String message); } diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WorkflowServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WorkflowServiceImpl.java index f8a20b5b4..0c0224000 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WorkflowServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WorkflowServiceImpl.java @@ -122,6 +122,8 @@ public class WorkflowServiceImpl implements WorkflowService { /** * 办理任务 + * 系统后台发起审批 无用户信息 需要忽略权限 + * completeTask.getVariables().put("ignore", true); * * @param completeTask 参数 */ @@ -129,4 +131,21 @@ public class WorkflowServiceImpl implements WorkflowService { public boolean completeTask(CompleteTaskDTO completeTask) { return flwTaskService.completeTask(BeanUtil.toBean(completeTask, CompleteTaskBo.class)); } + + /** + * 办理任务 + * + * @param taskId 任务ID + * @param message 办理意见 + */ + @Override + public boolean completeTask(Long taskId, String message) { + CompleteTaskBo completeTask = new CompleteTaskBo(); + completeTask.setTaskId(taskId); + completeTask.setMessage(message); + // 忽略权限(系统后台发起审批 无用户信息 需要忽略权限) + completeTask.getVariables().put("ignore", true); + return flwTaskService.completeTask(completeTask); + } + } -- Gitee From 48d3ef9818eafc150d818aa0e6957fe0aa0238cc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Tue, 8 Apr 2025 10:16:20 +0800 Subject: [PATCH 513/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E7=BB=9F?= =?UTF-8?q?=E4=B8=80=E6=A0=A1=E9=AA=8C=E6=B3=A8=E8=A7=A3=E9=95=BF=E5=BA=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/dromara/common/core/domain/model/RegisterBody.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/model/RegisterBody.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/model/RegisterBody.java index 6ea8a764a..cced26b2b 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/model/RegisterBody.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/model/RegisterBody.java @@ -18,14 +18,14 @@ public class RegisterBody extends LoginBody { * 用户名 */ @NotBlank(message = "{user.username.not.blank}") - @Length(min = 2, max = 20, message = "{user.username.length.valid}") + @Length(min = 2, max = 30, message = "{user.username.length.valid}") private String username; /** * 用户密码 */ @NotBlank(message = "{user.password.not.blank}") - @Length(min = 5, max = 20, message = "{user.password.length.valid}") + @Length(min = 5, max = 30, message = "{user.password.length.valid}") private String password; private String userType; -- Gitee From ef39ad710713139c63e945f459f04012e2faf7c3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Tue, 8 Apr 2025 10:16:31 +0800 Subject: [PATCH 514/540] =?UTF-8?q?update=20=E5=A2=9E=E5=8A=A0=E8=B5=9E?= =?UTF-8?q?=E5=8A=A9=E5=95=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index fc3131a24..a37615025 100644 --- a/README.md +++ b/README.md @@ -34,6 +34,7 @@ CCFlow 驰聘低代码-流程-表单 - https://gitee.com/opencc/RuoYi-JFlow
    数舵科技 软件定制开发APP小程序等 - http://www.shuduokeji.com/
    引迈信息 软件开发平台 - https://www.jnpfsoft.com/index.html?from=plus-doc
    **启山商城系统 多租户商城源码可免费商用可二次开发 - https://www.73app.cn/**
    +Mall4J 高质量Java商城系统 - https://www.mall4j.com/cn/?statId=11
    [如何成为赞助商 加群联系作者详谈](https://plus-doc.dromara.org/#/common/add_group) # 本框架与RuoYi的功能差异 -- Gitee From c37b92978a54e03899970fd8c045dceefb43727f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Wed, 9 Apr 2025 10:23:59 +0800 Subject: [PATCH 515/540] =?UTF-8?q?update=20=E8=B0=83=E6=95=B4=E6=B3=A8?= =?UTF-8?q?=E9=87=8A=20=E5=88=A0=E9=99=A4=E4=B8=8D=E5=AD=98=E5=9C=A8?= =?UTF-8?q?=E7=9A=84=E9=94=99=E8=AF=AF=E7=9A=84=E4=B8=9C=E8=A5=BF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ruoyi-admin/src/main/resources/application.yml | 3 --- .../java/org/dromara/common/doc/config/SpringDocConfig.java | 2 +- 2 files changed, 1 insertion(+), 4 deletions(-) diff --git a/ruoyi-admin/src/main/resources/application.yml b/ruoyi-admin/src/main/resources/application.yml index c15d89c02..ee059dc3c 100644 --- a/ruoyi-admin/src/main/resources/application.yml +++ b/ruoyi-admin/src/main/resources/application.yml @@ -177,9 +177,6 @@ springdoc: api-docs: # 是否开启接口文档 enabled: true -# swagger-ui: -# # 持久化认证数据 -# persistAuthorization: true info: # 标题 title: '标题:RuoYi-Vue-Plus多租户管理系统_接口文档' diff --git a/ruoyi-common/ruoyi-common-doc/src/main/java/org/dromara/common/doc/config/SpringDocConfig.java b/ruoyi-common/ruoyi-common-doc/src/main/java/org/dromara/common/doc/config/SpringDocConfig.java index 069ef9ac8..c199015c0 100644 --- a/ruoyi-common/ruoyi-common-doc/src/main/java/org/dromara/common/doc/config/SpringDocConfig.java +++ b/ruoyi-common/ruoyi-common-doc/src/main/java/org/dromara/common/doc/config/SpringDocConfig.java @@ -30,7 +30,7 @@ import java.util.Optional; import java.util.Set; /** - * Swagger 文档配置 + * 接口文档配置 * * @author Lion Li */ -- Gitee From 70aa14ecf846e442b43ed2d01a8144816ba863d2 Mon Sep 17 00:00:00 2001 From: AprilWind <2100166581@qq.com> Date: Wed, 9 Apr 2025 10:35:08 +0800 Subject: [PATCH 516/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=E5=B7=A5?= =?UTF-8?q?=E4=BD=9C=E6=B5=81=E5=8A=9E=E7=90=86=E4=BA=BA=E6=9D=83=E9=99=90?= =?UTF-8?q?=E5=A4=84=E7=90=86=E5=99=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../handler/WorkflowPermissionHandler.java | 33 ++----------------- 1 file changed, 3 insertions(+), 30 deletions(-) diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/handler/WorkflowPermissionHandler.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/handler/WorkflowPermissionHandler.java index c18e4ed52..53dbd20ed 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/handler/WorkflowPermissionHandler.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/handler/WorkflowPermissionHandler.java @@ -1,22 +1,16 @@ package org.dromara.workflow.handler; -import cn.hutool.core.util.ObjectUtil; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; -import org.dromara.common.core.domain.model.LoginUser; -import org.dromara.workflow.common.ConditionalOnEnable; -import org.dromara.workflow.common.enums.TaskAssigneeEnum; import org.dromara.common.satoken.utils.LoginHelper; import org.dromara.warm.flow.core.dto.FlowParams; import org.dromara.warm.flow.core.handler.PermissionHandler; import org.dromara.warm.flow.core.service.impl.TaskServiceImpl; +import org.dromara.workflow.common.ConditionalOnEnable; import org.springframework.stereotype.Component; -import java.util.ArrayList; -import java.util.Collection; +import java.util.Collections; import java.util.List; -import java.util.stream.Collectors; -import java.util.stream.Stream; /** * 办理人权限处理器 @@ -36,28 +30,7 @@ public class WorkflowPermissionHandler implements PermissionHandler { */ @Override public List permissions() { - LoginUser loginUser = LoginHelper.getLoginUser(); - if (ObjectUtil.isNull(loginUser)) { - return new ArrayList<>(); - } - // 使用一个流来构建权限列表 - return Stream.of( - // 角色权限前缀 - loginUser.getRoles().stream() - .map(role -> TaskAssigneeEnum.ROLE.getCode() + role.getRoleId()), - - // 岗位权限前缀 - Stream.ofNullable(loginUser.getPosts()) - .flatMap(Collection::stream) - .map(post -> TaskAssigneeEnum.POST.getCode() + post.getPostId()), - - // 用户和部门权限 - Stream.of(String.valueOf(loginUser.getUserId()), - TaskAssigneeEnum.DEPT.getCode() + loginUser.getDeptId() - ) - ) - .flatMap(stream -> stream) - .collect(Collectors.toList()); + return Collections.singletonList(LoginHelper.getUserIdStr()); } /** -- Gitee From b50904c6ff79efdf052504edc93a7abab6b5d09a Mon Sep 17 00:00:00 2001 From: AprilWind <2100166581@qq.com> Date: Wed, 9 Apr 2025 10:57:29 +0800 Subject: [PATCH 517/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=E5=B7=A5?= =?UTF-8?q?=E4=BD=9C=E6=B5=81=E6=B5=81=E7=A8=8B=E7=9B=91=E5=90=AC=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0=E8=8A=82=E7=82=B9=E4=BF=A1=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../domain/event/ProcessCreateTaskEvent.java | 12 +++++++- .../core/domain/event/ProcessEvent.java | 17 ++++++++++- .../handler/FlowProcessEventHandler.java | 28 +++++++++++++++---- .../listener/WorkflowGlobalListener.java | 18 ++++++------ .../service/impl/FlwTaskServiceImpl.java | 3 +- 5 files changed, 60 insertions(+), 18 deletions(-) diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/event/ProcessCreateTaskEvent.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/event/ProcessCreateTaskEvent.java index 05047ab84..d603884d1 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/event/ProcessCreateTaskEvent.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/event/ProcessCreateTaskEvent.java @@ -27,10 +27,20 @@ public class ProcessCreateTaskEvent implements Serializable { private String flowCode; /** - * 审批节点编码 + * 节点类型(0开始节点 1中间节点 2结束节点 3互斥网关 4并行网关) + */ + private Integer nodeType; + + /** + * 流程节点编码 */ private String nodeCode; + /** + * 流程节点名称 + */ + private String nodeName; + /** * 任务id */ diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/event/ProcessEvent.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/event/ProcessEvent.java index 6329b9c01..bc7b78065 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/event/ProcessEvent.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/event/ProcessEvent.java @@ -33,7 +33,22 @@ public class ProcessEvent implements Serializable { private String businessId; /** - * 状态 + * 节点类型(0开始节点 1中间节点 2结束节点 3互斥网关 4并行网关) + */ + private Integer nodeType; + + /** + * 流程节点编码 + */ + private String nodeCode; + + /** + * 流程节点名称 + */ + private String nodeName; + + /** + * 流程状态 */ private String status; diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/handler/FlowProcessEventHandler.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/handler/FlowProcessEventHandler.java index 3efc52da8..eec27369d 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/handler/FlowProcessEventHandler.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/handler/FlowProcessEventHandler.java @@ -27,16 +27,27 @@ public class FlowProcessEventHandler { * * @param flowCode 流程定义编码 * @param businessId 业务id - * @param status 状态 + * @param nodeType 节点类型(0开始节点 1中间节点 2结束节点 3互斥网关 4并行网关) + * @param nodeCode 流程节点编码 + * @param nodeName 流程节点名称 + * @param status 流程状态 + * @param params 办理参数 * @param submit 当为true时为申请人节点办理 */ - public void processHandler(String flowCode, String businessId, String status, Map params, boolean submit) { + public void processHandler(String flowCode, String businessId, Integer nodeType, String nodeCode, String nodeName, + String status, Map params, boolean submit) { + String tenantId = TenantHelper.getTenantId(); - log.info("发布流程事件,租户ID: {}, 流程状态: {}, 流程编码: {}, 业务ID: {}, 是否申请人节点办理: {}", tenantId, status, flowCode, businessId, submit); + log.info("【流程事件发布】租户ID: {}, 流程编码: {}, 业务ID: {}, 状态: {}, 节点类型: {}, 节点编码: {}, 节点名称: {}, 是否申请人节点: {}, 参数: {}", + tenantId, flowCode, businessId, status, nodeType, nodeCode, nodeName, submit, params); + ProcessEvent processEvent = new ProcessEvent(); processEvent.setTenantId(tenantId); processEvent.setFlowCode(flowCode); processEvent.setBusinessId(businessId); + processEvent.setNodeType(nodeType); + processEvent.setNodeCode(nodeCode); + processEvent.setNodeName(nodeName); processEvent.setStatus(status); processEvent.setParams(params); processEvent.setSubmit(submit); @@ -47,17 +58,22 @@ public class FlowProcessEventHandler { * 执行创建任务监听 * * @param flowCode 流程定义编码 - * @param nodeCode 审批节点编码 + * @param nodeType 节点类型(0开始节点 1中间节点 2结束节点 3互斥网关 4并行网关) + * @param nodeCode 流程节点编码 + * @param nodeName 流程节点名称 * @param taskId 任务id * @param businessId 业务id */ - public void processCreateTaskHandler(String flowCode, String nodeCode, Long taskId, String businessId) { + public void processCreateTaskHandler(String flowCode, Integer nodeType, String nodeCode, String nodeName, Long taskId, String businessId) { String tenantId = TenantHelper.getTenantId(); - log.info("发布流程任务事件, 租户ID: {}, 流程编码: {}, 节点编码: {}, 任务ID: {}, 业务ID: {}", tenantId, flowCode, nodeCode, taskId, businessId); + log.info("发布流程任务事件, 租户ID: {}, 流程编码: {}, 节点类型: {}, 节点编码: {}, 节点名称: {}, 任务ID: {}, 业务ID: {}", + tenantId, flowCode, nodeType, nodeCode, nodeName, taskId, businessId); ProcessCreateTaskEvent processCreateTaskEvent = new ProcessCreateTaskEvent(); processCreateTaskEvent.setTenantId(tenantId); processCreateTaskEvent.setFlowCode(flowCode); + processCreateTaskEvent.setNodeType(nodeType); processCreateTaskEvent.setNodeCode(nodeCode); + processCreateTaskEvent.setNodeName(nodeName); processCreateTaskEvent.setTaskId(taskId); processCreateTaskEvent.setBusinessId(businessId); SpringUtils.context().publishEvent(processCreateTaskEvent); diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/listener/WorkflowGlobalListener.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/listener/WorkflowGlobalListener.java index 272f9de92..6f435693e 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/listener/WorkflowGlobalListener.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/listener/WorkflowGlobalListener.java @@ -52,7 +52,8 @@ public class WorkflowGlobalListener implements GlobalListener { Task task = listenerVariable.getTask(); if (task != null && BusinessStatusEnum.WAITING.getStatus().equals(flowStatus)) { // 判断流程状态(发布审批中事件) - flowProcessEventHandler.processCreateTaskHandler(definition.getFlowCode(), task.getNodeCode(), task.getId(), businessId); + flowProcessEventHandler.processCreateTaskHandler(definition.getFlowCode(), task.getNodeType(), + task.getNodeCode(), task.getNodeName(), task.getId(), businessId); } } @@ -83,8 +84,6 @@ public class WorkflowGlobalListener implements GlobalListener { public void finish(ListenerVariable listenerVariable) { Instance instance = listenerVariable.getInstance(); Definition definition = listenerVariable.getDefinition(); - String businessId = instance.getBusinessId(); - String flowStatus = instance.getFlowStatus(); Map params = new HashMap<>(); FlowParams flowParams = listenerVariable.getFlowParams(); if (ObjectUtil.isNotNull(flowParams)) { @@ -96,20 +95,21 @@ public class WorkflowGlobalListener implements GlobalListener { params.put("message", flowParams.getMessage()); } // 判断流程状态(发布:撤销,退回,作废,终止,已完成事件) - String status = determineFlowStatus(instance, flowStatus); + String status = determineFlowStatus(instance); if (StringUtils.isNotBlank(status)) { - flowProcessEventHandler.processHandler(definition.getFlowCode(), businessId, status, params, false); + flowProcessEventHandler.processHandler(definition.getFlowCode(), instance.getBusinessId(), instance.getNodeType(), + instance.getNodeCode(), instance.getNodeName(), status, params, false); } } /** - * 根据流程实例和当前流程状态确定最终状态 + * 根据流程实例确定最终状态 * - * @param instance 流程实例 - * @param flowStatus 流程实例当前状态 + * @param instance 流程实例 * @return 流程最终状态 */ - private String determineFlowStatus(Instance instance, String flowStatus) { + private String determineFlowStatus(Instance instance) { + String flowStatus = instance.getFlowStatus(); if (StringUtils.isNotBlank(flowStatus) && BusinessStatusEnum.initialState(flowStatus)) { log.info("流程实例当前状态: {}", flowStatus); return flowStatus; diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java index 990c32383..356af6600 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java @@ -162,7 +162,8 @@ public class FlwTaskServiceImpl implements IFlwTaskService { Definition definition = defService.getById(flowTask.getDefinitionId()); // 检查流程状态是否为草稿、已撤销或已退回状态,若是则执行流程提交监听 if (BusinessStatusEnum.isDraftOrCancelOrBack(ins.getFlowStatus())) { - flowProcessEventHandler.processHandler(definition.getFlowCode(), ins.getBusinessId(), ins.getFlowStatus(), null, true); + flowProcessEventHandler.processHandler(definition.getFlowCode(), ins.getBusinessId(), ins.getNodeType(), + ins.getNodeCode(), ins.getNodeName(), ins.getFlowStatus(), null, true); } // 设置弹窗处理人 Map assigneeMap = setPopAssigneeMap(completeTaskBo.getAssigneeMap(), ins.getVariableMap()); -- Gitee From a690ece164db87557b2363f6f74a3be420170dad Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Wed, 9 Apr 2025 11:53:40 +0800 Subject: [PATCH 518/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E8=B0=83?= =?UTF-8?q?=E6=95=B4=E7=9B=91=E5=90=AC=E5=99=A8=E4=BA=8B=E4=BB=B6=E5=8F=82?= =?UTF-8?q?=E6=95=B0=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../handler/FlowProcessEventHandler.java | 37 ++++++++----------- .../listener/WorkflowGlobalListener.java | 10 ++--- .../service/impl/FlwTaskServiceImpl.java | 3 +- 3 files changed, 20 insertions(+), 30 deletions(-) diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/handler/FlowProcessEventHandler.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/handler/FlowProcessEventHandler.java index eec27369d..84a322061 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/handler/FlowProcessEventHandler.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/handler/FlowProcessEventHandler.java @@ -6,6 +6,7 @@ import org.dromara.common.core.domain.event.ProcessDeleteEvent; import org.dromara.common.core.domain.event.ProcessEvent; import org.dromara.common.core.utils.SpringUtils; import org.dromara.common.tenant.helper.TenantHelper; +import org.dromara.warm.flow.core.entity.Instance; import org.dromara.workflow.common.ConditionalOnEnable; import org.springframework.stereotype.Component; @@ -26,28 +27,25 @@ public class FlowProcessEventHandler { * 总体流程监听(例如: 草稿,撤销,退回,作废,终止,已完成,单任务完成等) * * @param flowCode 流程定义编码 - * @param businessId 业务id - * @param nodeType 节点类型(0开始节点 1中间节点 2结束节点 3互斥网关 4并行网关) - * @param nodeCode 流程节点编码 - * @param nodeName 流程节点名称 + * @param instance 实例数据 * @param status 流程状态 * @param params 办理参数 * @param submit 当为true时为申请人节点办理 */ - public void processHandler(String flowCode, String businessId, Integer nodeType, String nodeCode, String nodeName, + public void processHandler(String flowCode, Instance instance, String status, Map params, boolean submit) { String tenantId = TenantHelper.getTenantId(); log.info("【流程事件发布】租户ID: {}, 流程编码: {}, 业务ID: {}, 状态: {}, 节点类型: {}, 节点编码: {}, 节点名称: {}, 是否申请人节点: {}, 参数: {}", - tenantId, flowCode, businessId, status, nodeType, nodeCode, nodeName, submit, params); + tenantId, flowCode, instance.getBusinessId(), status, instance.getNodeType(), instance.getNodeCode(), instance.getNodeName(), submit, params); ProcessEvent processEvent = new ProcessEvent(); processEvent.setTenantId(tenantId); processEvent.setFlowCode(flowCode); - processEvent.setBusinessId(businessId); - processEvent.setNodeType(nodeType); - processEvent.setNodeCode(nodeCode); - processEvent.setNodeName(nodeName); + processEvent.setBusinessId(instance.getBusinessId()); + processEvent.setNodeType(instance.getNodeType()); + processEvent.setNodeCode(instance.getNodeCode()); + processEvent.setNodeName(instance.getNodeName()); processEvent.setStatus(status); processEvent.setParams(params); processEvent.setSubmit(submit); @@ -58,24 +56,21 @@ public class FlowProcessEventHandler { * 执行创建任务监听 * * @param flowCode 流程定义编码 - * @param nodeType 节点类型(0开始节点 1中间节点 2结束节点 3互斥网关 4并行网关) - * @param nodeCode 流程节点编码 - * @param nodeName 流程节点名称 + * @param instance 实例数据 * @param taskId 任务id - * @param businessId 业务id */ - public void processCreateTaskHandler(String flowCode, Integer nodeType, String nodeCode, String nodeName, Long taskId, String businessId) { + public void processCreateTaskHandler(String flowCode, Instance instance, Long taskId) { String tenantId = TenantHelper.getTenantId(); - log.info("发布流程任务事件, 租户ID: {}, 流程编码: {}, 节点类型: {}, 节点编码: {}, 节点名称: {}, 任务ID: {}, 业务ID: {}", - tenantId, flowCode, nodeType, nodeCode, nodeName, taskId, businessId); + log.info("发布流程任务事件, 租户ID: {}, 流程编码: {}, 业务ID: {}, 节点类型: {}, 节点编码: {}, 节点名称: {}, 任务ID: {}", + tenantId, flowCode, instance.getBusinessId(), instance.getNodeType(), instance.getNodeCode(), instance.getNodeName(), taskId); ProcessCreateTaskEvent processCreateTaskEvent = new ProcessCreateTaskEvent(); processCreateTaskEvent.setTenantId(tenantId); processCreateTaskEvent.setFlowCode(flowCode); - processCreateTaskEvent.setNodeType(nodeType); - processCreateTaskEvent.setNodeCode(nodeCode); - processCreateTaskEvent.setNodeName(nodeName); + processCreateTaskEvent.setBusinessId(instance.getBusinessId()); + processCreateTaskEvent.setNodeType(instance.getNodeType()); + processCreateTaskEvent.setNodeCode(instance.getNodeCode()); + processCreateTaskEvent.setNodeName(instance.getNodeName()); processCreateTaskEvent.setTaskId(taskId); - processCreateTaskEvent.setBusinessId(businessId); SpringUtils.context().publishEvent(processCreateTaskEvent); } diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/listener/WorkflowGlobalListener.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/listener/WorkflowGlobalListener.java index 6f435693e..b6bdfa268 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/listener/WorkflowGlobalListener.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/listener/WorkflowGlobalListener.java @@ -47,13 +47,10 @@ public class WorkflowGlobalListener implements GlobalListener { public void create(ListenerVariable listenerVariable) { Instance instance = listenerVariable.getInstance(); Definition definition = listenerVariable.getDefinition(); - String businessId = instance.getBusinessId(); - String flowStatus = instance.getFlowStatus(); Task task = listenerVariable.getTask(); - if (task != null && BusinessStatusEnum.WAITING.getStatus().equals(flowStatus)) { + if (task != null && BusinessStatusEnum.WAITING.getStatus().equals(instance.getFlowStatus())) { // 判断流程状态(发布审批中事件) - flowProcessEventHandler.processCreateTaskHandler(definition.getFlowCode(), task.getNodeType(), - task.getNodeCode(), task.getNodeName(), task.getId(), businessId); + flowProcessEventHandler.processCreateTaskHandler(definition.getFlowCode(), instance, task.getId()); } } @@ -97,8 +94,7 @@ public class WorkflowGlobalListener implements GlobalListener { // 判断流程状态(发布:撤销,退回,作废,终止,已完成事件) String status = determineFlowStatus(instance); if (StringUtils.isNotBlank(status)) { - flowProcessEventHandler.processHandler(definition.getFlowCode(), instance.getBusinessId(), instance.getNodeType(), - instance.getNodeCode(), instance.getNodeName(), status, params, false); + flowProcessEventHandler.processHandler(definition.getFlowCode(), instance, status, params, false); } } diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java index 356af6600..f34c15a77 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java @@ -162,8 +162,7 @@ public class FlwTaskServiceImpl implements IFlwTaskService { Definition definition = defService.getById(flowTask.getDefinitionId()); // 检查流程状态是否为草稿、已撤销或已退回状态,若是则执行流程提交监听 if (BusinessStatusEnum.isDraftOrCancelOrBack(ins.getFlowStatus())) { - flowProcessEventHandler.processHandler(definition.getFlowCode(), ins.getBusinessId(), ins.getNodeType(), - ins.getNodeCode(), ins.getNodeName(), ins.getFlowStatus(), null, true); + flowProcessEventHandler.processHandler(definition.getFlowCode(), ins, ins.getFlowStatus(), null, true); } // 设置弹窗处理人 Map assigneeMap = setPopAssigneeMap(completeTaskBo.getAssigneeMap(), ins.getVariableMap()); -- Gitee From 564ab331d7ce0a6eb70e550b542eb392fd0d8129 Mon Sep 17 00:00:00 2001 From: AprilWind <2100166581@qq.com> Date: Thu, 10 Apr 2025 16:01:29 +0800 Subject: [PATCH 519/540] =?UTF-8?q?update=20=E7=BB=9F=E4=B8=80=E5=B7=A5?= =?UTF-8?q?=E4=BD=9C=E6=B5=81FlowParams=E6=9E=84=E9=80=A0=E6=96=B9?= =?UTF-8?q?=E5=BC=8F=E4=B8=BA=E5=BB=BA=E9=80=A0=E8=80=85=E6=A8=A1=E5=BC=8F?= =?UTF-8?q?,=E6=8F=90=E5=8D=87=E4=BB=A3=E7=A0=81=E5=8F=AF=E8=AF=BB?= =?UTF-8?q?=E6=80=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../handler/FlowProcessEventHandler.java | 11 ++-- .../service/impl/FlwCommonServiceImpl.java | 12 ++--- .../service/impl/FlwInstanceServiceImpl.java | 10 ++-- .../service/impl/FlwTaskServiceImpl.java | 54 +++++++++---------- 4 files changed, 42 insertions(+), 45 deletions(-) diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/handler/FlowProcessEventHandler.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/handler/FlowProcessEventHandler.java index 84a322061..c9e7a9237 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/handler/FlowProcessEventHandler.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/handler/FlowProcessEventHandler.java @@ -32,13 +32,10 @@ public class FlowProcessEventHandler { * @param params 办理参数 * @param submit 当为true时为申请人节点办理 */ - public void processHandler(String flowCode, Instance instance, - String status, Map params, boolean submit) { - + public void processHandler(String flowCode, Instance instance, String status, Map params, boolean submit) { String tenantId = TenantHelper.getTenantId(); - log.info("【流程事件发布】租户ID: {}, 流程编码: {}, 业务ID: {}, 状态: {}, 节点类型: {}, 节点编码: {}, 节点名称: {}, 是否申请人节点: {}, 参数: {}", + log.info("【流程事件发布】租户ID: {}, 流程编码: {}, 业务ID: {}, 流程状态: {}, 节点类型: {}, 节点编码: {}, 节点名称: {}, 是否申请人节点: {}, 参数: {}", tenantId, flowCode, instance.getBusinessId(), status, instance.getNodeType(), instance.getNodeCode(), instance.getNodeName(), submit, params); - ProcessEvent processEvent = new ProcessEvent(); processEvent.setTenantId(tenantId); processEvent.setFlowCode(flowCode); @@ -61,7 +58,7 @@ public class FlowProcessEventHandler { */ public void processCreateTaskHandler(String flowCode, Instance instance, Long taskId) { String tenantId = TenantHelper.getTenantId(); - log.info("发布流程任务事件, 租户ID: {}, 流程编码: {}, 业务ID: {}, 节点类型: {}, 节点编码: {}, 节点名称: {}, 任务ID: {}", + log.info("【流程任务事件发布】租户ID: {}, 流程编码: {}, 业务ID: {}, 节点类型: {}, 节点编码: {}, 节点名称: {}, 任务ID: {}", tenantId, flowCode, instance.getBusinessId(), instance.getNodeType(), instance.getNodeCode(), instance.getNodeName(), taskId); ProcessCreateTaskEvent processCreateTaskEvent = new ProcessCreateTaskEvent(); processCreateTaskEvent.setTenantId(tenantId); @@ -82,7 +79,7 @@ public class FlowProcessEventHandler { */ public void processDeleteHandler(String flowCode, String businessId) { String tenantId = TenantHelper.getTenantId(); - log.info("发布删除流程事件, 租户ID: {}, 流程编码: {}, 业务ID: {}", tenantId, flowCode, businessId); + log.info("【流程删除事件发布】租户ID: {}, 流程编码: {}, 业务ID: {}", tenantId, flowCode, businessId); ProcessDeleteEvent processDeleteEvent = new ProcessDeleteEvent(); processDeleteEvent.setTenantId(tenantId); processDeleteEvent.setFlowCode(flowCode); diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwCommonServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwCommonServiceImpl.java index bbc5734c9..9f92a154c 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwCommonServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwCommonServiceImpl.java @@ -198,12 +198,12 @@ public class FlwCommonServiceImpl implements IFlwCommonService { } for (FlowTask task : list) { List userList = flwTaskService.currentTaskAllUser(task.getId()); - FlowParams flowParams = FlowParams.build(); - flowParams.nodeCode(targetNodeCode); - flowParams.message(message); - flowParams.skipType(SkipType.PASS.getKey()); - flowParams.flowStatus(flowStatus).hisStatus(flowHisStatus); - flowParams.ignore(true); + FlowParams flowParams = FlowParams.build() + .nodeCode(targetNodeCode) + .message(message) + .skipType(SkipType.PASS.getKey()) + .flowStatus(flowStatus).hisStatus(flowHisStatus) + .ignore(true); //解决会签没权限问题 if (CollUtil.isNotEmpty(userList)) { flowParams.handler(userList.get(0).getUserId().toString()); diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwInstanceServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwInstanceServiceImpl.java index 3c0b59541..5518cd4ba 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwInstanceServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwInstanceServiceImpl.java @@ -437,11 +437,11 @@ public class FlwInstanceServiceImpl implements IFlwInstanceService { } List flowTaskList = flwTaskService.selectByInstId(bo.getId()); for (FlowTask flowTask : flowTaskList) { - FlowParams flowParams = new FlowParams(); - flowParams.message(bo.getComment()); - flowParams.flowStatus(BusinessStatusEnum.INVALID.getStatus()) - .hisStatus(TaskStatusEnum.INVALID.getStatus()); - flowParams.ignore(true); + FlowParams flowParams = FlowParams.build() + .message(bo.getComment()) + .flowStatus(BusinessStatusEnum.INVALID.getStatus()) + .hisStatus(TaskStatusEnum.INVALID.getStatus()) + .ignore(true); taskService.termination(flowTask.getId(), flowParams); } return true; diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java index f34c15a77..71f2a53f2 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java @@ -117,10 +117,10 @@ public class FlwTaskServiceImpl implements IFlwTaskService { dto.setTaskId(taskList.get(0).getId()); return dto; } - FlowParams flowParams = new FlowParams(); - flowParams.flowCode(startProcessBo.getFlowCode()); - flowParams.variable(startProcessBo.getVariables()); - flowParams.flowStatus(BusinessStatusEnum.DRAFT.getStatus()); + FlowParams flowParams = FlowParams.build() + .flowCode(startProcessBo.getFlowCode()) + .variable(startProcessBo.getVariables()) + .flowStatus(BusinessStatusEnum.DRAFT.getStatus()); Instance instance; try { instance = insService.start(businessId, flowParams); @@ -170,13 +170,13 @@ public class FlwTaskServiceImpl implements IFlwTaskService { completeTaskBo.getVariables().putAll(assigneeMap); } // 构建流程参数,包括变量、跳转类型、消息、处理人、权限等信息 - FlowParams flowParams = new FlowParams(); - flowParams.variable(completeTaskBo.getVariables()); - flowParams.skipType(SkipType.PASS.getKey()); - flowParams.message(completeTaskBo.getMessage()); - flowParams.flowStatus(BusinessStatusEnum.WAITING.getStatus()).hisStatus(TaskStatusEnum.PASS.getStatus()); - - flowParams.hisTaskExt(completeTaskBo.getFileId()); + FlowParams flowParams = FlowParams.build() + .variable(completeTaskBo.getVariables()) + .skipType(SkipType.PASS.getKey()) + .message(completeTaskBo.getMessage()) + .flowStatus(BusinessStatusEnum.WAITING.getStatus()) + .hisStatus(TaskStatusEnum.PASS.getStatus()) + .hisTaskExt(completeTaskBo.getFileId()); // 执行任务跳转,并根据返回的处理人设置下一步处理人 Instance instance = taskService.skip(taskId, flowParams); this.setHandler(instance, flowTask, flowCopyList); @@ -310,10 +310,10 @@ public class FlwTaskServiceImpl implements IFlwTaskService { task.setId(taskId); task.setNodeName("【抄送】" + task.getNodeName()); Date updateTime = new Date(flowHisTask.getUpdateTime().getTime() - 1000); - FlowParams flowParams = FlowParams.build(); - flowParams.skipType(SkipType.NONE.getKey()); - flowParams.hisStatus(TaskStatusEnum.COPY.getStatus()); - flowParams.message("【抄送给】" + StreamUtils.join(flowCopyList, FlowCopyBo::getUserName)); + FlowParams flowParams = FlowParams.build() + .skipType(SkipType.NONE.getKey()) + .hisStatus(TaskStatusEnum.COPY.getStatus()) + .message("【抄送给】" + StreamUtils.join(flowCopyList, FlowCopyBo::getUserName)); HisTask hisTask = hisTaskService.setSkipHisTask(task, flowNode, flowParams); hisTask.setCreateTime(updateTime); hisTask.setUpdateTime(updateTime); @@ -456,13 +456,13 @@ public class FlwTaskServiceImpl implements IFlwTaskService { Long definitionId = task.getDefinitionId(); Definition definition = defService.getById(definitionId); String applyNodeCode = flwCommonService.applyNodeCode(definitionId); - FlowParams flowParams = FlowParams.build(); - flowParams.nodeCode(bo.getNodeCode()); - flowParams.message(message); - flowParams.skipType(SkipType.REJECT.getKey()); - flowParams.flowStatus(applyNodeCode.equals(bo.getNodeCode()) ? TaskStatusEnum.BACK.getStatus() : TaskStatusEnum.WAITING.getStatus()) - .hisStatus(TaskStatusEnum.BACK.getStatus()); - flowParams.hisTaskExt(bo.getFileId()); + FlowParams flowParams = FlowParams.build() + .nodeCode(bo.getNodeCode()) + .message(message) + .skipType(SkipType.REJECT.getKey()) + .flowStatus(applyNodeCode.equals(bo.getNodeCode()) ? TaskStatusEnum.BACK.getStatus() : TaskStatusEnum.WAITING.getStatus()) + .hisStatus(TaskStatusEnum.BACK.getStatus()) + .hisTaskExt(bo.getFileId()); taskService.skip(task.getId(), flowParams); Instance instance = insService.getById(inst.getId()); @@ -519,9 +519,9 @@ public class FlwTaskServiceImpl implements IFlwTaskService { if (ObjectUtil.isNotNull(instance)) { BusinessStatusEnum.checkInvalidStatus(instance.getFlowStatus()); } - FlowParams flowParams = new FlowParams(); - flowParams.message(bo.getComment()); - flowParams.flowStatus(BusinessStatusEnum.TERMINATION.getStatus()) + FlowParams flowParams = FlowParams.build() + .message(bo.getComment()) + .flowStatus(BusinessStatusEnum.TERMINATION.getStatus()) .hisStatus(TaskStatusEnum.TERMINATION.getStatus()); taskService.termination(taskId, flowParams); return true; @@ -662,8 +662,8 @@ public class FlwTaskServiceImpl implements IFlwTaskService { @Override @Transactional(rollbackFor = Exception.class) public boolean taskOperation(TaskOperationBo bo, String taskOperation) { - FlowParams flowParams = new FlowParams(); - flowParams.message(bo.getMessage()); + FlowParams flowParams = FlowParams.build() + .message(bo.getMessage()); if (LoginHelper.isSuperAdmin() || LoginHelper.isTenantAdmin()) { flowParams.ignore(true); } -- Gitee From 53cf1b20137dd33d9779c97ae9190ad130673bde Mon Sep 17 00:00:00 2001 From: AprilWind <2100166581@qq.com> Date: Thu, 10 Apr 2025 16:44:51 +0800 Subject: [PATCH 520/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=E5=B7=A5?= =?UTF-8?q?=E4=BD=9C=E6=B5=81=E8=8E=B7=E5=8F=96=E6=B5=81=E7=A8=8B=E5=8F=98?= =?UTF-8?q?=E9=87=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../workflow/domain/vo/FlowVariableVo.java | 28 ------------------- .../service/impl/FlwInstanceServiceImpl.java | 20 ++++--------- 2 files changed, 5 insertions(+), 43 deletions(-) delete mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/FlowVariableVo.java diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/FlowVariableVo.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/FlowVariableVo.java deleted file mode 100644 index b4de76e93..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/FlowVariableVo.java +++ /dev/null @@ -1,28 +0,0 @@ -package org.dromara.workflow.domain.vo; - -import lombok.Data; - -import java.io.Serial; -import java.io.Serializable; - -/** - * 流程变量 - * - * @author may - */ -@Data -public class FlowVariableVo implements Serializable { - - @Serial - private static final long serialVersionUID = 1L; - - /** - * 变量key - */ - private String key; - - /** - * 变量值 - */ - private String value; -} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwInstanceServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwInstanceServiceImpl.java index 5518cd4ba..2aa95484f 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwInstanceServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwInstanceServiceImpl.java @@ -42,7 +42,6 @@ import org.dromara.workflow.domain.bo.FlowInstanceBo; import org.dromara.workflow.domain.bo.FlowInvalidBo; import org.dromara.workflow.domain.vo.FlowHisTaskVo; import org.dromara.workflow.domain.vo.FlowInstanceVo; -import org.dromara.workflow.domain.vo.FlowVariableVo; import org.dromara.workflow.handler.FlowProcessEventHandler; import org.dromara.workflow.mapper.FlwCategoryMapper; import org.dromara.workflow.mapper.FlwInstanceMapper; @@ -346,21 +345,12 @@ public class FlwInstanceServiceImpl implements IFlwInstanceService { */ @Override public Map instanceVariable(Long instanceId) { - Map map = new HashMap<>(); FlowInstance flowInstance = flowInstanceMapper.selectById(instanceId); - Map variableMap = flowInstance.getVariableMap(); - List list = new ArrayList<>(); - if (CollUtil.isNotEmpty(variableMap)) { - for (Map.Entry entry : variableMap.entrySet()) { - FlowVariableVo flowVariableVo = new FlowVariableVo(); - flowVariableVo.setKey(entry.getKey()); - flowVariableVo.setValue(entry.getValue().toString()); - list.add(flowVariableVo); - } - } - map.put("variableList", list); - map.put("variable", flowInstance.getVariable()); - return map; + Map variableMap = Optional.ofNullable(flowInstance.getVariableMap()).orElse(Collections.emptyMap()); + List> variableList = variableMap.entrySet().stream() + .map(entry -> Map.of("key", entry.getKey(), "value", entry.getValue())) + .toList(); + return Map.of("variableList", variableList, "variable", flowInstance.getVariable()); } /** -- Gitee From d89f147c54ff02d6956cb609042127dbc14b48f1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 10 Apr 2025 17:22:34 +0800 Subject: [PATCH 521/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20=E4=B8=B4?= =?UTF-8?q?=E6=97=B6=E8=A7=A3=E5=86=B3sa-token=E4=BD=BF=E7=94=A8=E7=A7=92?= =?UTF-8?q?=20redis=E6=98=AF=E6=AF=AB=E7=A7=92=E5=AF=BC=E8=87=B41=E7=A7=92?= =?UTF-8?q?=E7=9A=84=E7=B2=BE=E5=BA=A6=E9=97=AE=E9=A2=98=20=E6=89=8B?= =?UTF-8?q?=E5=8A=A8=E8=A1=A5=E5=81=BF(=E7=AD=89satoken=E5=AE=98=E6=96=B9?= =?UTF-8?q?=E4=BF=AE=E5=A4=8D)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/dromara/common/satoken/core/dao/PlusSaTokenDao.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/ruoyi-common/ruoyi-common-satoken/src/main/java/org/dromara/common/satoken/core/dao/PlusSaTokenDao.java b/ruoyi-common/ruoyi-common-satoken/src/main/java/org/dromara/common/satoken/core/dao/PlusSaTokenDao.java index a2a152003..3a5430327 100644 --- a/ruoyi-common/ruoyi-common-satoken/src/main/java/org/dromara/common/satoken/core/dao/PlusSaTokenDao.java +++ b/ruoyi-common/ruoyi-common-satoken/src/main/java/org/dromara/common/satoken/core/dao/PlusSaTokenDao.java @@ -85,7 +85,8 @@ public class PlusSaTokenDao implements SaTokenDao { @Override public long getTimeout(String key) { long timeout = RedisUtils.getTimeToLive(key); - return timeout < 0 ? timeout : timeout / 1000; + // 加1的目的 解决sa-token使用秒 redis是毫秒导致1秒的精度问题 手动补偿 + return timeout < 0 ? timeout : timeout / 1000 + 1; } /** @@ -152,7 +153,8 @@ public class PlusSaTokenDao implements SaTokenDao { @Override public long getObjectTimeout(String key) { long timeout = RedisUtils.getTimeToLive(key); - return timeout < 0 ? timeout : timeout / 1000; + // 加1的目的 解决sa-token使用秒 redis是毫秒导致1秒的精度问题 手动补偿 + return timeout < 0 ? timeout : timeout / 1000 + 1; } /** -- Gitee From a2c238d466c37bc9906a4d36fa2ee2a1e5bbc1d8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 10 Apr 2025 17:29:44 +0800 Subject: [PATCH 522/540] update bouncycastle 1.76 => 1.80 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index f1362f2e3..28dbfe61c 100644 --- a/pom.xml +++ b/pom.xml @@ -35,7 +35,7 @@ 1.4.6 0.2.0 1.18.36 - 1.76 + 1.80 1.16.7 2.7.0 -- Gitee From 00003b2c57cd8fce8b0cf7c08f48e9d134fefb76 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 11 Apr 2025 10:18:05 +0800 Subject: [PATCH 523/540] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20sqlserver=20?= =?UTF-8?q?=E8=84=9A=E6=9C=AC=E5=86=85=E7=9A=84=E5=A4=9A=E4=BD=99=E7=AC=A6?= =?UTF-8?q?=E5=8F=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- script/sql/sqlserver/sqlserver_ry_vue_5.X.sql | 10 +++++----- script/sql/update/sqlserver/update_5.0-5.1.sql | 2 +- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/script/sql/sqlserver/sqlserver_ry_vue_5.X.sql b/script/sql/sqlserver/sqlserver_ry_vue_5.X.sql index 0567f31d9..c5df3e8d2 100644 --- a/script/sql/sqlserver/sqlserver_ry_vue_5.X.sql +++ b/script/sql/sqlserver/sqlserver_ry_vue_5.X.sql @@ -1265,15 +1265,15 @@ INSERT sys_dict_data VALUES (32, N'000000', 0, N'邮件认证', N'email', N'sys_ GO INSERT sys_dict_data VALUES (33, N'000000', 0, N'小程序认证', N'xcx', N'sys_grant_type', N'', N'default', N'N', 103, 1, getdate(), NULL, NULL, N'小程序认证') GO -INSERT sys_dict_data VALUES (34, N'000000', 0, N'三方登录认证', N'`social`', N'sys_grant_type', N'', N'default', N'N', 103, 1, getdate(), NULL, NULL, N'三方登录认证') +INSERT sys_dict_data VALUES (34, N'000000', 0, N'三方登录认证', N'social', N'sys_grant_type', N'', N'default', N'N', 103, 1, getdate(), NULL, NULL, N'三方登录认证') GO -INSERT sys_dict_data VALUES (35, N'000000', 0, N'PC', N'`pc`', N'sys_device_type', N'', N'default', N'N', 103, 1, getdate(), NULL, NULL, N'PC') +INSERT sys_dict_data VALUES (35, N'000000', 0, N'PC', N'pc', N'sys_device_type', N'', N'default', N'N', 103, 1, getdate(), NULL, NULL, N'PC') GO -INSERT sys_dict_data VALUES (36, N'000000', 0, N'安卓', N'`android`', N'sys_device_type', N'', N'default', N'N', 103, 1, getdate(), NULL, NULL, N'安卓') +INSERT sys_dict_data VALUES (36, N'000000', 0, N'安卓', N'android', N'sys_device_type', N'', N'default', N'N', 103, 1, getdate(), NULL, NULL, N'安卓') GO -INSERT sys_dict_data VALUES (37, N'000000', 0, N'iOS', N'`ios`', N'sys_device_type', N'', N'default', N'N', 103, 1, getdate(), NULL, NULL, N'iOS') +INSERT sys_dict_data VALUES (37, N'000000', 0, N'iOS', N'ios', N'sys_device_type', N'', N'default', N'N', 103, 1, getdate(), NULL, NULL, N'iOS') GO -INSERT sys_dict_data VALUES (38, N'000000', 0, N'小程序', N'`xcx`', N'sys_device_type', N'', N'default', N'N', 103, 1, getdate(), NULL, NULL, N'小程序') +INSERT sys_dict_data VALUES (38, N'000000', 0, N'小程序', N'xcx', N'sys_device_type', N'', N'default', N'N', 103, 1, getdate(), NULL, NULL, N'小程序') GO CREATE TABLE sys_dict_type diff --git a/script/sql/update/sqlserver/update_5.0-5.1.sql b/script/sql/update/sqlserver/update_5.0-5.1.sql index bde3813ac..6ea54a55a 100644 --- a/script/sql/update/sqlserver/update_5.0-5.1.sql +++ b/script/sql/update/sqlserver/update_5.0-5.1.sql @@ -363,7 +363,7 @@ INSERT sys_dict_data VALUES (32, N'000000', 0, N'邮件认证', N'email', N'sys_ GO INSERT sys_dict_data VALUES (33, N'000000', 0, N'小程序认证', N'xcx', N'sys_grant_type', N'', N'default', N'N', N'0', 103, 1, getdate(), NULL, NULL, N'小程序认证') GO -INSERT sys_dict_data VALUES (34, N'000000', 0, N'三方登录认证', N'`social`', N'sys_grant_type', N'', N'default', N'N', N'0', 103, 1, getdate(), NULL, NULL, N'三方登录认证') +INSERT sys_dict_data VALUES (34, N'000000', 0, N'三方登录认证', N'social', N'sys_grant_type', N'', N'default', N'N', N'0', 103, 1, getdate(), NULL, NULL, N'三方登录认证') GO INSERT sys_dict_data VALUES (35, N'000000', 0, N'PC', N'`pc`', N'sys_device_type', N'', N'default', N'N', N'0', 103, 1, getdate(), NULL, NULL, N'PC') GO -- Gitee From 538aa8d90875400c44d5a3e4e4b3acf0c6181b9e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 11 Apr 2025 15:07:18 +0800 Subject: [PATCH 524/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E7=BB=9F?= =?UTF-8?q?=E4=B8=80=E6=B5=81=E7=A8=8Bdemo=20=E6=9D=83=E9=99=90=E4=BA=BA?= =?UTF-8?q?=E5=88=86=E9=9A=94=E7=AC=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- script/leave/leave1.json | 4 ++-- script/leave/leave2.json | 4 ++-- script/leave/leave3.json | 4 ++-- script/leave/leave4.json | 4 ++-- script/leave/leave5.json | 4 ++-- 5 files changed, 10 insertions(+), 10 deletions(-) diff --git a/script/leave/leave1.json b/script/leave/leave1.json index 36fc32602..0ffdeeb89 100644 --- a/script/leave/leave1.json +++ b/script/leave/leave1.json @@ -52,7 +52,7 @@ "nodeType" : 1, "nodeCode" : "a8abf15f-b83e-428a-86cc-033555ea9bbe", "nodeName" : "部门主管", - "permissionFlag" : "role:3,role:4", + "permissionFlag" : "role:3@@role:4", "nodeRatio" : 0.000, "coordinate" : "720,200|720,200", "formCustom" : "N", @@ -72,4 +72,4 @@ "formCustom" : "N", "ext" : "[]" } ] -} \ No newline at end of file +} diff --git a/script/leave/leave2.json b/script/leave/leave2.json index bb196a314..7bbdbaab2 100644 --- a/script/leave/leave2.json +++ b/script/leave/leave2.json @@ -58,7 +58,7 @@ "nodeType" : 1, "nodeCode" : "b3528155-dcb7-4445-bbdf-3d00e3499e86", "nodeName" : "组长", - "permissionFlag" : "3,4", + "permissionFlag" : "3@@4", "nodeRatio" : 0.000, "coordinate" : "720,320|720,320", "formCustom" : "N", @@ -108,4 +108,4 @@ "coordinate" : "770,160;860,160;860,200" } ] } ] -} \ No newline at end of file +} diff --git a/script/leave/leave3.json b/script/leave/leave3.json index d289c787a..bb22d42c9 100644 --- a/script/leave/leave3.json +++ b/script/leave/leave3.json @@ -106,7 +106,7 @@ "nodeType" : 1, "nodeCode" : "762cb975-37d8-4276-b6db-79a4c3606394", "nodeName" : "综合部", - "permissionFlag" : "role:3,role:4", + "permissionFlag" : "role:3@@role:4", "nodeRatio" : 0.000, "coordinate" : "800,300|800,300", "formCustom" : "N", @@ -118,4 +118,4 @@ "coordinate" : "850,300;920,300;920,245" } ] } ] -} \ No newline at end of file +} diff --git a/script/leave/leave4.json b/script/leave/leave4.json index c085de2e5..50968f8dd 100644 --- a/script/leave/leave4.json +++ b/script/leave/leave4.json @@ -52,7 +52,7 @@ "nodeType" : 1, "nodeCode" : "2f9f2e21-9bcf-42a3-a07c-13037aad22d1", "nodeName" : "全部审批通过", - "permissionFlag" : "role:1,role:3", + "permissionFlag" : "role:1@@role:3", "nodeRatio" : 100.000, "coordinate" : "820,240|820,240", "formCustom" : "N", @@ -87,4 +87,4 @@ "formCustom" : "N", "ext" : "[]" } ] -} \ No newline at end of file +} diff --git a/script/leave/leave5.json b/script/leave/leave5.json index 76d10f180..a27b1de4e 100644 --- a/script/leave/leave5.json +++ b/script/leave/leave5.json @@ -55,7 +55,7 @@ "nodeType" : 1, "nodeCode" : "c80f273e-1f17-4bd8-9ad1-04a4a94ea862", "nodeName" : "会签", - "permissionFlag" : "role:1,role:3", + "permissionFlag" : "role:1@@role:3", "nodeRatio" : 100.000, "coordinate" : "700,320|700,320", "formCustom" : "N", @@ -118,4 +118,4 @@ "coordinate" : "750,120;860,120;860,195" } ] } ] -} \ No newline at end of file +} -- Gitee From 31502dccc7bc160fe36d012ceee93d31b02800a4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 11 Apr 2025 15:36:38 +0800 Subject: [PATCH 525/540] =?UTF-8?q?update=20satoken=201.40.0=20=3D>=201.42?= =?UTF-8?q?.0=20=E9=80=82=E9=85=8D=E6=89=80=E6=9C=89=E5=8D=87=E7=BA=A7?= =?UTF-8?q?=E9=A1=B9(=E6=94=B9=E5=8A=A8=E8=BE=83=E5=A4=9A)=20SaLoginModel?= =?UTF-8?q?=20->=20SaLoginParameter=20device=20->=20deviceType=20satoken?= =?UTF-8?q?=20BCrypt=20->=20hutool=20BCrypt(satoken=E4=B8=8D=E7=BB=B4?= =?UTF-8?q?=E6=8A=A4=E4=BA=86)=20SaTokenDao=20->=20SaTokenDaoBySessionFoll?= =?UTF-8?q?owObject(satoken=E5=81=9A=E4=BA=86=E9=87=8D=E6=9E=84=E5=B0=81?= =?UTF-8?q?=E8=A3=85)=20sse=20=E9=80=82=E9=85=8D=E6=96=B0satoken=E7=89=88?= =?UTF-8?q?=E6=9C=AC=E6=8B=A6=E6=88=AA=E5=99=A8=E5=8F=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 2 +- .../web/listener/UserActionListener.java | 20 +++++++++---------- .../web/service/SysRegisterService.java | 2 +- .../web/service/impl/EmailAuthStrategy.java | 6 +++--- .../service/impl/PasswordAuthStrategy.java | 8 ++++---- .../web/service/impl/SmsAuthStrategy.java | 6 +++--- .../web/service/impl/SocialAuthStrategy.java | 6 +++--- .../web/service/impl/XcxAuthStrategy.java | 6 +++--- .../satoken/core/dao/PlusSaTokenDao.java | 20 ++++++++++++++++--- .../common/satoken/utils/LoginHelper.java | 6 +++--- .../security/config/SecurityConfig.java | 17 ++++++---------- .../common/sse/controller/SseController.java | 1 + .../common/tenant/core/TenantSaTokenDao.java | 12 ++++++++++- .../system/SysProfileController.java | 2 +- .../controller/system/SysUserController.java | 2 +- .../service/impl/SysTenantServiceImpl.java | 2 +- 16 files changed, 69 insertions(+), 49 deletions(-) diff --git a/pom.xml b/pom.xml index 28dbfe61c..884d73092 100644 --- a/pom.xml +++ b/pom.xml @@ -23,7 +23,7 @@ 0.15.0 4.0.3 2.3 - 1.40.0 + 1.42.0 3.5.11 3.9.1 5.8.35 diff --git a/ruoyi-admin/src/main/java/org/dromara/web/listener/UserActionListener.java b/ruoyi-admin/src/main/java/org/dromara/web/listener/UserActionListener.java index 86d26edf7..554c64b32 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/listener/UserActionListener.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/listener/UserActionListener.java @@ -1,8 +1,8 @@ package org.dromara.web.listener; import cn.dev33.satoken.listener.SaTokenListener; -import cn.dev33.satoken.stp.SaLoginModel; import cn.dev33.satoken.stp.StpUtil; +import cn.dev33.satoken.stp.parameter.SaLoginParameter; import cn.hutool.core.convert.Convert; import cn.hutool.http.useragent.UserAgent; import cn.hutool.http.useragent.UserAgentUtil; @@ -40,7 +40,7 @@ public class UserActionListener implements SaTokenListener { * 每次登录时触发 */ @Override - public void doLogin(String loginType, Object loginId, String tokenValue, SaLoginModel loginModel) { + public void doLogin(String loginType, Object loginId, String tokenValue, SaLoginParameter loginParameter) { UserAgent userAgent = UserAgentUtil.parse(ServletUtils.getRequest().getHeader("User-Agent")); String ip = ServletUtils.getClientIP(); UserOnlineDTO dto = new UserOnlineDTO(); @@ -50,17 +50,17 @@ public class UserActionListener implements SaTokenListener { dto.setOs(userAgent.getOs().getName()); dto.setLoginTime(System.currentTimeMillis()); dto.setTokenId(tokenValue); - String username = (String) loginModel.getExtra(LoginHelper.USER_NAME_KEY); - String tenantId = (String) loginModel.getExtra(LoginHelper.TENANT_KEY); + String username = (String) loginParameter.getExtra(LoginHelper.USER_NAME_KEY); + String tenantId = (String) loginParameter.getExtra(LoginHelper.TENANT_KEY); dto.setUserName(username); - dto.setClientKey((String) loginModel.getExtra(LoginHelper.CLIENT_KEY)); - dto.setDeviceType(loginModel.getDevice()); - dto.setDeptName((String) loginModel.getExtra(LoginHelper.DEPT_NAME_KEY)); + dto.setClientKey((String) loginParameter.getExtra(LoginHelper.CLIENT_KEY)); + dto.setDeviceType(loginParameter.getDeviceType()); + dto.setDeptName((String) loginParameter.getExtra(LoginHelper.DEPT_NAME_KEY)); TenantHelper.dynamic(tenantId, () -> { - if(loginModel.getTimeout() == -1) { + if(loginParameter.getTimeout() == -1) { RedisUtils.setCacheObject(CacheConstants.ONLINE_TOKEN_KEY + tokenValue, dto); } else { - RedisUtils.setCacheObject(CacheConstants.ONLINE_TOKEN_KEY + tokenValue, dto, Duration.ofSeconds(loginModel.getTimeout())); + RedisUtils.setCacheObject(CacheConstants.ONLINE_TOKEN_KEY + tokenValue, dto, Duration.ofSeconds(loginParameter.getTimeout())); } }); // 记录登录日志 @@ -72,7 +72,7 @@ public class UserActionListener implements SaTokenListener { logininforEvent.setRequest(ServletUtils.getRequest()); SpringUtils.context().publishEvent(logininforEvent); // 更新登录信息 - loginService.recordLoginInfo((Long) loginModel.getExtra(LoginHelper.USER_KEY), ip); + loginService.recordLoginInfo((Long) loginParameter.getExtra(LoginHelper.USER_KEY), ip); log.info("user doLogin, userId:{}, token:{}", loginId, tokenValue); } diff --git a/ruoyi-admin/src/main/java/org/dromara/web/service/SysRegisterService.java b/ruoyi-admin/src/main/java/org/dromara/web/service/SysRegisterService.java index 9ec08132e..567906e42 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/service/SysRegisterService.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/service/SysRegisterService.java @@ -1,6 +1,6 @@ package org.dromara.web.service; -import cn.dev33.satoken.secure.BCrypt; +import cn.hutool.crypto.digest.BCrypt; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import lombok.RequiredArgsConstructor; import org.dromara.common.core.constant.Constants; diff --git a/ruoyi-admin/src/main/java/org/dromara/web/service/impl/EmailAuthStrategy.java b/ruoyi-admin/src/main/java/org/dromara/web/service/impl/EmailAuthStrategy.java index 1bed4f3e5..e4315dc59 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/service/impl/EmailAuthStrategy.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/service/impl/EmailAuthStrategy.java @@ -1,7 +1,7 @@ package org.dromara.web.service.impl; -import cn.dev33.satoken.stp.SaLoginModel; import cn.dev33.satoken.stp.StpUtil; +import cn.dev33.satoken.stp.parameter.SaLoginParameter; import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import lombok.RequiredArgsConstructor; @@ -58,8 +58,8 @@ public class EmailAuthStrategy implements IAuthStrategy { }); loginUser.setClientKey(client.getClientKey()); loginUser.setDeviceType(client.getDeviceType()); - SaLoginModel model = new SaLoginModel(); - model.setDevice(client.getDeviceType()); + SaLoginParameter model = new SaLoginParameter(); + model.setDeviceType(client.getDeviceType()); // 自定义分配 不同用户体系 不同 token 授权时间 不设置默认走全局 yml 配置 // 例如: 后台用户30分钟过期 app用户1天过期 model.setTimeout(client.getTimeout()); diff --git a/ruoyi-admin/src/main/java/org/dromara/web/service/impl/PasswordAuthStrategy.java b/ruoyi-admin/src/main/java/org/dromara/web/service/impl/PasswordAuthStrategy.java index e8e60e1c4..e579f9969 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/service/impl/PasswordAuthStrategy.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/service/impl/PasswordAuthStrategy.java @@ -1,9 +1,9 @@ package org.dromara.web.service.impl; -import cn.dev33.satoken.secure.BCrypt; -import cn.dev33.satoken.stp.SaLoginModel; import cn.dev33.satoken.stp.StpUtil; +import cn.dev33.satoken.stp.parameter.SaLoginParameter; import cn.hutool.core.util.ObjectUtil; +import cn.hutool.crypto.digest.BCrypt; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; @@ -70,8 +70,8 @@ public class PasswordAuthStrategy implements IAuthStrategy { }); loginUser.setClientKey(client.getClientKey()); loginUser.setDeviceType(client.getDeviceType()); - SaLoginModel model = new SaLoginModel(); - model.setDevice(client.getDeviceType()); + SaLoginParameter model = new SaLoginParameter(); + model.setDeviceType(client.getDeviceType()); // 自定义分配 不同用户体系 不同 token 授权时间 不设置默认走全局 yml 配置 // 例如: 后台用户30分钟过期 app用户1天过期 model.setTimeout(client.getTimeout()); diff --git a/ruoyi-admin/src/main/java/org/dromara/web/service/impl/SmsAuthStrategy.java b/ruoyi-admin/src/main/java/org/dromara/web/service/impl/SmsAuthStrategy.java index 2ffda353e..597a6013b 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/service/impl/SmsAuthStrategy.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/service/impl/SmsAuthStrategy.java @@ -1,7 +1,7 @@ package org.dromara.web.service.impl; -import cn.dev33.satoken.stp.SaLoginModel; import cn.dev33.satoken.stp.StpUtil; +import cn.dev33.satoken.stp.parameter.SaLoginParameter; import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import lombok.RequiredArgsConstructor; @@ -58,8 +58,8 @@ public class SmsAuthStrategy implements IAuthStrategy { }); loginUser.setClientKey(client.getClientKey()); loginUser.setDeviceType(client.getDeviceType()); - SaLoginModel model = new SaLoginModel(); - model.setDevice(client.getDeviceType()); + SaLoginParameter model = new SaLoginParameter(); + model.setDeviceType(client.getDeviceType()); // 自定义分配 不同用户体系 不同 token 授权时间 不设置默认走全局 yml 配置 // 例如: 后台用户30分钟过期 app用户1天过期 model.setTimeout(client.getTimeout()); diff --git a/ruoyi-admin/src/main/java/org/dromara/web/service/impl/SocialAuthStrategy.java b/ruoyi-admin/src/main/java/org/dromara/web/service/impl/SocialAuthStrategy.java index 419dbd6ba..ffe95e0b6 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/service/impl/SocialAuthStrategy.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/service/impl/SocialAuthStrategy.java @@ -1,7 +1,7 @@ package org.dromara.web.service.impl; -import cn.dev33.satoken.stp.SaLoginModel; import cn.dev33.satoken.stp.StpUtil; +import cn.dev33.satoken.stp.parameter.SaLoginParameter; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.map.MapUtil; import cn.hutool.core.util.ObjectUtil; @@ -99,8 +99,8 @@ public class SocialAuthStrategy implements IAuthStrategy { }); loginUser.setClientKey(client.getClientKey()); loginUser.setDeviceType(client.getDeviceType()); - SaLoginModel model = new SaLoginModel(); - model.setDevice(client.getDeviceType()); + SaLoginParameter model = new SaLoginParameter(); + model.setDeviceType(client.getDeviceType()); // 自定义分配 不同用户体系 不同 token 授权时间 不设置默认走全局 yml 配置 // 例如: 后台用户30分钟过期 app用户1天过期 model.setTimeout(client.getTimeout()); diff --git a/ruoyi-admin/src/main/java/org/dromara/web/service/impl/XcxAuthStrategy.java b/ruoyi-admin/src/main/java/org/dromara/web/service/impl/XcxAuthStrategy.java index fa9b61819..f223dd88f 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/service/impl/XcxAuthStrategy.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/service/impl/XcxAuthStrategy.java @@ -1,7 +1,7 @@ package org.dromara.web.service.impl; -import cn.dev33.satoken.stp.SaLoginModel; import cn.dev33.satoken.stp.StpUtil; +import cn.dev33.satoken.stp.parameter.SaLoginParameter; import cn.hutool.core.util.ObjectUtil; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; @@ -76,8 +76,8 @@ public class XcxAuthStrategy implements IAuthStrategy { loginUser.setDeviceType(client.getDeviceType()); loginUser.setOpenid(openid); - SaLoginModel model = new SaLoginModel(); - model.setDevice(client.getDeviceType()); + SaLoginParameter model = new SaLoginParameter(); + model.setDeviceType(client.getDeviceType()); // 自定义分配 不同用户体系 不同 token 授权时间 不设置默认走全局 yml 配置 // 例如: 后台用户30分钟过期 app用户1天过期 model.setTimeout(client.getTimeout()); diff --git a/ruoyi-common/ruoyi-common-satoken/src/main/java/org/dromara/common/satoken/core/dao/PlusSaTokenDao.java b/ruoyi-common/ruoyi-common-satoken/src/main/java/org/dromara/common/satoken/core/dao/PlusSaTokenDao.java index 3a5430327..46c61c4c8 100644 --- a/ruoyi-common/ruoyi-common-satoken/src/main/java/org/dromara/common/satoken/core/dao/PlusSaTokenDao.java +++ b/ruoyi-common/ruoyi-common-satoken/src/main/java/org/dromara/common/satoken/core/dao/PlusSaTokenDao.java @@ -1,6 +1,6 @@ package org.dromara.common.satoken.core.dao; -import cn.dev33.satoken.dao.SaTokenDao; +import cn.dev33.satoken.dao.auto.SaTokenDaoBySessionFollowObject; import cn.dev33.satoken.util.SaFoxUtil; import com.github.benmanes.caffeine.cache.Cache; import com.github.benmanes.caffeine.cache.Caffeine; @@ -16,10 +16,12 @@ import java.util.concurrent.TimeUnit; * Sa-Token持久层接口(使用框架自带RedisUtils实现 协议统一) *

    * 采用 caffeine + redis 多级缓存 优化并发查询效率 + *

    + * SaTokenDaoBySessionFollowObject 是 SaTokenDao 子集简化了session方法处理 * * @author Lion Li */ -public class PlusSaTokenDao implements SaTokenDao { +public class PlusSaTokenDao implements SaTokenDaoBySessionFollowObject { private static final Cache CAFFEINE = Caffeine.newBuilder() // 设置最后一次写入或访问后经过固定时间过期 @@ -107,6 +109,19 @@ public class PlusSaTokenDao implements SaTokenDao { return o; } + /** + * 获取 Object (指定反序列化类型),如无返空 + * + * @param key 键名称 + * @return object + */ + @SuppressWarnings("unchecked cast") + @Override + public T getObject(String key, Class classType) { + Object o = CAFFEINE.get(key, k -> RedisUtils.getCacheObject(key)); + return (T) o; + } + /** * 写入Object,并设定存活时间 (单位: 秒) */ @@ -165,7 +180,6 @@ public class PlusSaTokenDao implements SaTokenDao { RedisUtils.expire(key, Duration.ofSeconds(timeout)); } - /** * 搜索数据 */ diff --git a/ruoyi-common/ruoyi-common-satoken/src/main/java/org/dromara/common/satoken/utils/LoginHelper.java b/ruoyi-common/ruoyi-common-satoken/src/main/java/org/dromara/common/satoken/utils/LoginHelper.java index a5729387d..7a2b9fcf6 100644 --- a/ruoyi-common/ruoyi-common-satoken/src/main/java/org/dromara/common/satoken/utils/LoginHelper.java +++ b/ruoyi-common/ruoyi-common-satoken/src/main/java/org/dromara/common/satoken/utils/LoginHelper.java @@ -1,8 +1,8 @@ package org.dromara.common.satoken.utils; import cn.dev33.satoken.session.SaSession; -import cn.dev33.satoken.stp.SaLoginModel; import cn.dev33.satoken.stp.StpUtil; +import cn.dev33.satoken.stp.parameter.SaLoginParameter; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.convert.Convert; import cn.hutool.core.util.ObjectUtil; @@ -47,8 +47,8 @@ public class LoginHelper { * @param loginUser 登录用户信息 * @param model 配置参数 */ - public static void login(LoginUser loginUser, SaLoginModel model) { - model = ObjectUtil.defaultIfNull(model, new SaLoginModel()); + public static void login(LoginUser loginUser, SaLoginParameter model) { + model = ObjectUtil.defaultIfNull(model, new SaLoginParameter()); StpUtil.login(loginUser.getLoginId(), model.setExtra(TENANT_KEY, loginUser.getTenantId()) .setExtra(USER_KEY, loginUser.getUserId()) diff --git a/ruoyi-common/ruoyi-common-security/src/main/java/org/dromara/common/security/config/SecurityConfig.java b/ruoyi-common/ruoyi-common-security/src/main/java/org/dromara/common/security/config/SecurityConfig.java index a4e921f23..21f2c113c 100644 --- a/ruoyi-common/ruoyi-common-security/src/main/java/org/dromara/common/security/config/SecurityConfig.java +++ b/ruoyi-common/ruoyi-common-security/src/main/java/org/dromara/common/security/config/SecurityConfig.java @@ -11,13 +11,13 @@ import jakarta.servlet.http.HttpServletRequest; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.dromara.common.core.constant.HttpStatus; -import org.dromara.common.core.exception.SseException; import org.dromara.common.core.utils.ServletUtils; import org.dromara.common.core.utils.SpringUtils; import org.dromara.common.core.utils.StringUtils; import org.dromara.common.satoken.utils.LoginHelper; import org.dromara.common.security.config.properties.SecurityProperties; import org.dromara.common.security.handler.AllUrlHandler; +import org.springframework.beans.factory.annotation.Value; import org.springframework.boot.autoconfigure.AutoConfiguration; import org.springframework.boot.context.properties.EnableConfigurationProperties; import org.springframework.context.annotation.Bean; @@ -37,6 +37,8 @@ import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; public class SecurityConfig implements WebMvcConfigurer { private final SecurityProperties securityProperties; + @Value("${sse.path}") + private String ssePath; /** * 注册sa-token的拦截器 @@ -54,15 +56,7 @@ public class SecurityConfig implements WebMvcConfigurer { .check(() -> { HttpServletRequest request = ServletUtils.getRequest(); // 检查是否登录 是否有token - try { - StpUtil.checkLogin(); - } catch (NotLoginException e) { - if (request.getRequestURI().contains("sse")) { - throw new SseException(e.getMessage(), e.getCode()); - } else { - throw e; - } - } + StpUtil.checkLogin(); // 检查 header 与 param 里的 clientid 与 token 里的是否一致 String headerCid = request.getHeader(LoginHelper.CLIENT_KEY); @@ -84,7 +78,8 @@ public class SecurityConfig implements WebMvcConfigurer { }); })).addPathPatterns("/**") // 排除不需要拦截的路径 - .excludePathPatterns(securityProperties.getExcludes()); + .excludePathPatterns(securityProperties.getExcludes()) + .excludePathPatterns(ssePath); } /** diff --git a/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/controller/SseController.java b/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/controller/SseController.java index e5331e419..412834cfb 100644 --- a/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/controller/SseController.java +++ b/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/controller/SseController.java @@ -33,6 +33,7 @@ public class SseController implements DisposableBean { */ @GetMapping(value = "${sse.path}", produces = MediaType.TEXT_EVENT_STREAM_VALUE) public SseEmitter connect() { + StpUtil.checkLogin(); String tokenValue = StpUtil.getTokenValue(); Long userId = LoginHelper.getUserId(); return sseEmitterManager.connect(userId, tokenValue); diff --git a/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/core/TenantSaTokenDao.java b/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/core/TenantSaTokenDao.java index b8da28ef1..9aaa753ec 100644 --- a/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/core/TenantSaTokenDao.java +++ b/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/core/TenantSaTokenDao.java @@ -81,6 +81,17 @@ public class TenantSaTokenDao extends PlusSaTokenDao { return super.getObject(GlobalConstants.GLOBAL_REDIS_KEY + key); } + /** + * 获取 Object (指定反序列化类型),如无返空 + * + * @param key 键名称 + * @return object + */ + @Override + public T getObject(String key, Class classType) { + return super.getObject(GlobalConstants.GLOBAL_REDIS_KEY + key, classType); + } + /** * 写入Object,并设定存活时间 (单位: 秒) */ @@ -137,7 +148,6 @@ public class TenantSaTokenDao extends PlusSaTokenDao { RedisUtils.expire(GlobalConstants.GLOBAL_REDIS_KEY + key, Duration.ofSeconds(timeout)); } - /** * 搜索数据 */ diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysProfileController.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysProfileController.java index 7a6bc2c1d..8903a7406 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysProfileController.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysProfileController.java @@ -1,8 +1,8 @@ package org.dromara.system.controller.system; -import cn.dev33.satoken.secure.BCrypt; import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.io.FileUtil; +import cn.hutool.crypto.digest.BCrypt; import lombok.RequiredArgsConstructor; import org.dromara.common.core.domain.R; import org.dromara.common.core.utils.StringUtils; diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysUserController.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysUserController.java index e1e868a6e..774f26a3e 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysUserController.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysUserController.java @@ -1,10 +1,10 @@ package org.dromara.system.controller.system; import cn.dev33.satoken.annotation.SaCheckPermission; -import cn.dev33.satoken.secure.BCrypt; import cn.hutool.core.lang.tree.Tree; import cn.hutool.core.util.ArrayUtil; import cn.hutool.core.util.ObjectUtil; +import cn.hutool.crypto.digest.BCrypt; import jakarta.servlet.http.HttpServletResponse; import jakarta.validation.constraints.NotNull; import lombok.RequiredArgsConstructor; diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java index a73415c64..ca088607b 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java @@ -1,11 +1,11 @@ package org.dromara.system.service.impl; -import cn.dev33.satoken.secure.BCrypt; import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.convert.Convert; import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.RandomUtil; +import cn.hutool.crypto.digest.BCrypt; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -- Gitee From 5c9721cfac181b669ce184917d03f512efa31780 Mon Sep 17 00:00:00 2001 From: AprilWind <2100166581@qq.com> Date: Fri, 11 Apr 2025 16:01:03 +0800 Subject: [PATCH 526/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=E5=B7=A5?= =?UTF-8?q?=E4=BD=9C=E6=B5=81=E6=9D=83=E9=99=90=E6=8C=89=E9=92=AE=E8=8E=B7?= =?UTF-8?q?=E5=8F=96=EF=BC=8C=E8=8B=A5=E9=9C=80=E8=A6=81=E6=89=A9=E5=B1=95?= =?UTF-8?q?=E6=9B=B4=E5=A4=9A=E6=8C=89=E9=92=AE=E6=9D=83=E9=99=90=EF=BC=8C?= =?UTF-8?q?=E5=8F=AA=E9=9C=80=E5=9C=A8=20sources=20=E4=B8=AD=E6=96=B0?= =?UTF-8?q?=E5=A2=9E=E5=AF=B9=E5=BA=94=E7=9A=84=E6=9E=9A=E4=B8=BE=E7=B1=BB?= =?UTF-8?q?=E6=88=96=E5=AD=97=E5=85=B8=E7=B1=BB=E5=9E=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...ermission.java => ButtonPermissionVo.java} | 15 +++- .../workflow/domain/vo/FlowTaskVo.java | 36 +------- .../workflow/service/IFlwNodeExtService.java | 22 +++++ .../impl/FlwDefinitionServiceImpl.java | 2 +- .../service/impl/FlwNodeExtServiceImpl.java | 82 ++++++++++++++++++- .../service/impl/FlwTaskServiceImpl.java | 8 +- 6 files changed, 124 insertions(+), 41 deletions(-) rename ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/{ButtonPermission.java => ButtonPermissionVo.java} (61%) create mode 100644 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IFlwNodeExtService.java diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/ButtonPermission.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/ButtonPermissionVo.java similarity index 61% rename from ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/ButtonPermission.java rename to ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/ButtonPermissionVo.java index 51f320d2d..eb26a4502 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/ButtonPermission.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/ButtonPermissionVo.java @@ -12,18 +12,18 @@ import java.io.Serializable; * @date 2025-02-28 */ @Data -public class ButtonPermission implements Serializable { +public class ButtonPermissionVo implements Serializable { @Serial private static final long serialVersionUID = 1L; /** - * 枚举路径 + * 唯一编码 */ private String code; /** - * 按钮编码 + * 选项值 */ private String value; @@ -31,4 +31,13 @@ public class ButtonPermission implements Serializable { * 是否显示 */ private boolean show; + + public ButtonPermissionVo() { + } + + public ButtonPermissionVo(String code, boolean show) { + this.code = code; + this.show = show; + } + } diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/FlowTaskVo.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/FlowTaskVo.java index 785e866c8..e3b37ed86 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/FlowTaskVo.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/FlowTaskVo.java @@ -1,20 +1,16 @@ package org.dromara.workflow.domain.vo; -import cn.hutool.core.collection.CollUtil; -import cn.hutool.json.JSONUtil; import lombok.Data; -import org.dromara.common.core.utils.StringUtils; import org.dromara.common.translation.annotation.Translation; import org.dromara.common.translation.constant.TransConstant; import org.dromara.warm.flow.core.entity.User; import org.dromara.workflow.common.constant.FlowConstant; -import org.dromara.workflow.common.enums.ButtonPermissionEnum; import java.io.Serial; import java.io.Serializable; import java.math.BigDecimal; -import java.util.*; -import java.util.stream.Collectors; +import java.util.Date; +import java.util.List; /** * 任务视图 @@ -186,30 +182,6 @@ public class FlowTaskVo implements Serializable { /** * 按钮权限 */ - private List buttonList; - - public List getButtonList(String ext) { - List buttonPermissions = Arrays.stream(ButtonPermissionEnum.values()) - .map(value -> { - ButtonPermission buttonPermission = new ButtonPermission(); - buttonPermission.setCode(value.getValue()); - buttonPermission.setShow(false); - return buttonPermission; - }) - .collect(Collectors.toList()); - if (StringUtils.isNotBlank(ext)) { - List buttonCodeList = JSONUtil.toList(JSONUtil.parseArray(ext), ButtonPermission.class); - if (CollUtil.isNotEmpty(buttonCodeList)) { - Optional firstPermission = buttonCodeList.stream().findFirst(); - firstPermission.ifPresent(permission -> { - Set codeSet = Arrays.stream(permission.getValue().split(",")) - .map(String::trim) - .filter(code -> !code.isEmpty()) - .collect(Collectors.toSet()); - buttonPermissions.forEach(bp -> bp.setShow(codeSet.contains(bp.getCode()))); - }); - } - } - return buttonPermissions; - } + private List buttonList; + } diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IFlwNodeExtService.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IFlwNodeExtService.java new file mode 100644 index 000000000..959516535 --- /dev/null +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IFlwNodeExtService.java @@ -0,0 +1,22 @@ +package org.dromara.workflow.service; + +import org.dromara.workflow.domain.vo.ButtonPermissionVo; + +import java.util.List; + +/** + * 流程节点扩展属性 服务层 + * + * @author AprilWind + */ +public interface IFlwNodeExtService { + + /** + * 从扩展属性构建按钮权限列表:根据 ext 中记录的权限值,标记每个按钮是否勾选 + * + * @param ext 扩展属性 JSON 字符串 + * @return 按钮权限 VO 列表 + */ + List buildButtonPermissionsFromExt(String ext); + +} diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwDefinitionServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwDefinitionServiceImpl.java index 7f0f67ec6..7936210d0 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwDefinitionServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwDefinitionServiceImpl.java @@ -191,7 +191,7 @@ public class FlwDefinitionServiceImpl implements IFlwDefinitionService { List flowDefinitions = flowDefinitionMapper.selectByIds(StreamUtils.toList(flowHisTasks, FlowHisTask::getDefinitionId)); if (CollUtil.isNotEmpty(flowDefinitions)) { String join = StreamUtils.join(flowDefinitions, FlowDefinition::getFlowCode); - log.error("流程定义【{}】已被使用不可被删除!", join); + log.info("流程定义【{}】已被使用不可被删除!", join); throw new ServiceException("流程定义【" + join + "】已被使用不可被删除!"); } } diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwNodeExtServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwNodeExtServiceImpl.java index a6af73988..fca21a367 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwNodeExtServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwNodeExtServiceImpl.java @@ -2,18 +2,25 @@ package org.dromara.workflow.service.impl; import cn.hutool.core.convert.Convert; import cn.hutool.core.util.ObjectUtil; +import cn.hutool.core.util.StrUtil; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.dromara.common.core.domain.dto.DictTypeDTO; import org.dromara.common.core.service.DictService; +import org.dromara.common.core.utils.StringUtils; +import org.dromara.common.json.utils.JsonUtils; import org.dromara.warm.flow.ui.service.NodeExtService; import org.dromara.warm.flow.ui.vo.NodeExt; import org.dromara.workflow.common.ConditionalOnEnable; import org.dromara.workflow.common.enums.ButtonPermissionEnum; import org.dromara.workflow.common.enums.NodeExtEnum; +import org.dromara.workflow.domain.vo.ButtonPermissionVo; +import org.dromara.workflow.service.IFlwNodeExtService; import org.springframework.stereotype.Service; import java.util.*; +import java.util.stream.Collectors; +import java.util.stream.Stream; /** * 流程设计器-节点扩展属性 @@ -24,14 +31,15 @@ import java.util.*; @Slf4j @RequiredArgsConstructor @Service -public class FlwNodeExtServiceImpl implements NodeExtService { +public class FlwNodeExtServiceImpl implements NodeExtService, IFlwNodeExtService { /** * 存储不同 dictType 对应的配置信息 */ private static final Map CHILD_NODE_MAP = new HashMap<>(); - record ButtonPermission(String label, Integer type, Boolean must, Boolean multiple) {} + record ButtonPermission(String label, Integer type, Boolean must, Boolean multiple) { + } static { CHILD_NODE_MAP.put(ButtonPermissionEnum.class.getSimpleName(), @@ -162,4 +170,74 @@ public class FlwNodeExtServiceImpl implements NodeExtService { return childNode; } + /** + * 从扩展属性构建按钮权限列表:根据 ext 中记录的权限值,标记每个按钮是否勾选 + * + * @param ext 扩展属性 JSON 字符串 + * @return 按钮权限 VO 列表 + */ + @Override + public List buildButtonPermissionsFromExt(String ext) { + // 解析 ext 为 Map>,用于标记权限 + Map> permissionMap = JsonUtils.parseArray(ext, ButtonPermissionVo.class) + .stream() + .collect(Collectors.toMap( + ButtonPermissionVo::getCode, + item -> StringUtils.splitList(item.getValue()).stream() + .map(String::trim) + .filter(StrUtil::isNotBlank) + .collect(Collectors.toSet()), + (a, b) -> b, + HashMap::new + )); + + // 构建按钮权限列表,标记哪些按钮在 permissionMap 中出现(表示已勾选) + return buildPermissionsFromSources(permissionMap, List.of(ButtonPermissionEnum.class)); + } + + /** + * 将权限映射与按钮权限来源(枚举类或字典类型)进行匹配,生成权限视图列表 + *

    + * 使用说明: + * - sources 支持传入多个来源类型,支持 NodeExtEnum 枚举类 或 字典类型字符串(dictType) + * - 若需要扩展更多按钮权限,只需在 sources 中新增对应的枚举类或字典类型 + *

    + * 示例: + * buildPermissionsFromSources(permissionMap, List.of(ButtonPermissionEnum.class, "custom_button_dict")); + * + * @param permissionMap 权限映射 + * @param sources 枚举类或字典类型列表 + * @return 按钮权限视图对象列表 + */ + @SuppressWarnings("unchecked cast") + private List buildPermissionsFromSources(Map> permissionMap, List sources) { + return sources.stream() + .flatMap(source -> { + if (source instanceof Class clazz && NodeExtEnum.class.isAssignableFrom(clazz)) { + Set selectedSet = permissionMap.getOrDefault(clazz.getSimpleName(), Collections.emptySet()); + return extractDictItems(this.buildChildNode((Class) clazz), selectedSet).stream(); + } else if (source instanceof String dictType) { + Set selectedSet = permissionMap.getOrDefault(dictType, Collections.emptySet()); + return extractDictItems(this.buildChildNode(dictType), selectedSet).stream(); + } + return Stream.empty(); + }).toList(); + } + + /** + * 从节点子项中提取字典项,并构建按钮权限视图对象列表 + * + * @param childNode 子节点 + * @param selectedSet 已选中的值集 + * @return 按钮权限视图对象列表 + */ + private List extractDictItems(NodeExt.ChildNode childNode, Set selectedSet) { + return Optional.ofNullable(childNode) + .map(NodeExt.ChildNode::getDict) + .orElse(List.of()) + .stream() + .map(dict -> new ButtonPermissionVo(dict.getValue(), selectedSet.contains(dict.getValue()))) + .toList(); + } + } diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java index 71f2a53f2..90c96a4f4 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java @@ -48,6 +48,7 @@ import org.dromara.workflow.handler.WorkflowPermissionHandler; import org.dromara.workflow.mapper.FlwCategoryMapper; import org.dromara.workflow.mapper.FlwTaskMapper; import org.dromara.workflow.service.IFlwCommonService; +import org.dromara.workflow.service.IFlwNodeExtService; import org.dromara.workflow.service.IFlwTaskAssigneeService; import org.dromara.workflow.service.IFlwTaskService; import org.springframework.stereotype.Service; @@ -86,6 +87,7 @@ public class FlwTaskServiceImpl implements IFlwTaskService { private final FlowNodeMapper flowNodeMapper; private final IFlwTaskAssigneeService flwTaskAssigneeService; private final IFlwCommonService flwCommonService; + private final IFlwNodeExtService flwNodeExtService; /** * 启动任务 @@ -561,12 +563,12 @@ public class FlwTaskServiceImpl implements IFlwTaskService { flowTaskVo.setFlowCode(definition.getFlowCode()); flowTaskVo.setFlowName(definition.getFlowName()); flowTaskVo.setBusinessId(instance.getBusinessId()); - //设置按钮权限 - FlowNode flowNode = getByNodeCode(flowTaskVo.getNodeCode(), instance.getDefinitionId()); + FlowNode flowNode = this.getByNodeCode(flowTaskVo.getNodeCode(), instance.getDefinitionId()); if (ObjectUtil.isNull(flowNode)) { throw new NullPointerException("当前【" + flowTaskVo.getNodeCode() + "】节点编码不存在"); } - flowTaskVo.setButtonList(flowTaskVo.getButtonList(flowNode.getExt())); + //设置按钮权限 + flowTaskVo.setButtonList(flwNodeExtService.buildButtonPermissionsFromExt(flowNode.getExt())); flowTaskVo.setNodeRatio(flowNode.getNodeRatio()); flowTaskVo.setApplyNode(flowNode.getNodeCode().equals(flwCommonService.applyNodeCode(task.getDefinitionId()))); return flowTaskVo; -- Gitee From 878cd7e9f03e1268e198942849c436efbf042d99 Mon Sep 17 00:00:00 2001 From: gssong <1742057357@qq.com> Date: Sat, 12 Apr 2025 17:22:44 +0800 Subject: [PATCH 527/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=E5=B7=A5?= =?UTF-8?q?=E4=BD=9C=E6=B5=81=E7=94=A8=E6=88=B7=E6=9F=A5=E8=AF=A2=E6=9E=84?= =?UTF-8?q?=E5=BB=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/FlwCommonServiceImpl.java | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwCommonServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwCommonServiceImpl.java index 9f92a154c..df4893d9b 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwCommonServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwCommonServiceImpl.java @@ -36,10 +36,7 @@ import org.dromara.workflow.service.IFlwTaskAssigneeService; import org.dromara.workflow.service.IFlwTaskService; import org.springframework.stereotype.Service; -import java.util.ArrayList; -import java.util.HashSet; -import java.util.List; -import java.util.Set; +import java.util.*; import java.util.stream.Collectors; @@ -83,16 +80,19 @@ public class FlwCommonServiceImpl implements IFlwCommonService { Set list = new HashSet<>(); Set processedBySet = new HashSet<>(); IFlwTaskAssigneeService taskAssigneeService = SpringUtils.getBean(IFlwTaskAssigneeService.class); - for (User user : userList) { + Map> userListMap = StreamUtils.groupByKey(userList, User::getType); + for (Map.Entry> entry : userListMap.entrySet()) { + List entryValue = entry.getValue(); + String processedBys = StreamUtils.join(entryValue, User::getProcessedBy); // 根据 processedBy 前缀判断处理人类型,分别获取用户列表 - List users = taskAssigneeService.fetchUsersByStorageId(user.getProcessedBy()); + List users = taskAssigneeService.fetchUsersByStorageId(processedBys); // 转换为 FlowUser 并添加到结果集合 if (CollUtil.isNotEmpty(users)) { users.forEach(dto -> { String processedBy = String.valueOf(dto.getUserId()); if (!processedBySet.contains(processedBy)) { FlowUser flowUser = new FlowUser(); - flowUser.setType(user.getType()); + flowUser.setType(entry.getKey()); flowUser.setProcessedBy(processedBy); flowUser.setAssociated(taskId); list.add(flowUser); -- Gitee From 9e78fcccf7a685b420a737fe040a3ba4452aef25 Mon Sep 17 00:00:00 2001 From: AprilWind <2100166581@qq.com> Date: Sun, 13 Apr 2025 12:46:24 +0800 Subject: [PATCH 528/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=E8=BF=94?= =?UTF-8?q?=E5=9B=9Evo=E7=9A=84boolean=E7=B1=BB=E5=9E=8B=E7=BB=9F=E4=B8=80?= =?UTF-8?q?=E4=BD=BF=E7=94=A8=E5=8C=85=E8=A3=85=E7=B1=BB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/dromara/common/core/domain/event/ProcessEvent.java | 2 +- .../src/main/java/org/dromara/system/domain/vo/MetaVo.java | 6 +++--- .../main/java/org/dromara/system/domain/vo/RouterVo.java | 2 +- .../main/java/org/dromara/system/domain/vo/SysRoleVo.java | 4 ++-- .../org/dromara/workflow/domain/vo/ButtonPermissionVo.java | 4 ++-- .../java/org/dromara/workflow/domain/vo/FlowTaskVo.java | 2 +- 6 files changed, 10 insertions(+), 10 deletions(-) diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/event/ProcessEvent.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/event/ProcessEvent.java index bc7b78065..7b15b85ae 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/event/ProcessEvent.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/event/ProcessEvent.java @@ -60,6 +60,6 @@ public class ProcessEvent implements Serializable { /** * 当为true时为申请人节点办理 */ - private boolean submit; + private Boolean submit; } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/MetaVo.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/MetaVo.java index f720cd74f..b2c11485c 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/MetaVo.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/MetaVo.java @@ -25,7 +25,7 @@ public class MetaVo { /** * 设置为true,则不会被 缓存 */ - private boolean noCache; + private Boolean noCache; /** * 内链地址(http(s)://开头) @@ -37,7 +37,7 @@ public class MetaVo { this.icon = icon; } - public MetaVo(String title, String icon, boolean noCache) { + public MetaVo(String title, String icon, Boolean noCache) { this.title = title; this.icon = icon; this.noCache = noCache; @@ -49,7 +49,7 @@ public class MetaVo { this.link = link; } - public MetaVo(String title, String icon, boolean noCache, String link) { + public MetaVo(String title, String icon, Boolean noCache, String link) { this.title = title; this.icon = icon; this.noCache = noCache; diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/RouterVo.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/RouterVo.java index 0d576ef15..d56e09da3 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/RouterVo.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/RouterVo.java @@ -27,7 +27,7 @@ public class RouterVo { /** * 是否隐藏路由,当设置 true 的时候该路由不会再侧边栏出现 */ - private boolean hidden; + private Boolean hidden; /** * 重定向地址,当设置 noRedirect 的时候该路由在面包屑导航中不可被点击 diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysRoleVo.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysRoleVo.java index 1913170ed..74f5ac721 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysRoleVo.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysRoleVo.java @@ -91,9 +91,9 @@ public class SysRoleVo implements Serializable { /** * 用户是否存在此角色标识 默认不存在 */ - private boolean flag = false; + private Boolean flag = false; - public boolean isSuperAdmin() { + public Boolean isSuperAdmin() { return SystemConstants.SUPER_ADMIN_ID.equals(this.roleId); } diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/ButtonPermissionVo.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/ButtonPermissionVo.java index eb26a4502..7175e5e09 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/ButtonPermissionVo.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/ButtonPermissionVo.java @@ -30,12 +30,12 @@ public class ButtonPermissionVo implements Serializable { /** * 是否显示 */ - private boolean show; + private Boolean show; public ButtonPermissionVo() { } - public ButtonPermissionVo(String code, boolean show) { + public ButtonPermissionVo(String code, Boolean show) { this.code = code; this.show = show; } diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/FlowTaskVo.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/FlowTaskVo.java index e3b37ed86..07a22c4f3 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/FlowTaskVo.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/FlowTaskVo.java @@ -177,7 +177,7 @@ public class FlowTaskVo implements Serializable { /** * 是否为申请人节点 */ - private boolean applyNode; + private Boolean applyNode; /** * 按钮权限 -- Gitee From d456ff64f11204ca7db7e43f4acfb4467f96ea5c Mon Sep 17 00:00:00 2001 From: AprilWind <2100166581@qq.com> Date: Sun, 13 Apr 2025 12:49:03 +0800 Subject: [PATCH 529/540] =?UTF-8?q?Revert=20"update=20=E4=BC=98=E5=8C=96?= =?UTF-8?q?=E8=BF=94=E5=9B=9Evo=E7=9A=84boolean=E7=B1=BB=E5=9E=8B=E7=BB=9F?= =?UTF-8?q?=E4=B8=80=E4=BD=BF=E7=94=A8=E5=8C=85=E8=A3=85=E7=B1=BB"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This reverts commit 9e78fcccf7a685b420a737fe040a3ba4452aef25. --- .../org/dromara/common/core/domain/event/ProcessEvent.java | 2 +- .../src/main/java/org/dromara/system/domain/vo/MetaVo.java | 6 +++--- .../main/java/org/dromara/system/domain/vo/RouterVo.java | 2 +- .../main/java/org/dromara/system/domain/vo/SysRoleVo.java | 4 ++-- .../org/dromara/workflow/domain/vo/ButtonPermissionVo.java | 4 ++-- .../java/org/dromara/workflow/domain/vo/FlowTaskVo.java | 2 +- 6 files changed, 10 insertions(+), 10 deletions(-) diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/event/ProcessEvent.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/event/ProcessEvent.java index 7b15b85ae..bc7b78065 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/event/ProcessEvent.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/event/ProcessEvent.java @@ -60,6 +60,6 @@ public class ProcessEvent implements Serializable { /** * 当为true时为申请人节点办理 */ - private Boolean submit; + private boolean submit; } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/MetaVo.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/MetaVo.java index b2c11485c..f720cd74f 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/MetaVo.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/MetaVo.java @@ -25,7 +25,7 @@ public class MetaVo { /** * 设置为true,则不会被 缓存 */ - private Boolean noCache; + private boolean noCache; /** * 内链地址(http(s)://开头) @@ -37,7 +37,7 @@ public class MetaVo { this.icon = icon; } - public MetaVo(String title, String icon, Boolean noCache) { + public MetaVo(String title, String icon, boolean noCache) { this.title = title; this.icon = icon; this.noCache = noCache; @@ -49,7 +49,7 @@ public class MetaVo { this.link = link; } - public MetaVo(String title, String icon, Boolean noCache, String link) { + public MetaVo(String title, String icon, boolean noCache, String link) { this.title = title; this.icon = icon; this.noCache = noCache; diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/RouterVo.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/RouterVo.java index d56e09da3..0d576ef15 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/RouterVo.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/RouterVo.java @@ -27,7 +27,7 @@ public class RouterVo { /** * 是否隐藏路由,当设置 true 的时候该路由不会再侧边栏出现 */ - private Boolean hidden; + private boolean hidden; /** * 重定向地址,当设置 noRedirect 的时候该路由在面包屑导航中不可被点击 diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysRoleVo.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysRoleVo.java index 74f5ac721..1913170ed 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysRoleVo.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysRoleVo.java @@ -91,9 +91,9 @@ public class SysRoleVo implements Serializable { /** * 用户是否存在此角色标识 默认不存在 */ - private Boolean flag = false; + private boolean flag = false; - public Boolean isSuperAdmin() { + public boolean isSuperAdmin() { return SystemConstants.SUPER_ADMIN_ID.equals(this.roleId); } diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/ButtonPermissionVo.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/ButtonPermissionVo.java index 7175e5e09..eb26a4502 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/ButtonPermissionVo.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/ButtonPermissionVo.java @@ -30,12 +30,12 @@ public class ButtonPermissionVo implements Serializable { /** * 是否显示 */ - private Boolean show; + private boolean show; public ButtonPermissionVo() { } - public ButtonPermissionVo(String code, Boolean show) { + public ButtonPermissionVo(String code, boolean show) { this.code = code; this.show = show; } diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/FlowTaskVo.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/FlowTaskVo.java index 07a22c4f3..e3b37ed86 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/FlowTaskVo.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/FlowTaskVo.java @@ -177,7 +177,7 @@ public class FlowTaskVo implements Serializable { /** * 是否为申请人节点 */ - private Boolean applyNode; + private boolean applyNode; /** * 按钮权限 -- Gitee From 71dddee1460a98986560b5c05f5a3ba36d21bf2d Mon Sep 17 00:00:00 2001 From: AprilWind <2100166581@qq.com> Date: Sun, 13 Apr 2025 13:28:40 +0800 Subject: [PATCH 530/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96Mybatis?= =?UTF-8?q?=E5=BC=82=E5=B8=B8=E5=A4=84=E7=90=86=E5=99=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/mybatis/handler/MybatisExceptionHandler.java | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/MybatisExceptionHandler.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/MybatisExceptionHandler.java index 518d52d23..9a572b56b 100644 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/MybatisExceptionHandler.java +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/MybatisExceptionHandler.java @@ -1,5 +1,6 @@ package org.dromara.common.mybatis.handler; +import cn.hutool.http.HttpStatus; import jakarta.servlet.http.HttpServletRequest; import lombok.extern.slf4j.Slf4j; import org.dromara.common.core.domain.R; @@ -25,7 +26,7 @@ public class MybatisExceptionHandler { public R handleDuplicateKeyException(DuplicateKeyException e, HttpServletRequest request) { String requestURI = request.getRequestURI(); log.error("请求地址'{}',数据库中已存在记录'{}'", requestURI, e.getMessage()); - return R.fail("数据库中已存在该记录,请联系管理员确认"); + return R.fail(HttpStatus.HTTP_CONFLICT, "数据库中已存在该记录,请联系管理员确认"); } /** @@ -35,12 +36,12 @@ public class MybatisExceptionHandler { public R handleCannotFindDataSourceException(MyBatisSystemException e, HttpServletRequest request) { String requestURI = request.getRequestURI(); String message = e.getMessage(); - if (StringUtils.contains("CannotFindDataSourceException", message)) { + if (StringUtils.contains(message, "CannotFindDataSourceException")) { log.error("请求地址'{}', 未找到数据源", requestURI); - return R.fail("未找到数据源,请联系管理员确认"); + return R.fail(HttpStatus.HTTP_INTERNAL_ERROR, "未找到数据源,请联系管理员确认"); } log.error("请求地址'{}', Mybatis系统异常", requestURI, e); - return R.fail(message); + return R.fail(HttpStatus.HTTP_INTERNAL_ERROR, message); } } -- Gitee From c171817d6aa70d9f40e0b2b1dbfe4f4ffc560e16 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Sun, 13 Apr 2025 19:16:57 +0800 Subject: [PATCH 531/540] =?UTF-8?q?add=20=E6=96=B0=E5=A2=9E=20=E4=B8=80?= =?UTF-8?q?=E5=A4=A7=E5=A0=86snailjob=E7=9A=84demo=E6=A1=88=E4=BE=8B(?= =?UTF-8?q?=E6=84=9F=E8=B0=A2=20=E8=80=81=E9=A9=AC)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/org/dromara/job/entity/BillDto.java | 30 ++++++++++ .../dromara/job/snailjob/AlipayBillTask.java | 42 +++++++++++++ .../dromara/job/snailjob/SummaryBillTask.java | 45 ++++++++++++++ .../job/snailjob/TestAnnoJobExecutor.java | 6 +- .../job/snailjob/TestBroadcastJob.java | 37 ++++++++++++ .../job/snailjob/TestMapJobAnnotation.java | 53 ++++++++++++++++ .../snailjob/TestMapReduceAnnotation1.java | 60 +++++++++++++++++++ .../job/snailjob/TestStaticShardingJob.java | 36 +++++++++++ .../dromara/job/snailjob/WechatBillTask.java | 43 +++++++++++++ 9 files changed, 350 insertions(+), 2 deletions(-) create mode 100644 ruoyi-modules/ruoyi-job/src/main/java/org/dromara/job/entity/BillDto.java create mode 100644 ruoyi-modules/ruoyi-job/src/main/java/org/dromara/job/snailjob/AlipayBillTask.java create mode 100644 ruoyi-modules/ruoyi-job/src/main/java/org/dromara/job/snailjob/SummaryBillTask.java create mode 100644 ruoyi-modules/ruoyi-job/src/main/java/org/dromara/job/snailjob/TestBroadcastJob.java create mode 100644 ruoyi-modules/ruoyi-job/src/main/java/org/dromara/job/snailjob/TestMapJobAnnotation.java create mode 100644 ruoyi-modules/ruoyi-job/src/main/java/org/dromara/job/snailjob/TestMapReduceAnnotation1.java create mode 100644 ruoyi-modules/ruoyi-job/src/main/java/org/dromara/job/snailjob/TestStaticShardingJob.java create mode 100644 ruoyi-modules/ruoyi-job/src/main/java/org/dromara/job/snailjob/WechatBillTask.java diff --git a/ruoyi-modules/ruoyi-job/src/main/java/org/dromara/job/entity/BillDto.java b/ruoyi-modules/ruoyi-job/src/main/java/org/dromara/job/entity/BillDto.java new file mode 100644 index 000000000..2661e3465 --- /dev/null +++ b/ruoyi-modules/ruoyi-job/src/main/java/org/dromara/job/entity/BillDto.java @@ -0,0 +1,30 @@ +package org.dromara.job.entity; + +import lombok.Data; + +import java.math.BigDecimal; + +@Data +public class BillDto { + + /** + * 账单ID + */ + private Long billId; + + /** + * 账单渠道 + */ + private String billChannel; + + /** + * 账单日期 + */ + private String billDate; + + /** + * 账单金额 + */ + private BigDecimal billAmount; + +} diff --git a/ruoyi-modules/ruoyi-job/src/main/java/org/dromara/job/snailjob/AlipayBillTask.java b/ruoyi-modules/ruoyi-job/src/main/java/org/dromara/job/snailjob/AlipayBillTask.java new file mode 100644 index 000000000..b8ad8cc39 --- /dev/null +++ b/ruoyi-modules/ruoyi-job/src/main/java/org/dromara/job/snailjob/AlipayBillTask.java @@ -0,0 +1,42 @@ +package org.dromara.job.snailjob; + +import cn.hutool.core.date.DateUtil; +import cn.hutool.core.util.StrUtil; +import com.aizuda.snailjob.client.job.core.annotation.JobExecutor; +import com.aizuda.snailjob.client.job.core.dto.JobArgs; +import com.aizuda.snailjob.client.model.ExecuteResult; +import com.aizuda.snailjob.common.log.SnailJobLog; +import org.dromara.common.json.utils.JsonUtils; +import org.dromara.job.entity.BillDto; +import org.springframework.stereotype.Component; + +import java.math.BigDecimal; + +/** + * DAG工作流任务-模拟支付宝账单任务 + * + * + * @author 老马 + */ +@Component +@JobExecutor(name = "alipayBillTask") +public class AlipayBillTask { + + public ExecuteResult jobExecute(JobArgs jobArgs) throws InterruptedException { + BillDto billDto = new BillDto(); + billDto.setBillId(23456789L); + billDto.setBillChannel("alipay"); + // 设置清算日期 + String settlementDate = (String) jobArgs.getWfContext().get("settlementDate"); + if (StrUtil.equals(settlementDate, "sysdate")) { + settlementDate = DateUtil.today(); + } + billDto.setBillDate(settlementDate); + billDto.setBillAmount(new BigDecimal("2345.67")); + // 把billDto对象放入上下文进行传递 + jobArgs.appendContext("alipay", JsonUtils.toJsonString(billDto)); + SnailJobLog.REMOTE.info("上下文: {}", jobArgs.getWfContext()); + return ExecuteResult.success(billDto); + } + +} diff --git a/ruoyi-modules/ruoyi-job/src/main/java/org/dromara/job/snailjob/SummaryBillTask.java b/ruoyi-modules/ruoyi-job/src/main/java/org/dromara/job/snailjob/SummaryBillTask.java new file mode 100644 index 000000000..bff15f97e --- /dev/null +++ b/ruoyi-modules/ruoyi-job/src/main/java/org/dromara/job/snailjob/SummaryBillTask.java @@ -0,0 +1,45 @@ +package org.dromara.job.snailjob; + +import cn.hutool.core.util.StrUtil; +import com.aizuda.snailjob.client.job.core.annotation.JobExecutor; +import com.aizuda.snailjob.client.job.core.dto.JobArgs; +import com.aizuda.snailjob.client.model.ExecuteResult; +import com.aizuda.snailjob.common.log.SnailJobLog; +import org.dromara.common.json.utils.JsonUtils; +import org.dromara.job.entity.BillDto; +import org.springframework.stereotype.Component; + +import java.math.BigDecimal; + +/** + * DAG工作流任务-模拟汇总账单任务 + * + * + * @author 老马 + */ +@Component +@JobExecutor(name = "summaryBillTask") +public class SummaryBillTask { + + public ExecuteResult jobExecute(JobArgs jobArgs) throws InterruptedException { + // 获得微信账单 + BigDecimal wechatAmount = BigDecimal.valueOf(0); + String wechat = (String) jobArgs.getWfContext("wechat"); + if (StrUtil.isNotBlank(wechat)) { + BillDto wechatBillDto = JsonUtils.parseObject(wechat, BillDto.class); + wechatAmount = wechatBillDto.getBillAmount(); + } + // 获得支付宝账单 + BigDecimal alipayAmount = BigDecimal.valueOf(0); + String alipay = (String) jobArgs.getWfContext("alipay"); + if (StrUtil.isNotBlank(alipay)) { + BillDto alipayBillDto = JsonUtils.parseObject(alipay, BillDto.class); + alipayAmount = alipayBillDto.getBillAmount(); + } + // 汇总账单 + BigDecimal totalAmount = wechatAmount.add(alipayAmount); + SnailJobLog.REMOTE.info("总金额: {}", totalAmount); + return ExecuteResult.success(totalAmount); + } + +} diff --git a/ruoyi-modules/ruoyi-job/src/main/java/org/dromara/job/snailjob/TestAnnoJobExecutor.java b/ruoyi-modules/ruoyi-job/src/main/java/org/dromara/job/snailjob/TestAnnoJobExecutor.java index 5bea9daf3..e5339f5b4 100644 --- a/ruoyi-modules/ruoyi-job/src/main/java/org/dromara/job/snailjob/TestAnnoJobExecutor.java +++ b/ruoyi-modules/ruoyi-job/src/main/java/org/dromara/job/snailjob/TestAnnoJobExecutor.java @@ -8,8 +8,10 @@ import com.aizuda.snailjob.common.log.SnailJobLog; import org.springframework.stereotype.Component; /** - * @author opensnail - * @date 2024-05-17 + * 正常任务 + * + * + * @author 老马 */ @Component @JobExecutor(name = "testJobExecutor") diff --git a/ruoyi-modules/ruoyi-job/src/main/java/org/dromara/job/snailjob/TestBroadcastJob.java b/ruoyi-modules/ruoyi-job/src/main/java/org/dromara/job/snailjob/TestBroadcastJob.java new file mode 100644 index 000000000..d77e72e6c --- /dev/null +++ b/ruoyi-modules/ruoyi-job/src/main/java/org/dromara/job/snailjob/TestBroadcastJob.java @@ -0,0 +1,37 @@ +package org.dromara.job.snailjob; + +import cn.hutool.core.util.RandomUtil; +import com.aizuda.snailjob.client.job.core.annotation.JobExecutor; +import com.aizuda.snailjob.client.job.core.dto.JobArgs; +import com.aizuda.snailjob.client.model.ExecuteResult; +import com.aizuda.snailjob.common.log.SnailJobLog; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.stereotype.Component; + +/** + * 广播任务 + * + * + * @author 老马 + */ +@Slf4j +@Component +@JobExecutor(name = "testBroadcastJob") +public class TestBroadcastJob { + + @Value("${snail-job.port}") + private int clientPort; + + public ExecuteResult jobExecute(JobArgs jobArgs) { + int randomInt = RandomUtil.randomInt(100); + log.info("随机数: {}", randomInt); + SnailJobLog.REMOTE.info("随机数: {},客户端端口:{}", randomInt, clientPort); + if (randomInt < 50) { + throw new RuntimeException("随机数小于50,收集日志任务执行失败"); + } + // 获得jobArgs 中传入的相加的两个数 + return ExecuteResult.success("随机数大于50,收集日志任务执行成功"); + } + +} diff --git a/ruoyi-modules/ruoyi-job/src/main/java/org/dromara/job/snailjob/TestMapJobAnnotation.java b/ruoyi-modules/ruoyi-job/src/main/java/org/dromara/job/snailjob/TestMapJobAnnotation.java new file mode 100644 index 000000000..6589ed1c5 --- /dev/null +++ b/ruoyi-modules/ruoyi-job/src/main/java/org/dromara/job/snailjob/TestMapJobAnnotation.java @@ -0,0 +1,53 @@ +package org.dromara.job.snailjob; + +import cn.hutool.core.thread.ThreadUtil; +import cn.hutool.extra.spring.SpringUtil; +import com.aizuda.snailjob.client.job.core.MapHandler; +import com.aizuda.snailjob.client.job.core.annotation.JobExecutor; +import com.aizuda.snailjob.client.job.core.annotation.MapExecutor; +import com.aizuda.snailjob.client.job.core.dto.MapArgs; +import com.aizuda.snailjob.client.model.ExecuteResult; +import com.aizuda.snailjob.common.log.SnailJobLog; +import org.springframework.stereotype.Component; + +import java.util.List; +import java.util.concurrent.TimeUnit; +import java.util.stream.Collectors; +import java.util.stream.IntStream; + +/** + * Map任务 动态分配 只分片不关注结果 + * + * + * @author 老马 + */ +@Component +@JobExecutor(name = "testMapJobAnnotation") +public class TestMapJobAnnotation { + + @MapExecutor + public ExecuteResult doJobMapExecute(MapArgs mapArgs, MapHandler mapHandler) { + // 生成1~200数值并分片 + int partitionSize = 50; + List> partition = IntStream.rangeClosed(1, 200) + .boxed() + .collect(Collectors.groupingBy(i -> (i - 1) / partitionSize)) + .values() + .stream() + .toList(); + SnailJobLog.REMOTE.info("端口:{}完成分配任务", SpringUtil.getProperty("server.port")); + return mapHandler.doMap(partition, "doCalc"); + } + + @MapExecutor(taskName = "doCalc") + public ExecuteResult doCalc(MapArgs mapArgs) { + List sourceList = (List) mapArgs.getMapResult(); + // 遍历sourceList的每一个元素,计算出一个累加值partitionTotal + int partitionTotal = sourceList.stream().mapToInt(i -> i).sum(); + // 打印日志到服务器 + ThreadUtil.sleep(3, TimeUnit.SECONDS); + SnailJobLog.REMOTE.info("端口:{},partitionTotal:{}", SpringUtil.getProperty("server.port"), partitionTotal); + return ExecuteResult.success(partitionTotal); + } + +} diff --git a/ruoyi-modules/ruoyi-job/src/main/java/org/dromara/job/snailjob/TestMapReduceAnnotation1.java b/ruoyi-modules/ruoyi-job/src/main/java/org/dromara/job/snailjob/TestMapReduceAnnotation1.java new file mode 100644 index 000000000..4ae2fa80a --- /dev/null +++ b/ruoyi-modules/ruoyi-job/src/main/java/org/dromara/job/snailjob/TestMapReduceAnnotation1.java @@ -0,0 +1,60 @@ +package org.dromara.job.snailjob; + +import cn.hutool.core.thread.ThreadUtil; +import cn.hutool.extra.spring.SpringUtil; +import com.aizuda.snailjob.client.job.core.MapHandler; +import com.aizuda.snailjob.client.job.core.annotation.JobExecutor; +import com.aizuda.snailjob.client.job.core.annotation.MapExecutor; +import com.aizuda.snailjob.client.job.core.annotation.ReduceExecutor; +import com.aizuda.snailjob.client.job.core.dto.MapArgs; +import com.aizuda.snailjob.client.job.core.dto.ReduceArgs; +import com.aizuda.snailjob.client.model.ExecuteResult; +import com.aizuda.snailjob.common.log.SnailJobLog; +import org.springframework.stereotype.Component; + +import java.util.List; +import java.util.concurrent.TimeUnit; +import java.util.stream.Collectors; +import java.util.stream.IntStream; + +/** + * MapReduce任务 动态分配 分片后合并结果 + * + * + * @author 老马 + */ +@Component +@JobExecutor(name = "testMapReduceAnnotation1") +public class TestMapReduceAnnotation1 { + + @MapExecutor + public ExecuteResult rootMapExecute(MapArgs mapArgs, MapHandler mapHandler) { + int partitionSize = 50; + List> partition = IntStream.rangeClosed(1, 200) + .boxed() + .collect(Collectors.groupingBy(i -> (i - 1) / partitionSize)) + .values() + .stream() + .toList(); + SnailJobLog.REMOTE.info("端口:{}完成分配任务", SpringUtil.getProperty("server.port")); + return mapHandler.doMap(partition, "doCalc"); + } + + @MapExecutor(taskName = "doCalc") + public ExecuteResult doCalc(MapArgs mapArgs) { + List sourceList = (List) mapArgs.getMapResult(); + // 遍历sourceList的每一个元素,计算出一个累加值partitionTotal + int partitionTotal = sourceList.stream().mapToInt(i -> i).sum(); + // 打印日志到服务器 + ThreadUtil.sleep(3, TimeUnit.SECONDS); + SnailJobLog.REMOTE.info("端口:{},partitionTotal:{}", SpringUtil.getProperty("server.port"), partitionTotal); + return ExecuteResult.success(partitionTotal); + } + + @ReduceExecutor + public ExecuteResult reduceExecute(ReduceArgs reduceArgs) { + int reduceTotal = reduceArgs.getMapResult().stream().mapToInt(i -> Integer.parseInt((String) i)).sum(); + SnailJobLog.REMOTE.info("端口:{},reduceTotal:{}", SpringUtil.getProperty("server.port"), reduceTotal); + return ExecuteResult.success(reduceTotal); + } +} diff --git a/ruoyi-modules/ruoyi-job/src/main/java/org/dromara/job/snailjob/TestStaticShardingJob.java b/ruoyi-modules/ruoyi-job/src/main/java/org/dromara/job/snailjob/TestStaticShardingJob.java new file mode 100644 index 000000000..07a1bc566 --- /dev/null +++ b/ruoyi-modules/ruoyi-job/src/main/java/org/dromara/job/snailjob/TestStaticShardingJob.java @@ -0,0 +1,36 @@ +package org.dromara.job.snailjob; + +import com.aizuda.snailjob.client.job.core.annotation.JobExecutor; +import com.aizuda.snailjob.client.job.core.dto.JobArgs; +import com.aizuda.snailjob.client.model.ExecuteResult; +import com.aizuda.snailjob.common.log.SnailJobLog; +import org.springframework.stereotype.Component; + +/** + * 静态分片 根据服务端任务参数分片 + * + * + * @author 老马 + */ +@Component +@JobExecutor(name = "testStaticShardingJob") +public class TestStaticShardingJob { + + public ExecuteResult jobExecute(JobArgs jobArgs) { + String jobParams = String.valueOf(jobArgs.getJobParams()); + SnailJobLog.LOCAL.info("开始执行分片任务,参数:{}", jobParams); + // 获得jobArgs 中传入的开始id和结束id + String[] split = jobParams.split(","); + Long fromId = Long.parseLong(split[0]); + Long toId = Long.parseLong(split[1]); + // 模拟数据库操作,对范围id,进行加密处理 + try { + SnailJobLog.REMOTE.info("开始对id范围:{}进行加密处理", fromId + "-" + toId); + Thread.sleep(3000); + SnailJobLog.REMOTE.info("对id范围:{}进行加密处理完成", fromId + "-" + toId); + } catch (InterruptedException e) { + return ExecuteResult.failure("任务执行失败"); + } + return ExecuteResult.success("执行分片任务完成"); + } +} diff --git a/ruoyi-modules/ruoyi-job/src/main/java/org/dromara/job/snailjob/WechatBillTask.java b/ruoyi-modules/ruoyi-job/src/main/java/org/dromara/job/snailjob/WechatBillTask.java new file mode 100644 index 000000000..d8caf1af0 --- /dev/null +++ b/ruoyi-modules/ruoyi-job/src/main/java/org/dromara/job/snailjob/WechatBillTask.java @@ -0,0 +1,43 @@ +package org.dromara.job.snailjob; + +import cn.hutool.core.date.DateUtil; +import cn.hutool.core.util.StrUtil; +import com.aizuda.snailjob.client.job.core.annotation.JobExecutor; +import com.aizuda.snailjob.client.job.core.dto.JobArgs; +import com.aizuda.snailjob.client.model.ExecuteResult; +import com.aizuda.snailjob.common.log.SnailJobLog; +import org.dromara.common.json.utils.JsonUtils; +import org.dromara.job.entity.BillDto; +import org.springframework.stereotype.Component; + +import java.math.BigDecimal; + +/** + * DAG工作流任务-模拟微信账单任务 + * + * + * @author 老马 + */ +@Component +@JobExecutor(name = "wechatBillTask") +public class WechatBillTask { + + public ExecuteResult jobExecute(JobArgs jobArgs) throws InterruptedException { + BillDto billDto = new BillDto(); + billDto.setBillId(123456789L); + billDto.setBillChannel("wechat"); + // 从上下文中获得清算日期并设置,如果上下文中清算日期 + // 是sysdate设置为当前日期;否则取管理页面设置的值 + String settlementDate = (String) jobArgs.getWfContext().get("settlementDate"); + if (StrUtil.equals(settlementDate, "sysdate")) { + settlementDate = DateUtil.today(); + } + billDto.setBillDate(settlementDate); + billDto.setBillAmount(new BigDecimal("1234.56")); + // 把billDto对象放入上下文进行传递 + jobArgs.appendContext("wechat", JsonUtils.toJsonString(billDto)); + SnailJobLog.REMOTE.info("上下文: {}", jobArgs.getWfContext()); + return ExecuteResult.success(billDto); + } + +} -- Gitee From ee6c0388dafce13a67a76fcbb89cace61707fd0d Mon Sep 17 00:00:00 2001 From: AprilWind <2100166581@qq.com> Date: Mon, 14 Apr 2025 09:05:15 +0800 Subject: [PATCH 532/540] update warm-flow 1.6.8 => 1.6.10 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 884d73092..a474f8b66 100644 --- a/pom.xml +++ b/pom.xml @@ -49,7 +49,7 @@ 8.7.2-20250101 - 1.6.8 + 1.6.10 3.2.2 -- Gitee From 142fb33d81cf329209b957896895de40a646c687 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Mon, 14 Apr 2025 09:33:36 +0800 Subject: [PATCH 533/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E5=AE=9E?= =?UTF-8?q?=E4=BD=93=E7=B1=BB=E7=BB=9F=E4=B8=80=E4=BD=BF=E7=94=A8=E5=8C=85?= =?UTF-8?q?=E8=A3=85=E7=B1=BB=E5=9E=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/dromara/common/core/domain/event/ProcessEvent.java | 2 +- .../src/main/java/org/dromara/system/domain/vo/MetaVo.java | 6 +++--- .../main/java/org/dromara/system/domain/vo/RouterVo.java | 2 +- .../org/dromara/workflow/domain/vo/ButtonPermissionVo.java | 4 ++-- .../java/org/dromara/workflow/domain/vo/FlowTaskVo.java | 2 +- .../dromara/workflow/service/impl/TestLeaveServiceImpl.java | 2 +- 6 files changed, 9 insertions(+), 9 deletions(-) diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/event/ProcessEvent.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/event/ProcessEvent.java index bc7b78065..7b15b85ae 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/event/ProcessEvent.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/event/ProcessEvent.java @@ -60,6 +60,6 @@ public class ProcessEvent implements Serializable { /** * 当为true时为申请人节点办理 */ - private boolean submit; + private Boolean submit; } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/MetaVo.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/MetaVo.java index f720cd74f..b2c11485c 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/MetaVo.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/MetaVo.java @@ -25,7 +25,7 @@ public class MetaVo { /** * 设置为true,则不会被 缓存 */ - private boolean noCache; + private Boolean noCache; /** * 内链地址(http(s)://开头) @@ -37,7 +37,7 @@ public class MetaVo { this.icon = icon; } - public MetaVo(String title, String icon, boolean noCache) { + public MetaVo(String title, String icon, Boolean noCache) { this.title = title; this.icon = icon; this.noCache = noCache; @@ -49,7 +49,7 @@ public class MetaVo { this.link = link; } - public MetaVo(String title, String icon, boolean noCache, String link) { + public MetaVo(String title, String icon, Boolean noCache, String link) { this.title = title; this.icon = icon; this.noCache = noCache; diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/RouterVo.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/RouterVo.java index 0d576ef15..d56e09da3 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/RouterVo.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/RouterVo.java @@ -27,7 +27,7 @@ public class RouterVo { /** * 是否隐藏路由,当设置 true 的时候该路由不会再侧边栏出现 */ - private boolean hidden; + private Boolean hidden; /** * 重定向地址,当设置 noRedirect 的时候该路由在面包屑导航中不可被点击 diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/ButtonPermissionVo.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/ButtonPermissionVo.java index eb26a4502..7175e5e09 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/ButtonPermissionVo.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/ButtonPermissionVo.java @@ -30,12 +30,12 @@ public class ButtonPermissionVo implements Serializable { /** * 是否显示 */ - private boolean show; + private Boolean show; public ButtonPermissionVo() { } - public ButtonPermissionVo(String code, boolean show) { + public ButtonPermissionVo(String code, Boolean show) { this.code = code; this.show = show; } diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/FlowTaskVo.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/FlowTaskVo.java index e3b37ed86..07a22c4f3 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/FlowTaskVo.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/FlowTaskVo.java @@ -177,7 +177,7 @@ public class FlowTaskVo implements Serializable { /** * 是否为申请人节点 */ - private boolean applyNode; + private Boolean applyNode; /** * 按钮权限 diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/TestLeaveServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/TestLeaveServiceImpl.java index 9ecd867ac..4ed393e58 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/TestLeaveServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/TestLeaveServiceImpl.java @@ -157,7 +157,7 @@ public class TestLeaveServiceImpl implements ITestLeaveService { // 办理意见 String message = Convert.toStr(params.get("message")); } - if (processEvent.isSubmit()) { + if (processEvent.getSubmit()) { testLeave.setStatus(BusinessStatusEnum.WAITING.getStatus()); } baseMapper.updateById(testLeave); -- Gitee From 33e1d34ce50a1c8f4a6b04a70c0f05e92c6a42aa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Mon, 14 Apr 2025 10:09:03 +0800 Subject: [PATCH 534/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E7=BC=93?= =?UTF-8?q?=E5=AD=98=E6=B3=A8=E8=A7=A3=E6=94=AF=E6=8C=81=E5=85=B3=E9=97=AD?= =?UTF-8?q?=E6=9C=AC=E5=9C=B0=E7=BC=93=E5=AD=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/core/constant/CacheNames.java | 5 +++-- .../redis/manager/PlusSpringCacheManager.java | 22 ++++++++++++++----- .../demo/controller/RedisCacheController.java | 2 +- 3 files changed, 20 insertions(+), 9 deletions(-) diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/CacheNames.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/CacheNames.java index 519034cf2..c38f39b47 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/CacheNames.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/CacheNames.java @@ -3,13 +3,14 @@ package org.dromara.common.core.constant; /** * 缓存组名称常量 *

    - * key 格式为 cacheNames#ttl#maxIdleTime#maxSize + * key 格式为 cacheNames#ttl#maxIdleTime#maxSize#local *

    * ttl 过期时间 如果设置为0则不过期 默认为0 * maxIdleTime 最大空闲时间 根据LRU算法清理空闲数据 如果设置为0则不检测 默认为0 * maxSize 组最大长度 根据LRU算法清理溢出数据 如果设置为0则无限长 默认为0 + * local 默认开启本地缓存为1 关闭本地缓存为0 *

    - * 例子: test#60s、test#0#60s、test#0#1m#1000、test#1h#0#500 + * 例子: test#60s、test#0#60s、test#0#1m#1000、test#1h#0#500、test#1h#0#500#0 * * @author Lion Li */ diff --git a/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/manager/PlusSpringCacheManager.java b/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/manager/PlusSpringCacheManager.java index 740e2a13b..8428ef725 100644 --- a/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/manager/PlusSpringCacheManager.java +++ b/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/manager/PlusSpringCacheManager.java @@ -145,18 +145,25 @@ public class PlusSpringCacheManager implements CacheManager { if (array.length > 3) { config.setMaxSize(Integer.parseInt(array[3])); } + int local = 1; + if (array.length > 4) { + local = Integer.parseInt(array[4]); + } if (config.getMaxIdleTime() == 0 && config.getTTL() == 0 && config.getMaxSize() == 0) { - return createMap(name, config); + return createMap(name, config, local); } - return createMapCache(name, config); + return createMapCache(name, config, local); } - private Cache createMap(String name, CacheConfig config) { + private Cache createMap(String name, CacheConfig config, int local) { RMap map = RedisUtils.getClient().getMap(name); - Cache cache = new CaffeineCacheDecorator(name, new RedissonCache(map, allowNullValues)); + Cache cache = new RedissonCache(map, allowNullValues); + if (local == 1) { + cache = new CaffeineCacheDecorator(name, cache); + } if (transactionAware) { cache = new TransactionAwareCacheDecorator(cache); } @@ -167,10 +174,13 @@ public class PlusSpringCacheManager implements CacheManager { return cache; } - private Cache createMapCache(String name, CacheConfig config) { + private Cache createMapCache(String name, CacheConfig config, int local) { RMapCache map = RedisUtils.getClient().getMapCache(name); - Cache cache = new CaffeineCacheDecorator(name, new RedissonCache(map, config, allowNullValues)); + Cache cache = new RedissonCache(map, config, allowNullValues); + if (local == 1) { + cache = new CaffeineCacheDecorator(name, cache); + } if (transactionAware) { cache = new TransactionAwareCacheDecorator(cache); } diff --git a/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/RedisCacheController.java b/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/RedisCacheController.java index 303cf885d..2335da4cd 100644 --- a/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/RedisCacheController.java +++ b/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/controller/RedisCacheController.java @@ -40,7 +40,7 @@ public class RedisCacheController { *

    * cacheNames 命名规则 查看 {@link CacheNames} 注释 支持多参数 */ - @Cacheable(cacheNames = "demo:cache#60s#10m#20", key = "#key", condition = "#key != null") + @Cacheable(cacheNames = "demo:cache#60s#10m#20#1", key = "#key", condition = "#key != null") @GetMapping("/test1") public R test1(String key, String value) { return R.ok("操作成功", value); -- Gitee From ea254745290429c032902e7edd149f9e3ca9a955 Mon Sep 17 00:00:00 2001 From: Q&Q <13153393+qlth@user.noreply.gitee.com> Date: Wed, 16 Apr 2025 06:22:07 +0000 Subject: [PATCH 535/540] =?UTF-8?q?!670=20fix=20=E4=BF=AE=E5=A4=8D=20sqlse?= =?UTF-8?q?rver=20=E8=84=9A=E6=9C=AC=E5=86=85=E7=9A=84=E7=BC=BA=E5=A4=B1?= =?UTF-8?q?=E7=AC=A6=E5=8F=B7=20*=20fix=20=E4=BF=AE=E5=A4=8D=20sqlserver?= =?UTF-8?q?=20=E8=84=9A=E6=9C=AC=E5=86=85=E7=9A=84=E7=BC=BA=E5=A4=B1?= =?UTF-8?q?=E7=AC=A6=E5=8F=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- script/sql/sqlserver/sqlserver_ry_vue_5.X.sql | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/script/sql/sqlserver/sqlserver_ry_vue_5.X.sql b/script/sql/sqlserver/sqlserver_ry_vue_5.X.sql index c5df3e8d2..f64d8f804 100644 --- a/script/sql/sqlserver/sqlserver_ry_vue_5.X.sql +++ b/script/sql/sqlserver/sqlserver_ry_vue_5.X.sql @@ -1239,7 +1239,7 @@ INSERT sys_dict_data VALUES (18, N'000000', 1, N'新增', N'1', N'sys_oper_type' GO INSERT sys_dict_data VALUES (19, N'000000', 2, N'修改', N'2', N'sys_oper_type', N'', N'info', N'N', 103, 1, getdate(), NULL, NULL, N'修改操作') GO -INSERT sys_dict_data VALUES (20, N'000000', 3, N'删除', N3, N'sys_oper_type', N'', N'danger', N'N', 103, 1, getdate(), NULL, NULL, N'删除操作') +INSERT sys_dict_data VALUES (20, N'000000', 3, N'删除', N'3', N'sys_oper_type', N'', N'danger', N'N', 103, 1, getdate(), NULL, NULL, N'删除操作') GO INSERT sys_dict_data VALUES (21, N'000000', 4, N'授权', N'4', N'sys_oper_type', N'', N'primary', N'N', 103, 1, getdate(), NULL, NULL, N'授权操作') GO @@ -3180,7 +3180,7 @@ INSERT INTO sys_oss_config VALUES (N'1', N'000000', N'minio', N'ruoyi', GO INSERT INTO sys_oss_config VALUES (N'2', N'000000', N'qiniu', N'XXXXXXXXXXXXXXXX', N'XXXXXXXXXXXXXXX', N'ruoyi', N'', N's3-cn-north-1.qiniucs.com', N'',N'N', N'', N'1', N'1', N'', 103, 1, getdate(), 1, getdate(), NULL) GO -INSERT INTO sys_oss_config VALUES (N3, N'000000', N'aliyun', N'XXXXXXXXXXXXXXX', N'XXXXXXXXXXXXXXX', N'ruoyi', N'', N'oss-cn-beijing.aliyuncs.com', N'',N'N', N'', N'1', N'1', N'', 103, 1, getdate(), 1, getdate(), NULL) +INSERT INTO sys_oss_config VALUES (N'3', N'000000', N'aliyun', N'XXXXXXXXXXXXXXX', N'XXXXXXXXXXXXXXX', N'ruoyi', N'', N'oss-cn-beijing.aliyuncs.com', N'',N'N', N'', N'1', N'1', N'', 103, 1, getdate(), 1, getdate(), NULL) GO INSERT INTO sys_oss_config VALUES (N'4', N'000000', N'qcloud', N'XXXXXXXXXXXXXXX', N'XXXXXXXXXXXXXXX', N'ruoyi-1250000000', N'', N'cos.ap-beijing.myqcloud.com', N'',N'N', N'ap-beijing', N'1', N'1', N'', 103, 1, getdate(), 1, getdate(), NULL) GO -- Gitee From 7c2efb1aefdd004ae45672896138e3fdb97886c0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 17 Apr 2025 14:00:13 +0800 Subject: [PATCH 536/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20getNextNo?= =?UTF-8?q?deList=20=E5=8F=AA=E8=8E=B7=E5=8F=96=E4=B8=AD=E9=97=B4=E8=8A=82?= =?UTF-8?q?=E7=82=B9=E7=94=A8=E4=BA=8E=E5=AE=A1=E6=89=B9=20=E8=BF=87?= =?UTF-8?q?=E6=BB=A4=E5=85=B6=E4=BB=96=E6=97=A0=E7=94=A8=E8=8A=82=E7=82=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dromara/workflow/service/impl/FlwTaskServiceImpl.java | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java index 90c96a4f4..5685ac3dc 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java @@ -587,13 +587,15 @@ public class FlwTaskServiceImpl implements IFlwTaskService { Instance instance = insService.getById(task.getInstanceId()); Definition definition = defService.getById(task.getDefinitionId()); Map mergeVariable = MapUtil.mergeAll(instance.getVariableMap(), variables); - //获取下一节点列表 + // 获取下一节点列表 List nextNodeList = nodeService.getNextNodeList(task.getDefinitionId(), task.getNodeCode(), null, SkipType.PASS.getKey(), mergeVariable); List nextFlowNodes = BeanUtil.copyToList(nextNodeList, FlowNode.class); + // 只获取中间节点 + nextFlowNodes = StreamUtils.filter(nextFlowNodes, node -> NodeType.BETWEEN.getKey().equals(node.getNodeType())); if (CollUtil.isNotEmpty(nextNodeList)) { - //构建以下节点数据 + // 构建以下节点数据 List buildNextTaskList = StreamUtils.toList(nextNodeList, node -> taskService.addTask(node, instance, definition, null)); - //办理人变量替换 + // 办理人变量替换 ExpressionUtil.evalVariable(buildNextTaskList, mergeVariable); for (FlowNode flowNode : nextFlowNodes) { buildNextTaskList.stream().filter(t -> t.getNodeCode().equals(flowNode.getNodeCode())).findFirst().ifPresent(t -> { -- Gitee From 3b46f8c8cf4ef4e6b4a6f28c4f9ca408882bd384 Mon Sep 17 00:00:00 2001 From: AprilWind <2100166581@qq.com> Date: Fri, 18 Apr 2025 11:48:31 +0800 Subject: [PATCH 537/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=E8=BF=94?= =?UTF-8?q?=E5=9B=9E=E4=BB=BB=E5=8A=A1=E6=8C=87=E6=B4=BE=E7=9A=84=E5=88=97?= =?UTF-8?q?=E8=A1=A8=E5=A2=9E=E5=8A=A0=E6=97=B6=E9=97=B4=E6=9F=A5=E8=AF=A2?= =?UTF-8?q?=E6=9D=A1=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/dromara/system/service/impl/SysDeptServiceImpl.java | 4 ++++ .../org/dromara/system/service/impl/SysPostServiceImpl.java | 4 ++++ .../system/service/impl/SysTaskAssigneeServiceImpl.java | 4 ++-- 3 files changed, 10 insertions(+), 2 deletions(-) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java index 98aad216b..5e4904d05 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java @@ -39,6 +39,7 @@ import org.springframework.transaction.annotation.Transactional; import java.util.ArrayList; import java.util.Arrays; import java.util.List; +import java.util.Map; /** * 部门管理 服务实现 @@ -92,6 +93,7 @@ public class SysDeptServiceImpl implements ISysDeptService, DeptService { } private LambdaQueryWrapper buildQueryWrapper(SysDeptBo bo) { + Map params = bo.getParams(); LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); lqw.eq(SysDept::getDelFlag, SystemConstants.NORMAL); lqw.eq(ObjectUtil.isNotNull(bo.getDeptId()), SysDept::getDeptId, bo.getDeptId()); @@ -99,6 +101,8 @@ public class SysDeptServiceImpl implements ISysDeptService, DeptService { lqw.like(StringUtils.isNotBlank(bo.getDeptName()), SysDept::getDeptName, bo.getDeptName()); lqw.like(StringUtils.isNotBlank(bo.getDeptCategory()), SysDept::getDeptCategory, bo.getDeptCategory()); lqw.eq(StringUtils.isNotBlank(bo.getStatus()), SysDept::getStatus, bo.getStatus()); + lqw.between(params.get("beginTime") != null && params.get("endTime") != null, + SysDept::getCreateTime, params.get("beginTime"), params.get("endTime")); lqw.orderByAsc(SysDept::getAncestors); lqw.orderByAsc(SysDept::getParentId); lqw.orderByAsc(SysDept::getOrderNum); diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysPostServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysPostServiceImpl.java index 894f6acc8..122492e0c 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysPostServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysPostServiceImpl.java @@ -27,6 +27,7 @@ import org.springframework.stereotype.Service; import java.util.Arrays; import java.util.List; +import java.util.Map; /** * 岗位信息 服务层处理 @@ -76,11 +77,14 @@ public class SysPostServiceImpl implements ISysPostService, PostService { * @return 构建好的查询包装器 */ private LambdaQueryWrapper buildQueryWrapper(SysPostBo bo) { + Map params = bo.getParams(); LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); wrapper.like(StringUtils.isNotBlank(bo.getPostCode()), SysPost::getPostCode, bo.getPostCode()) .like(StringUtils.isNotBlank(bo.getPostCategory()), SysPost::getPostCategory, bo.getPostCategory()) .like(StringUtils.isNotBlank(bo.getPostName()), SysPost::getPostName, bo.getPostName()) .eq(StringUtils.isNotBlank(bo.getStatus()), SysPost::getStatus, bo.getStatus()) + .between(params.get("beginTime") != null && params.get("endTime") != null, + SysPost::getCreateTime, params.get("beginTime"), params.get("endTime")) .orderByAsc(SysPost::getPostSort); if (ObjectUtil.isNotNull(bo.getDeptId())) { //优先单部门搜索 diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTaskAssigneeServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTaskAssigneeServiceImpl.java index d4f2c0d4e..31e9be902 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTaskAssigneeServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTaskAssigneeServiceImpl.java @@ -49,8 +49,8 @@ public class SysTaskAssigneeServiceImpl implements TaskAssigneeService { public TaskAssigneeDTO selectRolesByTaskAssigneeList(TaskAssigneeBody taskQuery) { PageQuery pageQuery = new PageQuery(taskQuery.getPageSize(), taskQuery.getPageNum()); SysRoleBo bo = new SysRoleBo(); - bo.setRoleName(taskQuery.getHandlerCode()); - bo.setRoleKey(taskQuery.getHandlerName()); + bo.setRoleKey(taskQuery.getHandlerCode()); + bo.setRoleName(taskQuery.getHandlerName()); Map params = bo.getParams(); params.put("beginTime", taskQuery.getBeginTime()); params.put("endTime", taskQuery.getEndTime()); -- Gitee From 2a34c3ebb283dff31f53533457e02c2339ba4952 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=A9=AC=E9=93=83=E8=96=AF=E5=A4=B4?= <5601833+xlsea@user.noreply.gitee.com> Date: Fri, 18 Apr 2025 05:30:12 +0000 Subject: [PATCH 538/540] =?UTF-8?q?!672=20fix:=20=E4=BF=AE=E5=A4=8D=20exce?= =?UTF-8?q?l=20=E5=90=88=E5=B9=B6=E5=8D=95=E5=85=83=E6=A0=BC=E5=9C=A8?= =?UTF-8?q?=E5=AF=BC=E5=87=BA=E5=9C=A8=E6=9C=80=E5=90=8E=E4=B8=80=E8=A1=8C?= =?UTF-8?q?=E6=97=A0=E6=B3=95=E5=90=88=E5=B9=B6=E6=97=B6=EF=BC=8C=E4=B9=8B?= =?UTF-8?q?=E5=89=8D=E7=9A=84=E6=95=B0=E6=8D=AE=E5=90=88=E5=B9=B6=E5=A4=B1?= =?UTF-8?q?=E6=95=88=E9=97=AE=E9=A2=98=20*=20fix:=20=E4=BF=AE=E5=A4=8D=20e?= =?UTF-8?q?xcel=20=E5=90=88=E5=B9=B6=E5=8D=95=E5=85=83=E6=A0=BC=E5=9C=A8?= =?UTF-8?q?=E5=AF=BC=E5=87=BA=E5=9C=A8=E6=9C=80=E5=90=8E=E4=B8=80=E8=A1=8C?= =?UTF-8?q?=E6=97=A0=E6=B3=95=E5=90=88=E5=B9=B6=E6=97=B6=EF=BC=8C=E4=B9=8B?= =?UTF-8?q?=E5=89=8D=E7=9A=84=E6=95=B0=E6=8D=AE=E5=90=88=E5=B9=B6=E5=A4=B1?= =?UTF-8?q?=E6=95=88=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/dromara/common/excel/core/CellMergeStrategy.java | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/core/CellMergeStrategy.java b/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/core/CellMergeStrategy.java index 7c7721c60..1c7d97fc4 100644 --- a/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/core/CellMergeStrategy.java +++ b/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/core/CellMergeStrategy.java @@ -112,7 +112,13 @@ public class CellMergeStrategy extends AbstractMergeStrategy implements Workbook } map.put(field, new RepeatCell(val, i)); } else if (i == list.size() - 1) { - if (i > repeatCell.getCurrent() && isMerge(list, i, field)) { + if (!isMerge(list, i, field)) { + // 如果最后一行不能合并,检查之前的数据是否需要合并 + if (i - repeatCell.getCurrent() > 1) { + cellList.add(new CellRangeAddress(repeatCell.getCurrent() + rowIndex, i + rowIndex - 1, colNum, colNum)); + } + } else if (i > repeatCell.getCurrent()) { + // 如果最后一行可以合并,则直接合并到最后 cellList.add(new CellRangeAddress(repeatCell.getCurrent() + rowIndex, i + rowIndex, colNum, colNum)); } } else if (!isMerge(list, i, field)) { -- Gitee From ae65985fbcd1d41b3e51a3cc2dacd315e90398a8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=BF=99=E5=A4=8F=E5=A4=A9=E4=BE=9D=E7=84=B6=E5=B9=B3?= =?UTF-8?q?=E5=87=A1?= <1822213252@qq.com> Date: Fri, 18 Apr 2025 09:30:33 +0000 Subject: [PATCH 539/540] =?UTF-8?q?!668=20update=20EasyExcel=E5=8D=87?= =?UTF-8?q?=E7=BA=A7=E5=8E=9F=E4=BD=9C=E8=80=85FastExcel=20*=20remove=20?= =?UTF-8?q?=E7=A7=BB=E9=99=A4=E4=B9=8B=E5=89=8D=E6=9A=82=E6=97=B6=E6=80=A7?= =?UTF-8?q?=E6=8E=A7=E5=88=B6=E6=BC=8F=E6=B4=9E=E4=BE=9D=E8=B5=96=20*=20up?= =?UTF-8?q?date=20EasyExcel=E5=8D=87=E7=BA=A71.2.0=E5=B9=B6=E5=8D=87?= =?UTF-8?q?=E7=BA=A7commons-io=E5=88=B0=E6=9C=80=E6=96=B0=E7=89=88?= =?UTF-8?q?=E8=A7=A3=E5=86=B3=E5=AF=BC=E5=87=BA=E6=8A=A5=E6=96=B9=E6=B3=95?= =?UTF-8?q?=E6=89=BE=E4=B8=8D=E5=88=B0=E5=BC=82=E5=B8=B8=20*=20update=20Ea?= =?UTF-8?q?syExcel=E5=8D=87=E7=BA=A7=E5=8E=9F=E4=BD=9C=E8=80=85FastExcel?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 14 +++----- ruoyi-common/ruoyi-common-excel/pom.xml | 4 +-- .../excel/convert/ExcelBigNumberConvert.java | 12 +++---- .../excel/convert/ExcelDictConvert.java | 12 +++---- .../excel/convert/ExcelEnumConvert.java | 12 +++---- .../common/excel/core/CellMergeStrategy.java | 10 +++--- .../excel/core/DefaultExcelListener.java | 8 ++--- .../common/excel/core/ExcelDownHandler.java | 12 +++---- .../common/excel/core/ExcelListener.java | 2 +- .../excel/handler/DataWriteHandler.java | 18 +++++----- .../dromara/common/excel/utils/ExcelUtil.java | 34 +++++++++---------- .../demo/domain/bo/TestDemoImportVo.java | 2 +- .../dromara/demo/domain/vo/ExportDemoVo.java | 4 +-- .../dromara/demo/domain/vo/TestDemoVo.java | 4 +-- .../dromara/demo/domain/vo/TestTreeVo.java | 4 +-- .../demo/listener/ExportDemoListener.java | 2 +- .../src/main/resources/vm/java/vo.java.vm | 4 +-- .../dromara/system/domain/vo/SysClientVo.java | 4 +-- .../dromara/system/domain/vo/SysConfigVo.java | 4 +-- .../dromara/system/domain/vo/SysDeptVo.java | 4 +-- .../system/domain/vo/SysDictDataVo.java | 4 +-- .../system/domain/vo/SysDictTypeVo.java | 4 +-- .../system/domain/vo/SysLogininforVo.java | 4 +-- .../system/domain/vo/SysOperLogVo.java | 4 +-- .../system/domain/vo/SysOssConfigVo.java | 2 +- .../dromara/system/domain/vo/SysPostVo.java | 4 +-- .../dromara/system/domain/vo/SysRoleVo.java | 4 +-- .../system/domain/vo/SysTenantPackageVo.java | 4 +-- .../dromara/system/domain/vo/SysTenantVo.java | 4 +-- .../system/domain/vo/SysUserExportVo.java | 2 +- .../system/domain/vo/SysUserImportVo.java | 2 +- .../listener/SysUserImportListener.java | 4 +-- .../workflow/domain/vo/FlowCategoryVo.java | 4 +-- .../workflow/domain/vo/TestLeaveVo.java | 4 +-- 34 files changed, 107 insertions(+), 113 deletions(-) diff --git a/pom.xml b/pom.xml index a474f8b66..726b6727c 100644 --- a/pom.xml +++ b/pom.xml @@ -21,7 +21,7 @@ 3.5.16 2.8.5 0.15.0 - 4.0.3 + 1.2.0 2.3 1.42.0 3.5.11 @@ -166,9 +166,9 @@ - com.alibaba - easyexcel - ${easyexcel.version} + cn.idev.excel + fastexcel + ${fastexcel.version} @@ -321,12 +321,6 @@ ${ip2region.version} - - commons-io - commons-io - 2.15.0 - - com.alibaba fastjson diff --git a/ruoyi-common/ruoyi-common-excel/pom.xml b/ruoyi-common/ruoyi-common-excel/pom.xml index dd4a5eebe..47ba5284b 100644 --- a/ruoyi-common/ruoyi-common-excel/pom.xml +++ b/ruoyi-common/ruoyi-common-excel/pom.xml @@ -22,8 +22,8 @@ - com.alibaba - easyexcel + cn.idev.excel + fastexcel diff --git a/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/convert/ExcelBigNumberConvert.java b/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/convert/ExcelBigNumberConvert.java index 07cc4c4e7..c6beb5537 100644 --- a/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/convert/ExcelBigNumberConvert.java +++ b/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/convert/ExcelBigNumberConvert.java @@ -2,12 +2,12 @@ package org.dromara.common.excel.convert; import cn.hutool.core.convert.Convert; import cn.hutool.core.util.ObjectUtil; -import com.alibaba.excel.converters.Converter; -import com.alibaba.excel.enums.CellDataTypeEnum; -import com.alibaba.excel.metadata.GlobalConfiguration; -import com.alibaba.excel.metadata.data.ReadCellData; -import com.alibaba.excel.metadata.data.WriteCellData; -import com.alibaba.excel.metadata.property.ExcelContentProperty; +import cn.idev.excel.converters.Converter; +import cn.idev.excel.enums.CellDataTypeEnum; +import cn.idev.excel.metadata.GlobalConfiguration; +import cn.idev.excel.metadata.data.ReadCellData; +import cn.idev.excel.metadata.data.WriteCellData; +import cn.idev.excel.metadata.property.ExcelContentProperty; import lombok.extern.slf4j.Slf4j; import java.math.BigDecimal; diff --git a/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/convert/ExcelDictConvert.java b/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/convert/ExcelDictConvert.java index 61eeabfd7..c54816f76 100644 --- a/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/convert/ExcelDictConvert.java +++ b/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/convert/ExcelDictConvert.java @@ -3,12 +3,12 @@ package org.dromara.common.excel.convert; import cn.hutool.core.annotation.AnnotationUtil; import cn.hutool.core.convert.Convert; import cn.hutool.core.util.ObjectUtil; -import com.alibaba.excel.converters.Converter; -import com.alibaba.excel.enums.CellDataTypeEnum; -import com.alibaba.excel.metadata.GlobalConfiguration; -import com.alibaba.excel.metadata.data.ReadCellData; -import com.alibaba.excel.metadata.data.WriteCellData; -import com.alibaba.excel.metadata.property.ExcelContentProperty; +import cn.idev.excel.converters.Converter; +import cn.idev.excel.enums.CellDataTypeEnum; +import cn.idev.excel.metadata.GlobalConfiguration; +import cn.idev.excel.metadata.data.ReadCellData; +import cn.idev.excel.metadata.data.WriteCellData; +import cn.idev.excel.metadata.property.ExcelContentProperty; import org.dromara.common.excel.annotation.ExcelDictFormat; import org.dromara.common.core.service.DictService; import org.dromara.common.core.utils.SpringUtils; diff --git a/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/convert/ExcelEnumConvert.java b/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/convert/ExcelEnumConvert.java index b948ea7ee..5723e61e8 100644 --- a/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/convert/ExcelEnumConvert.java +++ b/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/convert/ExcelEnumConvert.java @@ -3,12 +3,12 @@ package org.dromara.common.excel.convert; import cn.hutool.core.annotation.AnnotationUtil; import cn.hutool.core.convert.Convert; import cn.hutool.core.util.ObjectUtil; -import com.alibaba.excel.converters.Converter; -import com.alibaba.excel.enums.CellDataTypeEnum; -import com.alibaba.excel.metadata.GlobalConfiguration; -import com.alibaba.excel.metadata.data.ReadCellData; -import com.alibaba.excel.metadata.data.WriteCellData; -import com.alibaba.excel.metadata.property.ExcelContentProperty; +import cn.idev.excel.converters.Converter; +import cn.idev.excel.enums.CellDataTypeEnum; +import cn.idev.excel.metadata.GlobalConfiguration; +import cn.idev.excel.metadata.data.ReadCellData; +import cn.idev.excel.metadata.data.WriteCellData; +import cn.idev.excel.metadata.property.ExcelContentProperty; import org.dromara.common.core.utils.reflect.ReflectUtils; import org.dromara.common.excel.annotation.ExcelEnumFormat; import lombok.extern.slf4j.Slf4j; diff --git a/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/core/CellMergeStrategy.java b/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/core/CellMergeStrategy.java index 1c7d97fc4..515f68e1b 100644 --- a/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/core/CellMergeStrategy.java +++ b/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/core/CellMergeStrategy.java @@ -3,11 +3,11 @@ package org.dromara.common.excel.core; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.util.ReflectUtil; import cn.hutool.core.util.StrUtil; -import com.alibaba.excel.annotation.ExcelProperty; -import com.alibaba.excel.metadata.Head; -import com.alibaba.excel.write.handler.WorkbookWriteHandler; -import com.alibaba.excel.write.handler.context.WorkbookWriteHandlerContext; -import com.alibaba.excel.write.merge.AbstractMergeStrategy; +import cn.idev.excel.annotation.ExcelProperty; +import cn.idev.excel.metadata.Head; +import cn.idev.excel.write.handler.WorkbookWriteHandler; +import cn.idev.excel.write.handler.context.WorkbookWriteHandlerContext; +import cn.idev.excel.write.merge.AbstractMergeStrategy; import lombok.AllArgsConstructor; import lombok.Data; import lombok.SneakyThrows; diff --git a/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/core/DefaultExcelListener.java b/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/core/DefaultExcelListener.java index b6fa0b434..e715c5fc3 100644 --- a/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/core/DefaultExcelListener.java +++ b/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/core/DefaultExcelListener.java @@ -1,10 +1,10 @@ package org.dromara.common.excel.core; import cn.hutool.core.util.StrUtil; -import com.alibaba.excel.context.AnalysisContext; -import com.alibaba.excel.event.AnalysisEventListener; -import com.alibaba.excel.exception.ExcelAnalysisException; -import com.alibaba.excel.exception.ExcelDataConvertException; +import cn.idev.excel.context.AnalysisContext; +import cn.idev.excel.event.AnalysisEventListener; +import cn.idev.excel.exception.ExcelAnalysisException; +import cn.idev.excel.exception.ExcelDataConvertException; import org.dromara.common.core.utils.StreamUtils; import org.dromara.common.core.utils.ValidatorUtils; import org.dromara.common.json.utils.JsonUtils; diff --git a/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/core/ExcelDownHandler.java b/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/core/ExcelDownHandler.java index d10ec70e6..4cda8587f 100644 --- a/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/core/ExcelDownHandler.java +++ b/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/core/ExcelDownHandler.java @@ -5,12 +5,12 @@ import cn.hutool.core.util.ArrayUtil; import cn.hutool.core.util.EnumUtil; import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; -import com.alibaba.excel.metadata.FieldCache; -import com.alibaba.excel.metadata.FieldWrapper; -import com.alibaba.excel.util.ClassUtils; -import com.alibaba.excel.write.handler.SheetWriteHandler; -import com.alibaba.excel.write.metadata.holder.WriteSheetHolder; -import com.alibaba.excel.write.metadata.holder.WriteWorkbookHolder; +import cn.idev.excel.metadata.FieldCache; +import cn.idev.excel.metadata.FieldWrapper; +import cn.idev.excel.util.ClassUtils; +import cn.idev.excel.write.handler.SheetWriteHandler; +import cn.idev.excel.write.metadata.holder.WriteSheetHolder; +import cn.idev.excel.write.metadata.holder.WriteWorkbookHolder; import lombok.extern.slf4j.Slf4j; import org.apache.poi.ss.usermodel.*; import org.apache.poi.ss.util.CellRangeAddressList; diff --git a/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/core/ExcelListener.java b/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/core/ExcelListener.java index 2d0340f25..957b30755 100644 --- a/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/core/ExcelListener.java +++ b/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/core/ExcelListener.java @@ -1,6 +1,6 @@ package org.dromara.common.excel.core; -import com.alibaba.excel.read.listener.ReadListener; +import cn.idev.excel.read.listener.ReadListener; /** * Excel 导入监听 diff --git a/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/handler/DataWriteHandler.java b/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/handler/DataWriteHandler.java index a2aa4951b..259f8225b 100644 --- a/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/handler/DataWriteHandler.java +++ b/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/handler/DataWriteHandler.java @@ -1,15 +1,15 @@ package org.dromara.common.excel.handler; import cn.hutool.core.collection.CollUtil; -import com.alibaba.excel.metadata.data.DataFormatData; -import com.alibaba.excel.metadata.data.WriteCellData; -import com.alibaba.excel.util.StyleUtil; -import com.alibaba.excel.write.handler.CellWriteHandler; -import com.alibaba.excel.write.handler.SheetWriteHandler; -import com.alibaba.excel.write.handler.context.CellWriteHandlerContext; -import com.alibaba.excel.write.metadata.holder.WriteSheetHolder; -import com.alibaba.excel.write.metadata.style.WriteCellStyle; -import com.alibaba.excel.write.metadata.style.WriteFont; +import cn.idev.excel.metadata.data.DataFormatData; +import cn.idev.excel.metadata.data.WriteCellData; +import cn.idev.excel.util.StyleUtil; +import cn.idev.excel.write.handler.CellWriteHandler; +import cn.idev.excel.write.handler.SheetWriteHandler; +import cn.idev.excel.write.handler.context.CellWriteHandlerContext; +import cn.idev.excel.write.metadata.holder.WriteSheetHolder; +import cn.idev.excel.write.metadata.style.WriteCellStyle; +import cn.idev.excel.write.metadata.style.WriteFont; import org.apache.poi.ss.usermodel.*; import org.apache.poi.xssf.usermodel.XSSFClientAnchor; import org.apache.poi.xssf.usermodel.XSSFRichTextString; diff --git a/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/utils/ExcelUtil.java b/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/utils/ExcelUtil.java index 70ab31d9c..1b35e559a 100644 --- a/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/utils/ExcelUtil.java +++ b/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/utils/ExcelUtil.java @@ -3,13 +3,13 @@ package org.dromara.common.excel.utils; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.io.resource.ClassPathResource; import cn.hutool.core.util.IdUtil; -import com.alibaba.excel.EasyExcel; -import com.alibaba.excel.ExcelWriter; -import com.alibaba.excel.write.builder.ExcelWriterSheetBuilder; -import com.alibaba.excel.write.metadata.WriteSheet; -import com.alibaba.excel.write.metadata.fill.FillConfig; -import com.alibaba.excel.write.metadata.fill.FillWrapper; -import com.alibaba.excel.write.style.column.LongestMatchColumnWidthStyleStrategy; +import cn.idev.excel.FastExcel; +import cn.idev.excel.ExcelWriter; +import cn.idev.excel.write.builder.ExcelWriterSheetBuilder; +import cn.idev.excel.write.metadata.WriteSheet; +import cn.idev.excel.write.metadata.fill.FillConfig; +import cn.idev.excel.write.metadata.fill.FillWrapper; +import cn.idev.excel.write.style.column.LongestMatchColumnWidthStyleStrategy; import jakarta.servlet.ServletOutputStream; import jakarta.servlet.http.HttpServletResponse; import lombok.AccessLevel; @@ -43,7 +43,7 @@ public class ExcelUtil { * @return 转换后集合 */ public static List importExcel(InputStream is, Class clazz) { - return EasyExcel.read(is).head(clazz).autoCloseStream(false).sheet().doReadSync(); + return FastExcel.read(is).head(clazz).autoCloseStream(false).sheet().doReadSync(); } @@ -57,7 +57,7 @@ public class ExcelUtil { */ public static ExcelResult importExcel(InputStream is, Class clazz, boolean isValidate) { DefaultExcelListener listener = new DefaultExcelListener<>(isValidate); - EasyExcel.read(is, clazz, listener).sheet().doRead(); + FastExcel.read(is, clazz, listener).sheet().doRead(); return listener.getExcelResult(); } @@ -70,7 +70,7 @@ public class ExcelUtil { * @return 转换后集合 */ public static ExcelResult importExcel(InputStream is, Class clazz, ExcelListener listener) { - EasyExcel.read(is, clazz, listener).sheet().doRead(); + FastExcel.read(is, clazz, listener).sheet().doRead(); return listener.getExcelResult(); } @@ -186,7 +186,7 @@ public class ExcelUtil { */ public static void exportExcel(List list, String sheetName, Class clazz, boolean merge, OutputStream os, List options) { - ExcelWriterSheetBuilder builder = EasyExcel.write(os, clazz) + ExcelWriterSheetBuilder builder = FastExcel.write(os, clazz) .autoCloseStream(false) // 自动适配 .registerWriteHandler(new LongestMatchColumnWidthStyleStrategy()) @@ -237,14 +237,14 @@ public class ExcelUtil { */ public static void exportTemplate(List data, String templatePath, OutputStream os) { ClassPathResource templateResource = new ClassPathResource(templatePath); - ExcelWriter excelWriter = EasyExcel.write(os) + ExcelWriter excelWriter = FastExcel.write(os) .withTemplate(templateResource.getStream()) .autoCloseStream(false) // 大数值自动转换 防止失真 .registerConverter(new ExcelBigNumberConvert()) .registerWriteHandler(new DataWriteHandler(data.get(0).getClass())) .build(); - WriteSheet writeSheet = EasyExcel.writerSheet().build(); + WriteSheet writeSheet = FastExcel.writerSheet().build(); FillConfig fillConfig = FillConfig.builder().forceNewRow(Boolean.TRUE).build(); // 单表多数据导出 模板格式为 {.属性} for (T d : data) { @@ -310,13 +310,13 @@ public class ExcelUtil { */ public static void exportTemplateMultiList(Map data, String templatePath, OutputStream os) { ClassPathResource templateResource = new ClassPathResource(templatePath); - ExcelWriter excelWriter = EasyExcel.write(os) + ExcelWriter excelWriter = FastExcel.write(os) .withTemplate(templateResource.getStream()) .autoCloseStream(false) // 大数值自动转换 防止失真 .registerConverter(new ExcelBigNumberConvert()) .build(); - WriteSheet writeSheet = EasyExcel.writerSheet().build(); + WriteSheet writeSheet = FastExcel.writerSheet().build(); for (Map.Entry map : data.entrySet()) { // 设置列表后续还有数据 FillConfig fillConfig = FillConfig.builder().forceNewRow(Boolean.TRUE).build(); @@ -341,14 +341,14 @@ public class ExcelUtil { */ public static void exportTemplateMultiSheet(List> data, String templatePath, OutputStream os) { ClassPathResource templateResource = new ClassPathResource(templatePath); - ExcelWriter excelWriter = EasyExcel.write(os) + ExcelWriter excelWriter = FastExcel.write(os) .withTemplate(templateResource.getStream()) .autoCloseStream(false) // 大数值自动转换 防止失真 .registerConverter(new ExcelBigNumberConvert()) .build(); for (int i = 0; i < data.size(); i++) { - WriteSheet writeSheet = EasyExcel.writerSheet(i).build(); + WriteSheet writeSheet = FastExcel.writerSheet(i).build(); for (Map.Entry map : data.get(i).entrySet()) { // 设置列表后续还有数据 FillConfig fillConfig = FillConfig.builder().forceNewRow(Boolean.TRUE).build(); diff --git a/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/bo/TestDemoImportVo.java b/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/bo/TestDemoImportVo.java index c0661185e..dc8b35f49 100644 --- a/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/bo/TestDemoImportVo.java +++ b/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/bo/TestDemoImportVo.java @@ -1,6 +1,6 @@ package org.dromara.demo.domain.bo; -import com.alibaba.excel.annotation.ExcelProperty; +import cn.idev.excel.annotation.ExcelProperty; import lombok.Data; import jakarta.validation.constraints.NotBlank; diff --git a/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/vo/ExportDemoVo.java b/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/vo/ExportDemoVo.java index ef9058ed5..b42ce7679 100644 --- a/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/vo/ExportDemoVo.java +++ b/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/vo/ExportDemoVo.java @@ -1,7 +1,7 @@ package org.dromara.demo.domain.vo; -import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; -import com.alibaba.excel.annotation.ExcelProperty; +import cn.idev.excel.annotation.ExcelIgnoreUnannotated; +import cn.idev.excel.annotation.ExcelProperty; import jakarta.validation.constraints.NotEmpty; import jakarta.validation.constraints.NotNull; import lombok.AllArgsConstructor; diff --git a/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/vo/TestDemoVo.java b/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/vo/TestDemoVo.java index e7ea8075c..c6595b0e2 100644 --- a/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/vo/TestDemoVo.java +++ b/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/vo/TestDemoVo.java @@ -1,7 +1,7 @@ package org.dromara.demo.domain.vo; -import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; -import com.alibaba.excel.annotation.ExcelProperty; +import cn.idev.excel.annotation.ExcelIgnoreUnannotated; +import cn.idev.excel.annotation.ExcelProperty; import org.dromara.common.excel.annotation.ExcelNotation; import org.dromara.common.excel.annotation.ExcelRequired; import org.dromara.common.translation.annotation.Translation; diff --git a/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/vo/TestTreeVo.java b/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/vo/TestTreeVo.java index 58b4bdbc0..ee2336ac5 100644 --- a/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/vo/TestTreeVo.java +++ b/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/domain/vo/TestTreeVo.java @@ -1,7 +1,7 @@ package org.dromara.demo.domain.vo; -import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; -import com.alibaba.excel.annotation.ExcelProperty; +import cn.idev.excel.annotation.ExcelIgnoreUnannotated; +import cn.idev.excel.annotation.ExcelProperty; import org.dromara.demo.domain.TestTree; import io.github.linpeilie.annotations.AutoMapper; import lombok.Data; diff --git a/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/listener/ExportDemoListener.java b/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/listener/ExportDemoListener.java index 7bd4e1eea..de927609f 100644 --- a/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/listener/ExportDemoListener.java +++ b/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/listener/ExportDemoListener.java @@ -1,7 +1,7 @@ package org.dromara.demo.listener; import cn.hutool.core.util.NumberUtil; -import com.alibaba.excel.context.AnalysisContext; +import cn.idev.excel.context.AnalysisContext; import org.dromara.common.core.utils.ValidatorUtils; import org.dromara.common.core.validate.AddGroup; import org.dromara.common.core.validate.EditGroup; diff --git a/ruoyi-modules/ruoyi-generator/src/main/resources/vm/java/vo.java.vm b/ruoyi-modules/ruoyi-generator/src/main/resources/vm/java/vo.java.vm index 5591f9778..480394c72 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/resources/vm/java/vo.java.vm +++ b/ruoyi-modules/ruoyi-generator/src/main/resources/vm/java/vo.java.vm @@ -4,8 +4,8 @@ package ${packageName}.domain.vo; import ${import}; #end import ${packageName}.domain.${ClassName}; -import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; -import com.alibaba.excel.annotation.ExcelProperty; +import cn.idev.excel.annotation.ExcelIgnoreUnannotated; +import cn.idev.excel.annotation.ExcelProperty; import org.dromara.common.excel.annotation.ExcelDictFormat; import org.dromara.common.excel.convert.ExcelDictConvert; import io.github.linpeilie.annotations.AutoMapper; diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysClientVo.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysClientVo.java index 34f24eb36..82b0f46ca 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysClientVo.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysClientVo.java @@ -1,8 +1,8 @@ package org.dromara.system.domain.vo; import org.dromara.system.domain.SysClient; -import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; -import com.alibaba.excel.annotation.ExcelProperty; +import cn.idev.excel.annotation.ExcelIgnoreUnannotated; +import cn.idev.excel.annotation.ExcelProperty; import org.dromara.common.excel.annotation.ExcelDictFormat; import org.dromara.common.excel.convert.ExcelDictConvert; import io.github.linpeilie.annotations.AutoMapper; diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysConfigVo.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysConfigVo.java index f896000a3..a35e1323c 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysConfigVo.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysConfigVo.java @@ -1,7 +1,7 @@ package org.dromara.system.domain.vo; -import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; -import com.alibaba.excel.annotation.ExcelProperty; +import cn.idev.excel.annotation.ExcelIgnoreUnannotated; +import cn.idev.excel.annotation.ExcelProperty; import org.dromara.common.excel.annotation.ExcelDictFormat; import org.dromara.common.excel.convert.ExcelDictConvert; import org.dromara.system.domain.SysConfig; diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysDeptVo.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysDeptVo.java index 1f182a248..c9f5a1faf 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysDeptVo.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysDeptVo.java @@ -1,7 +1,7 @@ package org.dromara.system.domain.vo; -import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; -import com.alibaba.excel.annotation.ExcelProperty; +import cn.idev.excel.annotation.ExcelIgnoreUnannotated; +import cn.idev.excel.annotation.ExcelProperty; import io.github.linpeilie.annotations.AutoMapper; import lombok.Data; import org.dromara.common.excel.annotation.ExcelDictFormat; diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysDictDataVo.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysDictDataVo.java index 83ea619af..d97c00d1b 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysDictDataVo.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysDictDataVo.java @@ -1,7 +1,7 @@ package org.dromara.system.domain.vo; -import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; -import com.alibaba.excel.annotation.ExcelProperty; +import cn.idev.excel.annotation.ExcelIgnoreUnannotated; +import cn.idev.excel.annotation.ExcelProperty; import org.dromara.common.excel.annotation.ExcelDictFormat; import org.dromara.common.excel.convert.ExcelDictConvert; import org.dromara.system.domain.SysDictData; diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysDictTypeVo.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysDictTypeVo.java index e6a184fcf..4b62226e2 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysDictTypeVo.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysDictTypeVo.java @@ -1,7 +1,7 @@ package org.dromara.system.domain.vo; -import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; -import com.alibaba.excel.annotation.ExcelProperty; +import cn.idev.excel.annotation.ExcelIgnoreUnannotated; +import cn.idev.excel.annotation.ExcelProperty; import org.dromara.common.excel.annotation.ExcelDictFormat; import org.dromara.common.excel.convert.ExcelDictConvert; import org.dromara.system.domain.SysDictType; diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysLogininforVo.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysLogininforVo.java index de19aeabd..3086aa74a 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysLogininforVo.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysLogininforVo.java @@ -1,8 +1,8 @@ package org.dromara.system.domain.vo; import java.util.Date; -import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; -import com.alibaba.excel.annotation.ExcelProperty; +import cn.idev.excel.annotation.ExcelIgnoreUnannotated; +import cn.idev.excel.annotation.ExcelProperty; import org.dromara.common.excel.annotation.ExcelDictFormat; import org.dromara.common.excel.convert.ExcelDictConvert; import org.dromara.system.domain.SysLogininfor; diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysOperLogVo.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysOperLogVo.java index d9eb71d40..00b334432 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysOperLogVo.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysOperLogVo.java @@ -1,7 +1,7 @@ package org.dromara.system.domain.vo; -import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; -import com.alibaba.excel.annotation.ExcelProperty; +import cn.idev.excel.annotation.ExcelIgnoreUnannotated; +import cn.idev.excel.annotation.ExcelProperty; import org.dromara.common.excel.annotation.ExcelDictFormat; import org.dromara.common.excel.convert.ExcelDictConvert; import org.dromara.system.domain.SysOperLog; diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysOssConfigVo.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysOssConfigVo.java index e7cfde4fe..a030722d5 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysOssConfigVo.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysOssConfigVo.java @@ -1,6 +1,6 @@ package org.dromara.system.domain.vo; -import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; +import cn.idev.excel.annotation.ExcelIgnoreUnannotated; import org.dromara.system.domain.SysOssConfig; import io.github.linpeilie.annotations.AutoMapper; import lombok.Data; diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysPostVo.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysPostVo.java index 69be547a0..50140b6f1 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysPostVo.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysPostVo.java @@ -1,7 +1,7 @@ package org.dromara.system.domain.vo; -import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; -import com.alibaba.excel.annotation.ExcelProperty; +import cn.idev.excel.annotation.ExcelIgnoreUnannotated; +import cn.idev.excel.annotation.ExcelProperty; import io.github.linpeilie.annotations.AutoMapper; import lombok.Data; import org.dromara.common.excel.annotation.ExcelDictFormat; diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysRoleVo.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysRoleVo.java index 1913170ed..1a205cc74 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysRoleVo.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysRoleVo.java @@ -1,7 +1,7 @@ package org.dromara.system.domain.vo; -import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; -import com.alibaba.excel.annotation.ExcelProperty; +import cn.idev.excel.annotation.ExcelIgnoreUnannotated; +import cn.idev.excel.annotation.ExcelProperty; import io.github.linpeilie.annotations.AutoMapper; import lombok.Data; import org.dromara.common.core.constant.SystemConstants; diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysTenantPackageVo.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysTenantPackageVo.java index 070334b41..ead9229b9 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysTenantPackageVo.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysTenantPackageVo.java @@ -1,7 +1,7 @@ package org.dromara.system.domain.vo; -import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; -import com.alibaba.excel.annotation.ExcelProperty; +import cn.idev.excel.annotation.ExcelIgnoreUnannotated; +import cn.idev.excel.annotation.ExcelProperty; import org.dromara.common.excel.annotation.ExcelDictFormat; import org.dromara.common.excel.convert.ExcelDictConvert; import org.dromara.system.domain.SysTenantPackage; diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysTenantVo.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysTenantVo.java index 6a453150e..021c66488 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysTenantVo.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysTenantVo.java @@ -1,8 +1,8 @@ package org.dromara.system.domain.vo; import java.util.Date; -import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; -import com.alibaba.excel.annotation.ExcelProperty; +import cn.idev.excel.annotation.ExcelIgnoreUnannotated; +import cn.idev.excel.annotation.ExcelProperty; import org.dromara.common.excel.annotation.ExcelDictFormat; import org.dromara.common.excel.convert.ExcelDictConvert; import org.dromara.system.domain.SysTenant; diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysUserExportVo.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysUserExportVo.java index 37ec6b709..913ab2001 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysUserExportVo.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysUserExportVo.java @@ -1,6 +1,6 @@ package org.dromara.system.domain.vo; -import com.alibaba.excel.annotation.ExcelProperty; +import cn.idev.excel.annotation.ExcelProperty; import org.dromara.common.excel.annotation.ExcelDictFormat; import org.dromara.common.excel.convert.ExcelDictConvert; import io.github.linpeilie.annotations.AutoMapper; diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysUserImportVo.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysUserImportVo.java index c34a23cd9..d4e575c14 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysUserImportVo.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysUserImportVo.java @@ -1,6 +1,6 @@ package org.dromara.system.domain.vo; -import com.alibaba.excel.annotation.ExcelProperty; +import cn.idev.excel.annotation.ExcelProperty; import org.dromara.common.excel.annotation.ExcelDictFormat; import org.dromara.common.excel.convert.ExcelDictConvert; import lombok.Data; diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/listener/SysUserImportListener.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/listener/SysUserImportListener.java index 25b62a9d9..66db5f578 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/listener/SysUserImportListener.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/listener/SysUserImportListener.java @@ -4,8 +4,8 @@ import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.util.ObjectUtil; import cn.hutool.crypto.digest.BCrypt; import cn.hutool.http.HtmlUtil; -import com.alibaba.excel.context.AnalysisContext; -import com.alibaba.excel.event.AnalysisEventListener; +import cn.idev.excel.context.AnalysisContext; +import cn.idev.excel.event.AnalysisEventListener; import jakarta.validation.ConstraintViolation; import jakarta.validation.ConstraintViolationException; import org.dromara.common.core.exception.ServiceException; diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/FlowCategoryVo.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/FlowCategoryVo.java index f1c4caad5..db236c2df 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/FlowCategoryVo.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/FlowCategoryVo.java @@ -1,7 +1,7 @@ package org.dromara.workflow.domain.vo; -import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; -import com.alibaba.excel.annotation.ExcelProperty; +import cn.idev.excel.annotation.ExcelIgnoreUnannotated; +import cn.idev.excel.annotation.ExcelProperty; import io.github.linpeilie.annotations.AutoMapper; import lombok.Data; import org.dromara.workflow.domain.FlowCategory; diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/TestLeaveVo.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/TestLeaveVo.java index 47886d721..741949f79 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/TestLeaveVo.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/TestLeaveVo.java @@ -1,7 +1,7 @@ package org.dromara.workflow.domain.vo; -import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; -import com.alibaba.excel.annotation.ExcelProperty; +import cn.idev.excel.annotation.ExcelIgnoreUnannotated; +import cn.idev.excel.annotation.ExcelProperty; import io.github.linpeilie.annotations.AutoMapper; import lombok.Data; import org.dromara.workflow.domain.TestLeave; -- Gitee From 7ecf4bbf1ca85aeb1d6673870439d0052122e1fa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 18 Apr 2025 17:47:05 +0800 Subject: [PATCH 540/540] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E5=85=B3?= =?UTF-8?q?=E4=BA=8Eexcel=E8=AF=B4=E6=98=8E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 2 +- .../java/org/dromara/common/excel/core/ExcelDownHandler.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index a37615025..64384d3e1 100644 --- a/README.md +++ b/README.md @@ -76,7 +76,7 @@ Mall4J 高质量Java商城系统 - https://www.mall4j.com/cn/?statId=11
    | 邮件 | 采用 mail-api 通用协议支持大部分邮件厂商 | 不支持 | | 接口文档 | 采用 SpringDoc、javadoc 无注解零入侵基于java注释
    只需把注释写好 无需再写一大堆的文档注解了 | 采用 Springfox 已停止维护 需要编写大量的注解来支持文档生成 | | 校验框架 | 采用 Validation 支持注解与工具类校验 注解支持国际化 | 仅支持注解 且注解不支持国际化 | -| Excel框架 | 采用 Alibaba EasyExcel 基于插件化
    框架对其增加了很多功能 例如 自动合并相同内容 自动排列布局 字典翻译等 | 基于 POI 手写实现 功能有限 复杂 扩展性差 | +| Excel框架 | 采用 FastExcel(原Alibaba EasyExcel) 基于插件化
    框架对其增加了很多功能 例如 自动合并相同内容 自动排列布局 字典翻译等 | 基于 POI 手写实现 功能有限 复杂 扩展性差 | | 工作流支持 | 支持各种复杂审批 转办 委派 加减签 会签 或签 票签 等功能 | 无 | | 工具类框架 | 采用 Hutool、Lombok 上百种工具覆盖90%的使用需求 基于注解自动生成 get set 等简化框架大量代码 | 手写工具稳定性差易出问题 工具数量有限 代码臃肿需自己手写 get set 等 | | 监控框架 | 采用 SpringBoot-Admin 基于SpringBoot官方 actuator 探针机制
    实时监控服务状态 框架还为其扩展了在线日志查看监控 | 无 | diff --git a/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/core/ExcelDownHandler.java b/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/core/ExcelDownHandler.java index 4cda8587f..f3b641545 100644 --- a/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/core/ExcelDownHandler.java +++ b/ruoyi-common/ruoyi-common-excel/src/main/java/org/dromara/common/excel/core/ExcelDownHandler.java @@ -175,7 +175,7 @@ public class ExcelDownHandler implements SheetWriteHandler { List firstOptions = options.getOptions(); Map> secoundOptionsMap = options.getNextOptions(); - // 采用按行填充数据的方式,避免EasyExcel出现数据无法写入的问题 + // 采用按行填充数据的方式,避免出现数据无法写入的问题 // Attempting to write a row in the range that is already written to disk // 使用ArrayList记载数据,防止乱序 -- Gitee

    ~bWbO}&#cHWEWUg71as5#m3A!v=kK{AO;zLkE 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 rZEy=NUK~mh#mx2 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 `^3EP@dAJB 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%0AD{GO#49I9yS>i8B((Iyn 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𝔶-f;~zXV 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%0DW_C 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%0DOalgoI)=hCTj^%z9~L!mxPdJ%aww{Z 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

    Gxg2Ud!7zA87)RdB#M zb#?3gOG~R-!7604tM?r^u)2Hi-c_|+Dy_Ef+O>*^aupHfDk92NM3k$DC|40tKE3+% zCvAT7ZQqbV;052K_|YTXUAq6xAtGIL2Jzq>qE5W*L%8)m^N*1aW4Jz!$?tUecj7Xm zG?~Q4JG|OWZ{W+^4crqf zAV$+Ho;>A3_6jx9Eb3&sfzT4FI+?H#FY`*4S4Q{3^otWgG~R_EGAc@f-5O78f}RPB zTM$JcmawcxTH&g`28WQsANENU`A~~XU9vyLWCjM}D)*?IYUo$)fTqz#TMzv9+KDwc zVm^R*g%8YZ-#$0DwrgT>qFP-W?^<478|>^{YsqFKku{k8HJJT1nEf@F{WX~VH8T5a zpJ?_QfIxF7Nik&oKguAR485O7)SI+m@R1qTkBWp;0vo&zEYW4A)5G5RsG$G8&YfES z)=y((_8~!M6F#eugcV&Wp(>j`F)=`cF}RGs*ZP7z#* zAjP|V#$C;K?B8yLj1-76ci{isl&^j-sCXIB^2JcH6_puOs8O8Z3JBmxmr?e3uy2uQ zW{@U^r7q45av)eZ4u@7Y5wGML4u72@g_=3C3@wy2$ccb11BRm(Yrzl?18si-Dg?5U zLUyEhP`Z`Fw=hZ>Qv)n0Y6W#p2N6;M=!8zZh-?Wl=`4z~D9DO>K}33h{WZb&$;V)R z!e|2xvbh9bED=*q%zi6JC=&DfS)&)y(llZa@gtB(f!ANI1q4%yWb%>>`lZZ4dmWDq z@fsm$axnmvqE*X0sq$X$7byn1fko8WSH4mSqQvV*F1MG8nYbukh925w=%HQSyQ`aP zB>-dw>t^%&ggRQ!`i2a=VDm<)AO)OqhnQBUF(t%T_v%O1>BkXQfi%7n!2Ulw zv8B@8Jy9x`C+t+tNEM3{4<38|`3Wx+ni#~Cu=}2PVxo8N-ih7l^t_2dVw-pEdTQdS zPrLth$dS%~A1{!VfEEod?m(|Gg8++TjxMpnK(B^w z1RkJK7Hz!%{e4AwHJsq%j#6W65YMtjb|K4KQC&++C_ogf;50k{2Q^-smo3#E6nhxB z&@P*=`&ZsBld=t!`AB()mH7tPD@R@4ZI7rzT(wI!<{P8A+pyEF5K9}+7E$^5nw0t@ zs8E>?xnVI3-Etp$BHeNc{v(Pruo-**02FHc+WuDpUkiML^rb$3`^LUq?X&XscQdiB z_VybOoj7qr@w^+ToZLXJc;oBWuitp_%U{0n?7Q#Yc;|%|ZajVK){W1;{r2NG9{&`l zfH{&{?m#Di{=)}~7HGSRek9No9kR7O9a+K6TKwM zH7|g|113+rBqG~%gBYuYE^nxLK=&vVf;N$bN)+OYPE2D)h{H<{p;bI$U`#f;TU<~L zG`Gs*7-90KXhhLN?vcQz5v*V)4mBu>-_21LiXjrLb^#W)jp<)#RfLiGP(ijzvH-z1 z_+Iu3s*^tQ@bf^L@d*gU8mnn_9A}s&={~#=xLut?vv+@YTi59P{KZ`(BNrET?z}j) zW5-1i6c_bkF&oU<_Qh}_lPDA}K6l{2#Zyl`b@Al0&tAN-vT_l$zKiFddFFwO|6{a1 z9Ie_xtADKF6D(J)g_yOtQpSm^hocmWGNN{w&Kumyx?oFFkm{R|Iz-txOZZD_ZtRoK z(vOS+8WOMI1Z*uBCVIuiylk8(7=>=J&E)l*oR34P1^A-ZHwTRfYnGA3=I}Oz?3VJ- zW)ioIu2Ulju`cp4Phv_cnA>Pv*FhoK8rX2qd~GPJvXIq<=>z8vqq2eU9&9uhdQfDZ2Y}D<~rw zV707`dC6PVdE_NYGX@-ct*gyw%VgGC@}2ogWeps}+*;qJO>0|_pKPC*S)1(b{r{1j z+_~>`0LavA{J^YEQ=s7I8_XXu(n$@1W@n*xCYS@Ndk?nN{xb08^H;DBZe1tY%`zxJhpTBM2RpOTC)^;Vf_24-bze0~;lG}k+HAWT_? zZ0D0%h(w4>dg9Z^gbb{g=Tqk=4xKv#ygqVRLvJ{$Nq zfzOjIcee~(4 zS1-T$=IZUMS65H1t*t)y`s*iGKTYv#-2&7$zv%#wS;{u9H zgi{jn$dQe1oQOQ9XK)gD4SEDJv?@8-1x!uNb^0t6d}Xs0m9hdN8GLV=_@muo@HT7* zv5??g5WcizWWPSfdbi}53v;oSN=;-k13X}C#GXo*00~Tq$fB5FA6F3Jnjndbl^}Jo zcEzFfRB6FD3Upyc6e}s42@q5*)J9Q)vE3J=AB6y1NCgx~zwuvSAspvBAh+BWg3ON) z;RW?k=|A8VFdCc&qD5FnCy?t2R6%@R@L{IF_6XCLd6Uk~jmKAjY8(Noapd6s{R;~# zJD2w@Kk&fHo*57uy2r;?2D`deT64KbWaW(`M^@Hed1dAN?b|D#xpZme!G|ASx&GQ~ z$5xJgQjoI2Yc!h-|HQ1HoAtD$mJ9>kKsk(!^KL>nitr+I#Ol_dfmG6AT0asStxV%o z&^Iun!~Tl8cd2Qv-cc>T&qA*VLJNJ1g;JA-?#qjqql2{`=YfMIJU*6}L))&g{bxdd7(ncI zhXMLfOetz(NIUj_=w>963&+W$xI}hO4nJSs0flL{BYZO$Oq$5Nz z0Sh%e1f@}hj~K@Cx5fCMQ-}$%GD&I!4vGjvFJkM#kpUNjcuxW%j1Kk+!@DSR{aIi- zFb{w7FlNKjoR~idP}cH?)x}pHzjkGH_T=TZRBI}iyVf1;h$fTQ+`;+2dC$AHyldCB zG0hs$W@oQWixW^$xc1KF%hzsx@r&1nFlpu**Vxi_W#6_Bho@6j1-h zGJsLOA;D<`1ZRe&oZ93OKJbcar4=|HCr;1#};SA$kcd1PYv;~9b zZa?_oxyvuVeD1>Qub+EuZSCBd^XJb!_UfxE=T<)Hl;IFH&Y5p=Hd-ELh3F7c<_vQ| z?xWd-(B~Tt1h_f)61{`lshK5wff65lfpO_;hm)N^zYI6{X(k-`gpdt2*X6h#)uV^l zdjzhBh@TmA#HbzgWaHLF%{r&((e3-pZHQs@?b~HNtJ{y!sls$A-r@PAB(&XibR6I( z$YP{eTqi$t9ceJ$pvppTRuoYxIvA3M6b7N5egVgWSu)^>Fvl8LFkT0JA3+PW+L0M! zvZ(&$G?YBPEykdKh=b-^Avi8NEI(C2-=#c9{(RjEQJtNvP+fD!uemNTrIss!&mgw_ z!vJy|Gb8`r)h|Bu=GE69x^(KS`0~}Onf<39dMI=2nP)OPPo2t4&CPAul35s=$JDaS zfGB2Ahs~f4n?W5m1DG{~I&3L}BK~h>Ti5N6e>iGBsdiG=E8Ic`}(rFM#gIFx7n4x-p88ZMuiessPQcaZCuXy-?fbLD`sZg4T3R zNJeei<#zCV6r-F}%sCjKF8q@8P6^1l3k03Rn3)I{w~Ve;1RkX7qd)DHvuKAjR7X`6 z=>Eu3WTaqq^BEd|5kx5kBk0thMk7J#eR<%OZendQ8 z?KXO2WwiCc1i=_pi$NgtF5os%fZ~_u7_wl6xQJ8H0qah}{5< z#UNK=zd>~egh3A0rt+`<6!>pAOByUrYasNe5vx>6=>cr}Ao&+u>-E)STSaAV0?A}A zic0u!G|EU3<4Ep!;-Q8(F0ODB2jq~#LuoJ)9X0h|*g%0{pQHcPy`41V=Un68qkQmo zoLY%_-u#LX2;xlt24|Z3v1yujXP{8EASD@td_o}^ixq$q_VzYn9-O*+{a~X^g^dnL z?Z+!u=u`N$fvANa4--M~<0aH?`hRV`Nx3+3VA?nrm-x)8*JpO9c1 zxRv!4#8F)TO>H@w7tW}}W391je_d@?I{^gJ%fA2r)hVp(~fig9(d)0Jr{+5R^^?wUniRMrnT?=%U{t-|2*X&G} zG4Hy&>h+C}cULx#45rOQWiXK#tOzY(cF5U7u}8ua`482!Lo959-P(AvSl&bUN@Kv0 zf967&cpqaaly9-e{ucgf>wl+HjEaO45MiZ$6Zo&}yb`ahf?HRq zhFZG^TkL?*-C`Im-9j)C4Xz*4+9AagQ&cfB1oYG=Z`Dl0Q1fXdHx#?WJ5>^@!(EG# z`BLv!T$M`}S0X0aIMMDIwK#he@&opW>?mKiz_skW_B={*@4_})%GZ(rHh-qu=zhjn zoWtYeeVB`btRvgY#;<_#6e!~U{U699O5jZlaW+Qb^7H7n4-$)|Yqw^@=s4gZ!qK7Kmv%kc3&{@!;$X>?xy#h| zP2!-M5^^1}*MasdGIc?NT&O9vVklv$1&Hu_kpB#7x?^^}ipKuolYIu}oXFqO4GcPl zmr}k@J|Tlu`W5bR8av(t#g*}Ds;zUH2G(1dm>59-k&U8& z1pn3RI(I}8e!@fV*AMqSjB?Dk%99V9&UDIfMk{8B$o;dVW73y|;fl%3I2&OOb?(uN zsIYKRK0}jWP5rhJ>M}xuuwN?taF?)PkZsl-`F zUo%fQh;uOqCAOJrc6NF((&zT+`cSen*4f)TlrLw>7cq0v#AyrsgH7Um*&v>o$R$|G(wI{B$v{kn7-V&ckwyP=3}<)u%x&s$?u@ zJZjke?XvaRB*G808$pCrvANHrG-l-$P}yQ!dN_*!85xo5^kdoude_oyMx_;kXs{7V z>26vz-ogyzAQT@$CG;UGt&hJ1t>gEZ{eM3q+ak02zky#SpBBe-we1u^L?^SGF^*`; zHjLmDtV1J|t(}SbgZUfmhYb-xWR>;xXq*gIuJz+g+%K}0jh8A}_D~UL2Oj(kj0IfR zAdW)GaI3ut^1;Z7Yq%%rHozMatquwv3Qb&f-q)q~l*%JFc$F-lC4V<8S@M-+Sdp_v z$cq8RF`*8K1c7ob~#WDC>=W;UpOx#CC5BTdhS0NXd9&5IO8mkrusS#(1u z1_z94R9Kc*!>VE0Gol5_cO*I}G74J|gJ$-naRA^6LJlg$-0N}Eck>j1Wv-3{`55>H z9k#oqm6N=eQ^Tfy%0wrF!&?zv$3O@X*n<`p`kpaNdU!ih*5!AV%p0HQ6bjN1;CQkv z-3$?PMKi;N5p+`wWds)MP-OYnHO5H+7I!kxTlHGo`VcKcku)3wOc)#N>l=@aH?7io zu*o7hoCrK<6H-cfZ1XbJT&EmkfO`F!F#8HQLA#$#1scNJDMXXB_m;pMrutM~*@Gi- z2^JI>SIo;#=SYWYOHOh0GnGnrN5|t7KkK?3{t1Ro+V9(j^ar9Kl3XKtC>()5VTKKRyg{Vd1mFc9A3KLWaK z8n5|>0|YAnK-_5#npWey2jMkfu}0WU@kL9M`|*UUW~dc%4}J=y>zM(rXPz$3>uI%N z4RCXwj>FBuRJiXDT8GEBPXpDr6gvTp@^I2K9T~L--B62`;C)tCzN)0(`~rCPbPP=S zn>YsIFIXgxA&%>@?qA^~xQvlL1GW*o?J|gQ^U2oMzHobc9|#3~3-j~SebY_Lvwi~B zJxCFuV1vd{tHeY`fq;(=M!+1!bRyVDY&vd3({eQK(49-R>9XZsGWB-!{E+g2Zdg#3 zR16E9fxwgGaMaC53Vh1xO;G58+heoaQ(rKIC0MZQa4sVNv!JnI+mnD0jHFVj*i;6K zt*%F0y2!#)Q9+VM_{s=9`2vwO2Lw*m2;^8I85a%q#VmLQ&Zc^ z%~CP<^w|WB_|DqTr^xy+hIs|A)G@YuoUuDXce(s(o|?^xRAw&1xp3xE-pDWIcPC+n zD5V4e!{T1fXbZTaXA#eO+(}TrJ6x$XtxM6Z5KhwNe#?=}#XR21x!eV8KNi6Xx9QS5 zO50O!P*X9^5@^EjM--QAQ31Ay)PyOUFR`xi;c7gg?-^Vu^o@6nx3uWU#Rm0Ip`e3J zzMk1PR)U!(_@}1JMnNlz6l@)Q=wX1hbyMVyM2z0UM%N=07R1ys3b?MOl^TmeJqRbp z^bol!qi68Uh}Y6Fi-Z4;A(AQJ7iZ_wSdepOXgWs$U6_xU)`SNwGL$T=zqZk2i|ZEt zWy=#~P5$oBap}Gthvk7>#t(#pOO{fe=&_Y@myF5uW;hGRLTe12ctKukTSj3asL8s8 zbt(bL`wjEny==nb1A)bAYq7n(+?&aC6)4h;iDE?EHOViQ3zoXLs9J@x*f)Ei4~y2A zMS^4p>s7PnjZd(8>tPHzX)@?+dHf4UUs^}i?uclpi;WA|OsoQWrP^%tm9VQzVa-9T zgO*l7UBqkwBpptPeh;MTwgVI$DPZ_Ne8n=PH#`g<1v&A1%<=sY%mBoFGUf&Rn&B~I zx4JQ@lDI!x$-_qnM@Ghb2L{G7J&DfFak5(D%~lI5Rs$?Q-eyslL+dnJ^Zl|<5G1Ud z0sx%HVYth>N63>qyB*W+!!uq%p9UXIUb|?xrI6-yan^1{FY9`VK$PBxcvMqx2!kIO z(sz~imwz8u=-YTMQ+^-19MYRc=m8#M;>w0JqF}h#2|-9Ca>-;q7fe0J>o|OxV!~3V z(a-x&hB>WSNy=#33bPNP?4&&;bnP7PT0cAN zu&{%JcfFm2s^JpJKI@>#^H&=2U31vmbf-Sn!&O*~h=_6JQjz|aQNkPO62HMA=;J6q z;JAzlb1f+=znPLi>1xA@EF$D%uq1lCAYIw?p zoqM|bTQSjSPp8-=_Vw)|R{v6J+HC@kYW>We@ihZ6R7GuQ_}e22KaK97Jd$bg81#?#NOb-q4;Pzn4IX zp2}M93&tPG4C=W}BgQ?Bf=cjCw9>|Hiz?b>4v zv!e3|8g)m`#-OtV2kE#hNKI*T&{8=K#x0_b)Gk8l3n3gI$sQ2e+xH>tlH!hpb7*vm zx!g7l@fdt$s1*UK+II6cr+kC1w}klA5n=g#Y~yc{x6x$X2f!Wxx-mPsnD6R3*q_N9 z932`u$mB8(BFR5+a09iyVYit5V(1223fLz9JgvX?m*~#fGu7Cpe@Wb;D<2;4v_5q!* zBlKjAkhv1ko1%+o44--k<)ih&QMp1kALa{oQHqftVB`r|YFe76PwNosz4E}_9G)zU zrY;mibZN#6F@825O6##0pGU7Iszn8AD8}LmK*=WIIk9q<8P#A3F>Uxv%!dtZ3Q!`_ zlX-m~R`(*(Ml=AVmGqP+3&{}^N-$w1xUVY$nO%%Pv;nPzLaq*$Z6pc4MbLH~%M7|n zQ8$&i?YNd;9YHk-i>+$|$TcaE2!9B2cHK+!=v}q!)@lQusy&M*S5k(GvR$=p3kV3 zn{GSHO`F!cfoI+$?>+;P5wf6;qz0}DA4;G-LLP!>C=Gpcboi|EUj z!a2z@Uk#hKJBd~dwwRrt3EOh{4M+bPn9Dz)L{<7D*$g@oEJ3oSL|ld?m;;mOK|*kL z>^d+C0ckJfl}h6Wp?@`gqIP)K-G`r*jxrR6mTuHvKNjcV^s=x-rs#zZ?p<}Lkqrqd z?8N90loMiio?F0t2fA$tV6=9|xb93vRn%CJAgrzE@!?VatQhV-QwddZPIb>=YJ=gn zcCK^aVU(W8enJ?-<&l&4B7=P818=sAs;4FTgD$JEh*wY6%Luwm%uPaKnUpU`%%<^a5nwg7HL)` z(3Lg~Yw$o|w3^sjUCN8%aI_o-aynds{~zAHv~*y&*|Ii#GsBH3Dr~qI-@Q~kzj+i3 z1+D@(Q!t}28!SXzcQ)&veXQI0GtN2yl9RO`F8U#~TO#1$Oh_pn=q5&^nUA6oRN%!2 zLkJ?VhE|A0mI-4K2l6x}EPzc15*UQ2Ns$XQ7eWdi%L5<@nZy0kKs0P!1`{6>_`rcf zAz6PF?VDsvoK{2ms@%4Ai__j?(dIW9c#3IyS$3l-i|xaW_VwC!g4K39u(R5-5-*iz zt6YWiyxC0?(-VQftT8k`G&(vf_xH~pJ#=XA?B1s1SwEt+Kxh2}ttfNV?24D^aMql7 zlZPsmBtPcyO*0TmTz^{W-;(r3qm_E%2ZMk!`%-RmNKx{NttDHSOV6npSX&5RC}z9M zWi3u|cqc1E!ZI5k$eOu@?2ed^S=kJte!~rO^~LtM)K1SkY@l1$LHSje${|sS>M)`< zuXB+Eu2&!WDXb1dQ>8>Minp}q-GX~!IbvB;-jj--1xBS)3}DIchY7K!DDqc8CjSOm z@)$#`cVk}nbTzYc#{p?`;J}FMP7QkFnaos2skC|X6j_0(W-Cw&CH-ii5mBxmzSy8d zSV|eI3GYT;uFmsiCZlQfCBj}R_l}tS(Ps7Z55VscC=^f)jC*$&mOJ#-_!nl$&|9G_$7_-zQ(iD(*fSMwlJxZQ=K zDL5@yQwJ5JWW*316V5UPt&Mh*a~JaYhisiE1UQt}&=*l3-Gm5h0W2yYGTXN<_g2EmTx7W=93IP;N@H3sH@0ti`S94i-4qMdYnB#A z5&TFBp6cgzJ@u>538h~UW2MB2f$3y~V;k%&j0FX!cY!oV+W9tEH_n=5rxo(Ue)^-@ z(07cQs%J$)7}6-}c_>6!$;aZP?11%zL;y0*II|08A(m1e4_*EQ3rHp~Fk#ere5R3bOFACUwgKuu+5#2q89{Y(LHN&pjP;_Gg<` zwq7)i)=H%nx*&`nG&;w7GMBfUNsL}Wm;gfrL1A#X0ex_mr-n;BXqpn=rs?~Ev{Kq> z7EF%}3C4D}dHv=TKPlSC4hREqiD97Lgcb#vW;*ZW2X93k4McF%%i@-og_f-q1$T&x zx@a{C84yK`#k~SbM-l|q;0w*UR^+c@vH)rxpUKSfwh&c5M6H_2^^w2Nzh&#nH(gwU z?^2v5e}}>2@R0SKUx2mtXS44`)VmV67C2Vz&$e@W_N2O(wr>yYp4hTwele(Nn@6ov z$FAP&=5Frh+PilzT34@Hi@UqqrTZQ{Pa|F$_#K;QhduLQ0cOe9-_=~^AY1d=-cej! zsik(%C>`-98DiT|e1LuNuMKS?t`o&{*t0S-P#^C?N7x98)xaxE1m0l$nQk6c# z-DDJ_XqNz*kk+%R05>YT8ChLGK>HoGlWG_T3ulZ&5AqYm~#l=LZh^#|ZLQ8YtnLtVGD!f=|+$W!hMJY3z< zooVkXwRxf&(Vd0y`I{N;M%V2wzS_mvUEIyCzw6>ZYWur3{s-dUiTno+m+5K~BhLK1 z6A|0GGIHPa@&@pgrkNeZ1eeR}#3;IP>#CGKG(*cleZL?SgsG3^ipcW^rEC)eKUZJo#MP zM&A<3ZXkEtao6EXNiG%TO)D9pun^S(Q14>O6L}3MSiOMIC05uq9M;fs#9?lxl|b-~ z#v`ojDEbXLA@qcl+eJi!QOYd^MX(AfCHN+*XrdtS%hVTa9n3XeMi@?2OGJb+o2yE^ zyr1DSie1KG`A-GTLrr76nz?^pY15{pt#n>{812?qZtmmubzZsBxlcI!^ck}KHETkr z&@Tu0)&%Bb1S?7c@v-&Lu*teJFM!p?N`vDM=n;`i8A;_Ji64`LsE0Dl7yA)Sy*S*o z;GTcXV;fxn*^_N834{{cb87OGBs`VmTA>qhv zXAHf_Z<+eBQKfLt}~Qz^F94vTJsI6NzTom`KcwNzI@z=Q~`B zLQ!f56KZ70>wejD;TYLzQ`+^>DHK&VksyX`s8^Rtu|EghcSxEw>*nD4Qpuk^Y~;T z8trhZK`7OYXey+|Mbkjc1i#Gbm<%Qeu~-rc6omDm`&WnB=^Gw;x|TifO{!{>A^K(M zHg4zFAYuon3>5XdROJVDLUx{5kba$U7?J6GwX*f#^z7`8ZF@HD>@A1%LUr4TZ69qD z4sP37E)>c;w;dD{Hl{;^{du%^(C4)Fk}aYorvJ$r;nu8QmRb_O!9%iilXQfb?ZF+Q z8-#euw_nAL_RC|COg(4trCX$;SiK*jA;T{-Gb za#k1>5zOPT+wV6`ttDugY8i|%&c5IJ8&=Fv%xF=SKaj%j<_t^zVMKJ`3ia;@JMyWJ z5NUTz!Bkz_**l{v8u$e%RNM++S)o3T1@1!&uL`TK1X4K5zd=Fbm5Q&aZ|^n8vuavM6tu=^V2DzS3~IvZWV((og#dS zq87ucg25+8U2Q?oFe6DXs0KcS-iKH-qyByvHkI_}@Du$W?^_tBa997)`^xg6OJldk_qkW|<@KF~;olSd5 zW~Lr!(#Pg)tHa~54SZY*XXg;ablXBm1^Wwy7qir%vj+55*pY3m$Q+pO&{2#k?ZdCf zK(D0Dv3S}X@9~(8`jvVf9)OD|v9VCQr)Hpl1?HgCgGq595oQfJltWG?p4Xu<0c6qb zW=IXayJ9ia+X?l*7Iu`KDg1XEh=PGiQIonJujt>xO%SHVz9@ zp7^#<9I2R9EMRT7a8b2vx?78~y;?F_mcUIU1rc>ST2f^3p@fg{m<&6QDnp>bqW&#p zvpR>8|HD~Zr2bDflhabWf#`I%M}=GoFl8HZ13?W#$|holJ#@EJ@P-r|B9&-kk%Iu3 zoK-_dN3m);|K7Ev%-2oKK>*~qcMI$?G)#G2c!Q4ohFHnB zVa)E69yPlevKGwq2Q@o{kzDU#D1v%xaEfFqMloQyNaXupP zTqi&c4|6D`e zh}XUY^^C)q7jd*YI6XDc6;38&`IeRp{(3c6TG@T_X4gAiKj;#E5#nx_xUN{Jbn;{= z6zdX~m*zH~U-msq-Au87h>TRjMzK$7oP}DR+t?X0P%L@yd&0;L#r#{v7920jvcz_2 z7`CWhaj*DMY?CqDXs8&Zw3~|ONOm(U0Lpb}Hj!YenT(NxaK;o}m|j1lvs9ihIEBMSOLFuL{Sz+>oF-@mQ5cX@gL@XWx>+}!@Nk3Du`e>3Jx zi_c)Yb!>@tVSw_M&6te{!mF}x2WbjYBMVvF;im;S^xR^-&DIO z_v${|21JSa?hM=YTYjN@B*_WELopTfYhXt~gi#o2rDDlD^mH6kRv>Gm+XD{U!~XuK zpyEvcHD!5Gg(DI_k-}0@8^-HBk}!khozVh)B+wr;qsl2;xq0ZN!SeA?P7Mx6+9GmZ zfG`IBK@_Kh1{xYRaeiiYc4}eU@Rm?s>*%m5eWKW{o;h~v z=9YK1@HZ>m)RufjJ#|X07G)|>9>YDEK-+mvN3uqLU+xLAr_a$9_kJC|C2My^*1Ox_P z=?Jf-F2Hq_L1NnM3hbvD2i48JK65rQ~exh{aUgD5?b``K(@-2=lK{wB&YBTpSUqu}ar zTwZsMqMSi*12kD6%Dc%TmjR)JIdWVDGVPTe}R8@>taT<=XK)WlzVfBlimWBqHAH@^2@kJy+mXN5Ql0~$#r*1qX? zs3uc#LPb!R$am_SjsE9-C|>@K|$$GBPXn> z@Il~El|m79m9uFglpv0BNHGy=i>nkt1mhU6N|b=7!xrl-g^|OIp$D@iumHrk0|2cD z+X8ySX3P?Rc|-6Kbv5+k&`@2Y5Q2I?%?Cr&F^O+5NuI9{e;+V?1bHaSV1EVa#0T=! zRnO?fz+4I{%>NQZQ=T7H{0Ygx!&_w-@-(?z4kO&)vT}bmORhi|W^iZVS6F^-u8e4j3jz>JZF_!MXvg z^zEP@M6d{h?ipdmu~8OoV;>v%42#WcLEbvTa1Rf+aqj>pRKcwx@hf#JDig6d9}4p> zjdX%q2_!<)ZcA`vCur+d#SP_xhzTijQ*xS4Ocq4uLV}6siLNZ?Aj4VU!_P!jcHJ!U zZ;_{cLhD6}L%er2%h z=s34KuFu)F1$9MTHasbsR|TVQNWThI0d^6GzazJO*3!O#qoCj_g3tefCs~9o_`U3Z zQ;XO;pm|lVX+2QwYHv%c!GP3K$(Q=OmyB2}1!%;+@X$HwM5VNpv(KHgb4#U)bl=qz z8_QXtF}8cOmFyn+SCZ{8t|MZJT3uHLXv6#z1>ljXp ziJON%I?Uf*;Xau8aEAY2@WVm=gW(T{`NJzSgTsl$@ZikKVM%>_PoSjU;oV?SYn81# zHnXoEQ9NUeHDf;;-4dD3%H0_=1s-g_F`127Wgyc8FICVU z$OwWcDF=&jy!GIugd7C4ic)a-kPFqR5RQ|Y0N@mgKr5BE?fH285^zQfybTm3Gz(x0 zRn+u<{rkXwZ{*HnsP^Ya(c#;Z4@7e<9+X*2w*y>HAO}96mkacWYCr8%JqT&?dUeC; zUxY!jjI`D@o>l!bT2r>JR2+ucBvhz|C~d{bw#zc+6xeeR=i{s^S80%idF|S@D-$tw zml?W%K!JeJ%d?V_TF5JygvLj}i~y{yBoU{jR7rvU-PUaO5~Q5WaH}cX9f%zQK;6k} zJRbO80=Yos-)b_*q~N2{gRrEMtONZdEJh;KB+L8WcW_{eN9n1XLtWnK*IeBTMPs}Z z<}xA7FO@hqoc*&OKpds`BMZ!aF`F_|*%Xu$VDa>5%9#v+*Oq1sx4(woMFyEwsft#W zsoXf6)eH&{k(o&Sr|?rJmeJnvbI{L*o_jQw42%pRipHt}`l9GyiXVpP9tr<8V7Uxu zw`rChQGlyhUNFo#MX!w{s&;k5V^h9jOX*}JDD?8-N``O6z(_1<7Z(kF;9`cZ+-j*_ zG6BuSf)`TW9J?;ag~Q!|Bk#*ZkW-?io{Q|yzzJGHVq_BWS!>D&1bAfn{}lMYQJIaR z2Q*eyb4DWJcqzr9IEhwyj3S~)manCK{tpd`Km%9ALp87aNco$xkx8Mj7F7i<+*;x* zIfIK|hG(ONjg5p_xXt2F)N4Fb{Z{9Ph@7?-8$?fkr zAiT&`!fz zfIP70X`J3htr!$;A9W}dd$1|&kfS(&*n9o?Xgk?nB2ai8XPSg6i|7En43_>NgC*d8`!Xz^pErUoPZ>|dJP6~6S=z)Pq2Nz92m1n5? zz)s!W|BWzUGgAztDxag1T+?vpc)s-kB+88 z=?xEE<4mvLRanbm(weT-%jKqcF+R) z%E8J-qSM&P1a|WO3H;CC+|d-V!D=cir($|!aMSI`hY|jrO`IIrv?(GBy~B1d&STAb z`5}8P+{3oP)S>@#xI_;?W4DpQl7;d>5k+2G!Rf3$Tg}3a(%GeL#B=^Ch>%xFhPfPP zG~>;@b2jwU?Gb!vf6R#Q0K)lX$mL8oTS0$UsCVcF$SRQP z33AV)b-Z^NG4M!-Fe64vo(s>+EiPC`W$C={Aq7%&(1uNK#)kJ!e}T=!S=Uo|Iqg`8bsMZzDdL#TZ*;>gQ>10 zS80dZz07q4gJIxEE~u6Ws}a|;hqhYPtXH-`E;*fuxSXQct>rL|i#s*fx4C2lW8+I* zAw%*i>6j@yNV6rgSQM3BJ(P?i;v2Ws@^_#)y)^NJAeC6}#%}`uFY9y8pc95VkMPWe z*-4pe9Uit~R^yp{gnS)AptyI0o$^`;js0#M@O2Lb15k@L*8k{rKA~aIdQhH*%i5{v zCjifdRqwAjm~yLvAwn2;jGnp>-U@Co8SEAxt7z?&z{v=j<|P9J+vV;0RU!D;rnZ-3K6gA18RqDK67gjO8|h08=rl9 z>>Y^8ICKlx{n*Gne|ANNrW*JH`2Ld-#!Q?mruPOhEZp!pr-wWXGuL5g%~;a_LIB}w z%9AQK4w_mdvGd?Ga0yzjjHw+fS!e^9H2up{v$5*GGH27CtVJxm00&5bLY3pBHpbTe zTynck3CneG1-5Lp@-?@A1r(v!&oY04{Hw#VnW^1ybGgA=QlXZ{OL78+r&C?HL+dZ*t;lMy&#n} zP;=D{U+sL+qu2fxNoq3x_jfEBbg)H~Vqs<1>Xf=5eyLdbwW<#8KZQVc8?qw+H_(Q6 zW63mC^ATk&^ilz8XJ>;|`1ln>eT2ec(9bSLyR(_ZI_Qv*g8|{j5ymsEuvBrRIH^u^ zGbv0V7wcC|3>rSFDSlqIa}mV=6oO4?BkDrv2aTx*EeK(Fm_U}WaYbIN5@|zsD#!)$ zwdP!Nawh!50#;pb$j)?HOTf!GRH8o!&SDc>GOr%WPT^_ z+iTl9#;mcuZOjTA?y6j?ErE7Ki|kD3$+6hOAQ^%M5D`Z(9J&Dn4GhvD zy8VpX%u>STL3#MIP4VFv`;dqrGV^A`eYJ1gHgt4m;RFQTNc=7*V;y24;IQe)R&Q&b zkq2c~2*@gM3P=#JcH0nMv;oGzCx#1vz<)`P(g3s*`xiR17*YwR=a33p@_D)8?dF%C&-FdFokl3?!_79V0?L5Id%SgU8#>agG?tC zXMin`fnOxLWd=GgwH5ZlX?a7>pTjNfi*E0kHWrKP-49^T23pAzL%X6r>#}v4zZ=U_u%deUc+{UF7^z0 zP^RIbVypg&H?@dX+v>DaxDTns1-U;VI8!Igs9b`eQR0rgvu7wdvI+Ah=)fvhyIWQ z&Ft2%?U=#(o}wQVg^s&Wx4e%aGECsx#;>3p z!cHMW4Y5f+;h~J;>yipV_Rr_Buji~CzM2&5ZqJ+Q+v6zwSQugq6QE8ADHVVq%C_;s zlcLZlZNnEP?8JW$o?sT9@GQNe`n2Wkot*Ygp7f@LP~1MyfwmCSa`Z*v6%9bZVI0g( zdR8hSNDT9VtVmpNV`h<|T?UxlupvT4GGQMv;d=dGiF#sCF%1jk&U;{z9?W4I5O1)&Y0mC( z?KW4g0shoT#&f!N1tZLP*~xJ%QnppK?SO_Qxu2Z0bh+1z3~I#g8Qw`(d0?t*3U(Xd z-X09Hx7U@;nY2NJxF?m;?_mRj`y^^HDHpMGPWi!KLv5DS`G9pyRM)%R?bXG(xot6@ z2O0vQx~xQIFP{*&j3~k&n|{&H02{(Hq7_sO%s(PYrnou4-dNnkjp!Ul6xuL>)2)F` z>tR4nL>)*mFBf&cs)4;Bq@16V)FpAI$u)rr!wT;-y;~f&pxakM5-#LLD=q(JVBNQ|=!)^&0hDY^-%WMcheqa>H5~Ew?g)QW@QtawScHT8@N+;{b`fG3<*BK^`iemq7L&`~{4V%k|rp zaB%I;`%mMIvYk^T1Y*B!g1(+mJtIWN-SsiLhN&qr{oPZi?m2hvGGM2F7wTvZ& zsc|mhiU|fKzk=tC*Qd+i_3>5|+lr2rWzi%UQTyF_NUOKHx5h~<@at%1%l~P9el;x3 zeWv_XY>IItW7^H->FA;%s*3q|`+36W60kge0$hF?u^aQFCv;S9w%wMd^V6Ev?lqSp2)(;Y@SoVCIf9ADU{|H9dUAJ{~e z|2-FLspYM-Z2u6BtBnJDk{VhzYi)H^4qd`!+rN=)!|VB2_NqfhJ`B6`{5yzm-a|z! zj4NBgq#aH>3Q2BGVlhe+11#7oC#P1hm%4=tY>0=hw3GGkDvd9B=zxeN%4s5oS^fYX zzK9OgBu)U3=ABY?w$sUZxxN`Pzl9UYQu_9Q9i&jbN3dSZ?lz^jIKnxcR=Ix=1};5P zzNosLvLP3%20#a{Rue2WpXV@e%tdw5zu?}|P68pSa!!kO=LV2ygFbX!x>kP3iEzf7wTT`0`{$(U# zYk%Ce#MgZt?J4h^;XMdLXn!KRy$I(C%45ogrIx-5Li>j$rCx-ul~K$8pJP8lACWdq z)RCB9$CN41ckRUVbOH)S0)l9QNR?c@dGlg|gnoFqhi(bpn$9)3Ay%s4u?{Zt9jx#8 z4peh#5%HWIcJk|TE`E7S9EYs`iL)>2g_uur0(5$G^RbH?&`X3of?(~b(3}^rPs7At z*$s~@wxQYjM2>UUwVYZYR%>Rdx~eoGhN6n$zb_%SS63!HAz7H4uE6Dqjm8vs$D}l2 z{{Ul+NZ}CEl>`ct;E>79lFfZfnsD+d#se@Cv;lKI-2rXsDKM0!pg<=kW$54ck@Fm3 zVi&$Wf&3EorCWg>#Id`6;li@JJYqyTBvc7AlEc6t!{$-elw)TF1^=KBK%QUk;G!t_ zFii3@un6a$cIC!!C*% zA)9LX0^%EzqcrZi+!|g!Xa`e}eHk~r1ruU0xf~MLSV%BLj?_`t(At~xm5DD<%Sw*x zM&e?S6CKb_89g_V)rHiJl91V+#|c~7O)sB@21Aiw*jg|zoHj39Fi#7ZkYC$@agNa< zWcRQP#R_I0!Ux(oXXHHLP>?3(;*c6U{ZXgmNDtc}N_1jM8S4Xw$?~DWP3xBgi=EHM zc89lkD1mH?X=r2F7$`Pz$>9OsgVJVTHxb&m)E(fQW&`ptf5=Kh$|7RJfS3%|Y=ML8 zq~GAVtyZzvGQ6d6t;$NCmv=k7CmUrpx ztrMKR1JW`iNq*Tf-i|2Y3joeBg@J*+XzRP`_-`WZv*c2FWn~Nh;q7+{tYr?5gnL3$ z6y$Zv$bh!sSxbenT;5ZnxuuWhzmk78k9sItT8i>xqF_x4bSC;0A8T>57nivll2WCo zjR%eAI}EFIXUL&2$OQS}AUjgvPqJ3nXVD0AK`rw_F;o@xyzO0V+uq@{?Y&QvBmBVe zxP)K;c#H(o~Iljfxr6+I$x9nEHPXI z9rf9y=AUmOPy^XG5Qr!_Y<%I#QLJE(YcwYq;2UshxL1R?Q12J6V--&IpP=bI~aWT>v#~x6h+a*@W{j_{x5=&T!*Ax4`E;9@agC%5#4q5_TbaHj> z=khyH5@?sPcSUnLh1{$Mi71lJu$^0)zKK`>VMNfnFg#?&=BH$9DhEI;LQ8i#Rwh54 zr{3VZM5RGbK7xIIJoX)&_#ASieTuBpp*?{tW+E9In{csjc4BgGuRTE`cLOW2$DSPk zh6f`Nj&sLzAppb)-^udj>=@uiE6bb6rf}@psi$9HxiU)`-%*t#e-|eBdCRY8mYQ3z zp+$=6D#*d!M`r+elW(EUvwYFVc&;uaar@mnJMYB8AqbLN{+E$JyYfefeY2GnrsSCCN?Rr#sGwbV79%qh^cCKB!5#1Ph zxmgIrsW=`y&ej&jm{w&6gYLD=I-m-am*COw1OWhhwfnwnkTo8^cIA7HL2L_QyzEP>y)}F&G zpEwrdRQw1vu!$2vnt!BGU$2|IESuMF-MVbvP2`7dGT+wsbQJZeYx+~$r7zQFh4wAX zc8miJQqBJTL1_52YM(aT$DvFYrD6kJfwF!^6(ml_#MOlm8>&+D7|SRsN)YjbP@L;2 zuhNxbQPUG3ga{B$Q)?7Dwu^IEVYTDCI8E$O)7@_b_p$7%eqA96X zi*%`}Va>-1IH)EroHTz?(r5C>Rzu8YEI@tuQ#BpkRoo{{g2EqpoWDbN@dv2H=7FT1 zMK*yuRrGCPHkn;mXg7K@J)Uo$K7anOJ=%PxkdY-?z}eYZqYyzBxue&humUAZUF7eJ)y6pCOg7)G^>orUFkQ;Hp7BJBnx30-aBbO)&`Vz{K;(ZIcKR{hD;gC;Izs8KA@B*UkMXJ*m?Ua|jF|Ss$ z$pzULPMn__9nwU0znFTTvD8aV-!=H`RB;0@S)G0wX_5%rQm>I8=-;gByAe3YQ6X4O7o4L zHbZsJ406tQpi6B6(NmrZJSf8hzP57}0N3rxfhBj{5P6(~b+M4$6XH^^`J6KQ8DGO` zq8(~KfuGWWM=i3B1yuK%cOJEAfG98fGC?*^~cy4}gZ+dQe|MeIbL0$%dg2$Nxo9PTRI0~o%9sEBSwS8y^mJ79{)@qd(_x5JXvm=^*Rewv4yDmVWIv=K&~58XwQKrQR`BqabXqBW!v^_S zE*9;4DG;0wyi-=|#WKaNJdm&-BX+HT-EtLtf1HW&o%Y(YTP!XwV1|Hix0g>}zkaxU zhxhFpgRTyF-z=I@EXQ-FIEF{RfP9czSdjgrvjFN>#!AeRLGXa%GppDcpdE3MmcDHPpbdJ^ZYT7U%;hPeDS@LwOb&&{#5-TWe$oMW@?$<4{x z*-|y%#IC#2jZ2rVl!#G(oE8qeGTkf|#Rk`Ac*i<)iI~@cZ3j8S-5zL(xh8Z86c|q? z_k0YeXBY69Q0o@Bu)1G!q3f#{x!Wp)Jz%d1tb$VY4b!{Nb*2eZz-}9`0OE==tzcnC z!M8cXm(V{|0j!5Xo6cbCj4jPWXm(18phv5Dxu7C8F@;jFuzA(=JH=wC$snHHKp9PQ zfV_NFd#fdFy9H2Qu@Oncgx~J>)aDmb4c4Pt>LhoOKE_Fo8Mme*7O5wqdqAt|G~Mv&)&eqdRE_IBc&wr+IpS z8D?xS7PTZ->G1hUZvsu!`z&vD!t$Sn$xdM+&ejTGeOO^uP--fso4NQ~x+4}0-HRo| zH>u#g37B*&h z`_{G3&2TgJwQKf_P`xo;J$~VRQuyH30c&HP_GLnLc3^(SFR+-Nb=p>PcLem`(ezo6 zF8tYPu03rpV!t-VlW0gi@cCQ~dM^3`*tG4lEpBQzzapdALOKq-8s)ikT)z%ok^n%1 zL8P>t#aT|VM|ZLN-$C}r5z{Ure-B!DND@Uz_vnr$I1|pRR2@HD>?)!?)g@U0YJD9R}JH8{nDo7?w@u?V2BykcqXsLQUUfE7LJxN)Iz05=F*uT zhmY&;$XtfLLYRg9K7to1ondx>pfC#OWqu6@lJ#rboew$g1SlK?=AjF{0&!u54|!s} zR5AKbITI?>id9CA{;2J}8#Kmks%!0r=IEusa(&KgqO>#l_=6XnX6fNq>S~v=r!H!` zdqb5}(>VR68rT@9)Gg0ygf;oG2>pRyvXFv6#XgqPZ<{$%=o+aOdrE@eG{94=F(fmc#`6Z%u32vC9AJ$bj zZg?8N;NYp%)$O&ljmxE+>^VyQ?NG$Vn6DMcJ>8lw6wE>?7H##UTKk#>$#>yN=txN^ zLqJFsld=OD{DqTDsS7H@orQz(gJ!bog(_3{y`faB8GcWDoTeC|0`J<)jvd3qI{g^G0W_BRS^={TI3}Y zrc{s1Exua9Rm<^y$hUEBW@Sq?I8PCvQUv?0AhAddcd>1_-({x?NtRl~8d4*aFuiDC zVleuBK@2S~rhR<2RB%H`Zy83An4+C`BA{d8l>G-CP4b$c&BjzZ+dT|O=>Sm-uZLoB zHc@7NwMqYY#ZL1O0Qtx>(122Murk#zRP}uy7!#0#-KfyhfmGZ4680-Vo#)2+^OyKb zFB>W;+qlCzgd9h0h0$!OjJ|_xHN+BOZT1X~Cr`-T(QRbLC2aXO(0a;S&T`9kcgz+x zGv$g3Y-9HdeB1;a1TBb~YYGs*#qi!Fz+cY`Y~BXq2%ROJ)1ezYPNFr=uK{XTCa@q7 zBQkg{oZ-$?cJhuK<&NreXxuGe58h+}S;~}WiSal(5rwj!%Ogt#sv#7js8ap6sjvFc zCxTFC`NavbZSmi$119?>Tj<9o>mM9p6Q2>txwl z|3>1{y=-utOd5C<=`mE(%FwA{` zQ&^K6CHj%gHEhjweH6>kvG*YAkc_jK@HVU^s#X(7COMFfL7TylBGZpCyCACbzEJmMeG+Y`XeI0+nKb+_zujniY=sfCHJ zj6I9^Dm2DUO-!5`Ylud7X31bB;3x_`boy{utlK~r4#xvC3o)`Uh$>_^c%Z~asl!ew)}dk7WX_Rw zS)4ukm3I4MviemUvUKux3O)`Woe_%S%hR`@02ck~_Gb!_oPL9Lii5?RmLsUm zlHk9R+-QTRMtyFY8~PrUzfMwSKbfoRd3y}5Pt7Hv=jF!t_6~BRh;EjWQd*y}uV^|q zd(T`D%S8undw5Q8?Wh){{1ZoK01%9vl4p&?V46d*MrY(Trgx;G;lO5`bE*2Zadh|U zktw*Q=tqvAxrIsK0`Gp4^tPwu_kLI|JQ1pMM87cFXhOUV03HB146wXo2PNKGF0W%$ zm#7RfRu1mUJ>~;^eG(E(2^yTHlNuED^@V@(Q zAKo7EH(7 zs6gGi$dFm8txdX9a2{wnfvLC>LEB;)(?+J(HQYA~DSQ%`;IfOEZ*c~u^U>4~#2^P^ zil2-Vq|*Cf+i}$Q+@kmJ!NxJw0k^<$8yx}!xXCoo$tv6-pBrdo} z9X5kF0e6s0>lZzGM-Rp04$J2M*yjn z4~qgOGdB!(S1lJ!#V%=q(MqwE5?9603d@>>w4QH)0kr{l0tFt3SAZO(tsof{v9wxB zYHHQBMT{W0m^d+cr8IO>k0IlDvBY1NM`zZ zBv)?J6Kw5Ir1c;!fQ5qXb7HO%ZNH$zzaMFYSP`S_ADKmIGwfy96djieHalLt8sN|3 zOz+$x%yzCuqU*nt(TFanj92b=i2#(nq9^_lpN6U`nI~F0I zX#~p?T%jG!Vue8>P{#0!Ztx)1?5Rh-=K2jsf$pJ!XM7RTvvsT==J;9LJ2F~{t$8J2TT6AW zHlfn0wRxVy&Qvak1OpZ}9thP4nwozot(s9Fs0p&VL#6a}%&xdkiBhiMwUb0ss;0k^ z*kPrOy>+HFUZ3izg4JtbdUHhp2b`C&Hw!X^VoApUliWvuet-(R21Jau?7WVc4&%-9 zM<*XI9n~IRIXV(v_xR(l5?(cOpUH&uhv61503EwgW^;!a4eT%JI^zpuXt>);Gyy|h^&A1@UkA-X74}Mc z5Fd0t!&M^(Li{rJwecQ?Mxizc^;%P~urb>zDxcs@*+=bxVzn6NbGA^JGNH;~%XQPR zx%2R`g>5Vi7eJs0R}rLE{UnL-V?f%uqQCWmQUq;>_&U^aB^CYxdTX?wa|!m}-mTQ4 zQdKGx=EsW{&pcD*qH6KXnPN2(`E#+g)C6;wc(wy5Bx|DgAIM08JQ|<-l^2y_^giMZ zvO~H;@X?*=G4h+N@c2Aqn;?>ac2|^W!->OPzkdDUY!9GlzftvU>;r$Rtyh5Uo1us^ zD=VVu#aY?^?#)1#cUa^`F%L*c5NCGO{FB(L!B$Vc%EKmH-Gp9{2=p$Whn-f#G-8_< zc_FAqThFV7Zy*3Md;JiV!wdK-LUp>pqB``>9^$9=7sT>@Q*`ztacy^ZYl~l9+~4Q1 z1D1cqz4zYYN0s!4L1=J_2cKa)@}U@0pmRC!pX{*yjBi=2XSANX5GHEc-WBOrUj0hL zeb6#0dI76UNXN_$oLPSAV}&!coL^F z%|$>|U?Y&Hq6Bts{*JF}$fC2p+;i+ivdy|HjmzU!JB}~o++7Aje)-Dz^A|3YPV4~C z9OO&nP^nXpWz0;647^@gv_s7SIDsLfEF;gcDmgRzOYZ$h4jKQwS=S5LxMYT&?AG`c z>YiBKQs5GrcD`V^uf1V<`{2dt*H38nrfTe?BCY`V#UdvkB?Giu{DjDo&gme`D;O9l zwA%M4LLNWVugxs^VzM}U0A(cawCST5wl*|JSfB*cO;Zv%g6sf9r*p~n^J?|?Eu6-z zdrA2aZ6PL(*n^Z|rt#sLHKnxby-IIts)ZBSq7&G9=?P?47A}->q09gyJ}`#K*a`sgNQJHVBB6y?}X7(Mu!^h!ohC}L0;nzk&r*c zW4Mw_O>ddk>?cs+M(7J;KVr4S9hf?AYgJIJJ)}bc1__IzX~=Y+H@70&H(|>&cr(yuG^E&<TaJ1yk#F&%|GsOm7|d@iVx^XQ;Dd7CqncF}03GSaDFNLy7L+!{`f} zV31u1G_V@I$y?~>On8wC(T=9>MF>NRJYED5x@7tjbcZ3R@WEv#&3hoLz^fYN;`(#y z#D_aTU8uK{X)ydX`Vwu_e~(a9pXt@xzOc8ty|lfzxAE}p+Yf9!Fmi?2fuv>x%g*oe zdx-D2yvKf!E;RdjHXa*`{zTx>gr&;hIoS=1wJAu9QwvoY`Ib2@NlQ25mB zGN=jAHkY8CrdPakylI)b0J0C30Rx0-2A>3EGrKUk=8E?CB3M9W%z(k@<5R7o_?I}L zb}<2r3Z4g4WpW7Eg>RWu0mY0Z{a3JQ6WP*3WYe3Mqk=Vd=Aokpj?SFf-(Fo^-(UY} zHXY9VWl2z*NE}FpkYXO&^*9a>x$y%4aCkz=v@}%7lB$8_zYVc#;PA9Vh}9v?@@H$7HUn92Z2ay7idlsO`%;|_Z)Vn3N zUX0wagZQ&Ib`D(JWUAX}my*zxAb~uWL)#6KnHW)< z9ncKus_^}qvokoOFH=CGs6k9d)74w6JN}a}MF$#JPRy4!2_KC+uHHDY!Y!SA1zLu_ zXkl|^Rxhgc7@HQoH!Wj~XW<;&T*dUe#CXSfi(_A?PV`I_y7#){iQTp)So0r~*UY#; ztCf$`;va&K>pl%hPzgIRfRz&VLn+jk7HGZ? zV~{<-B9j1~5L5Ed0m*gf#y5YljJIYTZ{12DH^U7jd3``j&5ID3u0kCeT!AORAw^UX zl=kPLY{+B9lF1<#isCq6E6*W9sHPDPWAvvsav_m%fd83Qjq|h#f4Xik}#B;c}5YgP2H2rtLl!rvhF|chF(oXmZ z(aisIt=UOr)W?J&Hm<1H7Ou)3vY?YNMA&tqdERZBmqk#ft z6u}sB%ke9t5I?H%@2L-?zpIJZzW{}GEW1@ERmXI0AD}+5jQp!jcg{xshmHhfE-Nk< z@x3NjtwDd(n1r;F<%O24!YTR_8UlzhwpqIel%=RD| zqIQFvH5@5=cyBvf^)na@qSg11uq0c2D6Avz&*5 zF?d5QKa#7BhFPps%pTg*4j9DePo6w&o*r?SEOz&coqqIz74YgaGr?Y1tV-P)#F%){ zejj02QPYY#dOr>A`M->kE~NW@!eiJKQsz65SR^%~E~pU;6h5ZWqu{J}+G-U$rj1An zNO?yv?05n{bvyr-s~G$^$in_a(Gv5pAyCU6(hL-{QknHY02`U5P^$mdM9`R9r!&_+A_V{W~a&(YZ{Fy z&qLr9pQg|aHZmR{1W$CQ<=4De$3PR1p(U_DusaJnAYKeO-3hzYNVL0HMVmq%3LR7f z$*Sc7$(Z(qXd0bW9r>j78*rRRzD?}RhNSHd(l2FMg%Kf7Yk%62mg5keAJW?Y z@n)b@zvfV`Nh)yvj83A%CJSfa0qz-lXm`2Z>$Q(IHr8fJrO6uRDQWxOiNj|l?#1w5 zKs{KiVaeX%A(rgb*4oOJ_0|1v@ALaxcry17pA1QDlYi)Y*#1}a9iC0*M29!N(}ypA zY6?%M`lYQ6xChFl{uj=^0H&${5k3CO~Mz7ht7b`|VlMCi4Nu3w84=5`buo7|CEakM){4&V6 z(2@bmshGfmG=2I*Sg-)5+Y-25hv-^t@77jkYUBG?V(-k}x5v5hE8gCocV%1*(yyNT z_BsCC_7ZX>V7)_g9h-{GGYr@-sT7s|fkWtKHdHW3&-OKu9~}UjWX%D!B(wA$V8y@; zv71VF!;J2S_H~7#lSG6CkK{0TYT1k`5A%btAUeO7&{V#=LnUReRhnKX?J_Z!XTir1hOw+g1m z3~cS=h;bj>e8MXzNpu8JdiF(B)5Jw4qhArL?O1&4|x68|M(EK^hct zm_EV=i%7^L_rn*9F{aeboXd)$SL9IHp_^s9Y#6Vpfv0Ntycu%eH|1Q5h$D6{t+gz{ zU)n=f30)gsL^Ic$fc5Fvm?``@jj%4dX)zWp z^+3t}0soYwj;FA>>pE0ox6Z-yN1o!IMo_Z(_4Q9c<(puQpp73ZJl3pXhl@wdajGb( z=a?Ux1HZvCjhmmy_Zo|u^_6L%bxiZYSM!S^knIXF6eb`bi7 zO%}+>mMoR*=aZx1yB}e)Q~4nppm#V5ACr{xbm^<>6u%S0UGQ{gJZE|f+^Zd6Vxa7J zlAm)$a8`+n<90q>2{q-*7#VXR7q!CRhp#t(tE2Wm=4`joTE%vGh@wm^+;h40?J;g+Wo+T{ z<%O}84XJi<>in4+q-npg(xHv=Fe3Yl zCHfXt!{F#3Xh3}YWr2%+c=$cYcgxUs1t4H}5NCFD zadJ+!WGMJuG5OA;cn4tdWCO_x6w)yuW~TZqH`(9n5=vsna1UaOr zG_s5V z&c5m&+~uFuiG6pQ-oyaD4RmXa2>DP(+@z~bY7$k;e*%6Dti+-^Z6Q5}a)u{{Py^Kj zjO$G>`0?XiY_gkPoSOP9+EdgYb^-I=;`*v`nrzLtUqw`=Da>X zau$!V3)U-S(F7M5SDJMca2}~d%mPTv40sm}jcOa*d~{a z`d9V9T1V~kCZm?*CTt;GD4S|hfuuZ#E?BYEn&`^Yw1-WruDS6t0( zusuR=G2E+`ei>G+IF#gwzD-JGx|gxlj=+JxVHrz$u>+TITD7!)r(z`y2Am+L<(4FH zkF9cmD#q&;zRzQP+jWs(s*0ipT-hMryCHr7pyiqiy%*%EfYNjM827yVxt9J0z)8A- zfgaTo;YI1r|2?Y8WNaNi^!(VXsPca7bbepj$?r+?t23*3IoKO-yy}rhat1~Phfrna zKZgN{a5q*A_Kz()v3+0{c-)Xafb^#ylbHSbWh2}!i&J<`gJG2aRRgPac~?9WC~(5OXx4DNtI&Y3FuY_z z!9vvCn9yJwnW_8nB;vzWSLdo=X?z-s0bKc70b~NqiWl}Rtv5Fx3wh)OAcrZ_dJ)Yu zg)exrW?GXBn9y|eN^$vuyXWJ`P>8ldL6x<2MCAvrgl%B zJUE!zxPAWS%`<1Fu3oGx-?~v;USFSDx=@?Da%IX10xZxNc>+iQGT(uRkbQalnbnJ< z`6yB5j|Cz?;LXI;7LXq>ef5#ubR)^taRPQXsDHnfnjvrc9CH^HRjImQa)sNlc@Yxq z2PlENvE+CipmYt(^u|@gJykcnM{uOq2&c=Nc`Mz;`yb0IW(w-Ap`KC--=x09Q&?#L zMYRGJ__mRgV$2PvTW}@d$r$6CH9Qc?S-9Y=qe zRqH4xnEQE4+w7Q}RfBSpA^BA-S+JpZR_5Y{joBj1qqXn=PT&rzpR(EN0qg5SGSyb0|D%&(RVpQ82}ryXT>wlL|6Zo8<;$(*l2HY-324p?bH zvugA&ZWDpaOOhNs3<#Xa@X{Q7OXZvB2&;Ym+4@*oB8Z)h{6)=l?P@7a+rniUEqlbeI`#KKiV5t%XR-!ywa2%rl z#WfQvRw`&8#4zxA6MhOyTQp;w4t0C723dQ%b`3O08H0r5mfT7Jsz|GLRLrDUqThq# zbKVB=K{<-({1bcjpOA+b$VBGgT^=5L4OO=L+t_R{yWn}v$pRF9XPdQ7xic}*e8r=W z-fE80aLAXlq&TZ?@h!_mjsbx-(+R*jB&so(`+k{2+=ydJRw(VjzR#Du@NCHj#WcsE-N(6A)rspg9401Df(rmbv!YwGMI+2j$7sLffTPvtfo+E~ zjy?;XDwxW3Gsf7XsTYtn3SQ#n15?OPTGtotz*qDHOCb)_;7=j;YIDyB5SK#-i|XP3 z7uKiUD=X-&f~_-t8>-N&<)a(>H*Vc3U%!0%bh$o1Uj}zxC`0$>u24E^dWxoW7zrhX zEr&LP8(^kl_NAZDfWb0Szua;sgS=xL-YlpN%4hbp=y~Ax2d48n$wAk6`LaPtaAB(1l6Z#C{IB2Uas+aB<3XIy5f? z0dBxziz_w}adk{GD9&tnlRfZ2xWFBLppO3^WZU#AoP_bk(1K~EK0g^PY|d08!1t19psb!r?@ z1`EJ;Fzu#p++|=o+JpD(T#xn$Kzhnni@;5^QKB$Y4J_DC^q5bHIs=Dt{9O79h5&oM zR9H$N7*bF{HJI0YJqmV_C;Pf(z=Y2Dz0e@mI)p-u1L5MFduN->Cnz4;O&07FG3Jiy zzhSAJ<8zAzi_aMl8Y#Xne@_ZEGMCfFF~^SF16@@E;tf^VGynWMO7i;<`nKc^I|xMu z*bXEO1yFY26S93JG>=`usidj)2Pxaw_Ex7sKA-kM=F6dNRME_I{&fxIxGgFpa@oHGuM%I1@Az{{xj|= zR3kdL{u5BoFWa=)bl!=$LJjLC{K7@dm|mn3@0@NwcJZxf1Ga++oQVvV+lo#BlOE5;BA;-1I?0_7h8p z>Y6cA;%Z%~O1HU2_xr5wOjOxwG01q@o%G(?#rio*%2hOfI^-av7bwbP{tL*=%Gef6 zEOGRz4NkXn)T_o)SP*`~v;f(rI$XEibyc*ab&$_2sfINt7<&yGcANO0LI#_UC6|EF z-p@GFQk+X&jN?#=mxk-#RSUoG>hJ@U2aq1*D#L*ekqLm2pY!*_aCQeWD*E>Jthm*o zcr`ne{f~&yTaq+1R^xsH7T9D3>PF@lF-np%eaO;T%2eQDDWT$o3l>ON$PgvC z7Oe^D1sdZ;JQ;n*4V$wVgss6B5qM!@?#W;MY~so7f7L+BB`-K$jEtAi3(9!E$11*6 z#_GMgJKZQ46HDs6w9Se4T|F3kcANXC$h|23NaQExx5cYtV^_uP`3X6=eYAhQoHZ1W zJL9M;hD}B0NEpoCKc@=JLpEa5b~MZYngN-8^mFzt9bI7UqbDE#ZeaCe?=i6WyP#sd zWvcomn45GS_yhv3QlQNhxpG7C%r+9MvKB^74twQ%ob;y*x5(M2$yc1z?EfITwj%3b zWw6t1gSbHhdxG;P&{~P(E$qOBQ`q!09{U0nF`lkZ=%Uw4(~2tUl^_AX1KS>O=&v`? zrqe`k!PhkNH%ySfWZZmcBRhW#-E5?DUYtVlfY_?E3FJamV5Adkp3|sK&@DwmU)1{wZELKIj94Qz3JceUWcuWUk{n zn>~$zXC~X;34t!RzeU@+$!MvFF$icUSk8fBZUJ%+B(!;dxmCq3B`{=oE|dgh69;O& zhRrrbh;Gf6F=Ii257q_$00UMiGF*dJMi{@gB(1MW+xt=isbUwK3IV}UeLNT9@PgJa zFMiRgfpuVb*w$lsehvL#U2n&Ys`%@bBIwj#5766?@&!VesawnoxfJI+2c0U~o8X{> zbcjCX8qP52~-FO3)?*W8J%iM_@H@Pbv-q zrw^JDY6>gI{hK7zO&_yAn*FalD1Jlh1G}Jnzm|wWr-gjkLRN=aIoj)`(rydg#Q30| zru%jkuS7P0!1CA+t;O~`o>Nyok|(u>MK^+EHoOog@xwIt!vL7aL?{?j$Sy}UAcB`W%rw5ub;lm49FksIlbJ6ES@r#kJFt!zhRUl>}WK|F3F80dP>7`1`liyXa}EJ z5O}FO!d?4cG1CG!vNNx{wCDbO2_LqpT5%dJe0kKir{atNlw#j#h9J-vI6YQ|GjbK!-P za4 zd&x9RY<(so}3t0#qUMr@lk$I}Y zlfffkF#&lgJwS3#Bll-{xVfE;fa0g4nI`!&iq3dAxKI!4&O2YLJMUM`YgQgqXFQW} zMGgo9oYFu^v-4m+O=@ z`wf(m?jK{%E>AyY5-A&!CYl zK&viU`K|)7W5jA{0SvnUpaEhAWkxg~=CNs}6T7wU#zt#rd3|naa`x=uM`t-AP#zx6 zF0JoK=E-U?&$^1ovH8xxjEeImc{)rpAVzljftl<-`dp41jd%w5ouB5jerzgX3Clxr zTz*o;=HFIvMs;bM5+n>cQNFHgDu&__iCZwZ?wp*^or5{uK7Ehj-g2+k`m)6r@Il-Q^PZP z%ToUMIVFc2o_tae_;Blyj zVqqRHO7*2z&AM`V($F6gq{pC~{8}gpTGFqgmANa5VaZ+juDtXKESP}l{V4Wu*|KTJ z{|~w6U*cT*j7fBJ?9^_%(W#dUoVPxvuI+D;(hA=xcw=i@TWe!pp(F1c>U)dRJB-A3 ze6D9+agj>K+=1>_tnc1B3-`T_ei>(PVWbwU=5QcW zS~gsaX<|~g+m39n!cz-u>r-@uX{k&Fqf_t=xZNOe8BYA^LSeEx3!u=F=RHh=FGA(Q zaOI1X;Q&aPLL(T8U0}i5B};I|OK&U`_~(>!PxXz6sR?u+kpe`;aD`$j5(ZSxk07^)QqLEcnWU zJa~xZP4d%rp#nJy8g9;4tc~Z?h4;5;BTUve_*+!0e*+A=2ECw*z+GNDc5b(`y0f!+ zxUjIda&db4)O@`y3pXD9=nA*FGT#;+eN<@AuWZWID#)*^ zB3{2OK=mrR1N4b?4B#T}!Vd350g&Hhzl^YS{4}zNh@2k~I90Qsx19Az)7M}y-?QuR zDYa5@jvFtSmIF0wGiYJk)uv@s0T~udZ#6W%xk=L_F~c*gs%?Vh5Nn>IT&B}sBl2Bf ziV*U!>QKNIav#^jWD@F4LV#HdjI0|Ph6zM7XXQduD7CCtK>x4m_^KR0^aPA!N_QY~ zl?M~0fK4ryeyDXnGER zeT0|J8a(oG%cp}xe{qS#$|-Z9U%~UE2S(m#1*mzPgFt!zG2$~@X}v;lO%@sk531ke zp(peyL{J_ztb+7`6vqWw2^w70M!y~;2Q`QBDovfy?2ZlfCq5KT!j{PWMe|cR*Sf&i z_axWG36h~84no14)O_#@oEj^|5?{e&5`U4?+yt`sAWMdlMOTQ}%b5NIsqG2;UxcKh zTs8ru3DCQd!5a4?gZCgK5*ThEp85`1gG@g39{n#iS$lKL;_Xw-EN5n5iDhPH3=>QDU(-`!i>?seQV0IM;8eSAWM*ZU5fbt+B^^?%( z_|m-&bket3{%y^Q9Mm|5T@NfJ88@N{zJuPgS-*&Pw5j3g1nv|?2@N@q|_@@{{ zGv!qs!;b)-&%E$Xp2xvTv4encivJt;>3dLUqK*-exNU1Fg6>IbA)m3YBi|ZX}5#bhDel${tu{ezj0T7;U2TVB980|Z@JN(!%uxB;*Abp}b zxe@)>49&D-)i!HBFy#A*#DX=hhSpP^_d_adXUg9LcZ-BK!?Ddpj0mC~zo3M-g~C5@QdO zN}@Ym;_?d?FP3_IF9q{H<$Ad$%y!e2Bh9vpU|gzL`B$-Bt+i<=HZ3^Bk@;(u@ephY zIYK>>T+bu9s~311oP1<}_eZT_PDU6Nlq57mw1qGXiH$%YSV27$s=(Avh5(M|1BU?X z#rHk$Jg1t?hA8?i^>fcFD<6Xtw}Z4PK$povlbH((!77k>+L8GW@ccElUzdCWF@rEw za(j8}R%g?1Hgld;$LcPla^lJ}%l~DWf94kV%qI6tom;-Oi6-8aE0ua~^VYH=tWIB` z_VP%EiCid~D;W*U{phfex%15O*%`(|KtRYI6_bBKK8l|Vv|dRRKYJdOa1LQ(9A)}j zato}TALFMFOh`fm{f8~fy)7!6hC5w1+=t=d4U0!E9~o8ET&Nu=j>4h&lo*gkK8uF)rS*(q`Zp2x}X>!`K5hC%X{rbi=T?6N9Rs z4toFC(+>tNHp?*waKOvu^z88eCQ5Kr0Tp)HMPJ^sAea6W&U}ij z|0IwY;Kg|RP4dA|4%Eu5Qj&w%;tf0ZW$YA0GgOdd7*+Ei?n&o8oNKuts34UQw0F0c z35AhYQ`y#Upfysfed+}{gnTnl{ly@PndkwE(jv|?b)Ns0&8iTam{_rA;eUUAcbn#) z7wh%8_C06LoT`;pBnxX1f?#a>ywm1hw76Z75wTtrg^Bj56>t>KpC1#gl~e5rHMh?A zhipkKurdNKe=#n#AlBj z)#0I?AME8}og#{C9c0#U!^~Lhz#{v*TQ7$F2AWLxb>=BXO#X7mw_lRJ{mPXq*SlO> zW4bY+?o92(7I?BI#;!D|#t0ZUklWDBRwq=+)va~bQoTZ^zYY!?Tkb=y+Qe=j@Hkc8 zu;LS?QlnbEhAbYWPwfzd?>tg+$|#U~bIk6}$>)54vz|eg`dU zKDIz`(WcZ;Q729J3|5QI$SxdH=&AGbzs>tD_ImtlQ7}17wabQU7{(bS`i6Xj#qHk# zasZVt69Qd&2yWJ)lK=AZ*3%$v$hk&7|JL9U3(9=B4T+|U@I#nI1`v6_kJ%J>`SSc_ zjIiU$ZwO6kKBDJj=eZtjFCThNbHES13v0CU~sbe;0k2-0Q@Y}M{MO&EDx5w!{cME z6C=b7p7&@>Ac%Mn2w1M&=NDzo+7CJUB8VIIS(yB_2l(*Vq0ejZA6BA+)B#Gr9b;td zY1B?AI&`Ip91)v#poFU+l@763R51$}@&@!}ok%6*PJ(FtHu1pNdWaHM#2Z0mVatph zM6KV=nf37%z{>#a@gGF*HI;XJ6|6=#JPuTc`_h1r99c_hcFqQzk7a8$+_|!eZ9mW# z1Q(sw1N&0Xl}o>keL%Ln1ep@(7Ng4r8e}1du1Xe%{~6qm7;(7HYTwh)Xgago-aCDI z^=M~4?M^4fYJjBn#-(Qx?x>qorAwEjYSKND-78S9KfYE&5Q4=5JURS_hsK`QkQ|r! zv+N_2>%~opM|>7tvAd%5AbNLx8Y=(4bM}3TrGZ-0gpoU3_{#H7JZ(B}vy5Nl?DOzh z&Kb>m7*s@3B~q{+JAm;=r|eCG<2uhX(LU#NpMCGs`-%q8-Pl3w0EvwNNe}=5 zf>;P{0Jupc#YLnfYNx2(mTXC}Vq4x~B~ivs>_n<;t}GKdlT7R^cN8b{Oty-{<{KZ=fhU7XrE)-9U>t-}k-i^F9yOuq|u_Wygo0w^G3k+@Ttp zChx~An0rHvS&EoxgP>GT+EI2&r97ZYsTAHS7{VMh@bAOu+J+F!Yt2auddK8J_6CJW zipC(zpZ5pvjd%(nrwHriGmif)VtW(S%P2#GJP^1`eXMCOot|jvKNPp^*;M$5zO^+U zvsO=>II2l!Ze0FJKlc-hyK8a%Ve8E0%V(@`e`t`~cxca{U(>AGwraHL=bm&+pAC1u zsjEam6e!Xcb2ydzezq7?ECP!+GSuqYR5OUilUILSJ$$SO!yHx(sKbnAmD3T?(__4Y z&5vrF71sf49*@W4d!P}gq~la%<~ait&3ZlsMkA_9G?9ht;BnI&#LZC)%F+>J5hG|= zp_OR;NrVb{W`Sj6=u3iu5W2+1M?8pQLb9Z#;PK<}Y&xA~w_!IVBf&uzSZm3QN92=h zQgS@m3RFs`&C4hk0qcuY0?ZAeID=k?BC4I-`{$zjM>>F1;;_&orKXHlM;fc>Lb zfOz`P2hL9o5_eQ@=icJ%Z2PnUORUQ=9*`a=uYBNeKaBk-#t-hDc4C>86$oxl?;Vty zS5GvPhpH}NLn(o+9y?97o2nH=vW5%W*okcLJC$JIr~eGo1NO7u-Bzzy`c+99)a+xj zGJ#CEpqUtDRmKZ$gwLV2Lj5jq!4a+TrmXB!tQr@%aprJ+a>fRRdBuoF`(i`0uDPs5niD3IcE$Rn*O?-j=*2We#ZEWO<~g zw0b2R%TIFOo#d<$?!yw7nH(uyiN&s<)|wF`SC34u1LMBCoU<#$^-mF5Gx&|l;enxI zZinInGGdjnS$qT8X*x_*SK^-_L=CmzWu25+Y^-0fNyDakmGBm+eS@2iw=SW0sY`XvH@ zC16etCyM4K+VjAAW2#IOY=hIBTe#kT5(63=OX9wl&F-;t76|J?jw>nBErF9y-W0P3 zn+WN;36c>jB>W!8eyz|xxD%VQK3)t33yG=kK?g-)lTANDosFVn-@=s`v&fmi@u{A2 zDP*LB@l-g*t(^>v_J3$_cMa~lG0q64Vrzl^{=ix+1srYn>AfR^%}@YqWSFJQqt4Rc z#|Disp?m9Q6^ka3v?GfTYHL^eDWUN_-stYp%`IddTeOQ$s>ZFYt*sF`8cXttrchTQ z0>p%*r{AVmi)iL%FsKc!A_tov(~d^u=PGc{BZ~R^O-*;B(cwcDVuMg&(!_ioAC0DC zv7@>s1(hTyb3oOLH88*Rm(t)nq=Jd94&gAk4q)9PDQ^U1$(X_o*-dB_gIkfjH}Mku zdxqTHhkiWGIX_0Z$ky?dBZu}+4DIoXMIHl8d^dzGLY&&%YXD-K{`W z)?C`qt(!ZFg;pfg_o5LDJlEFgoj5oodn*2JiYQ6 z`q=`rJW!Bw1Q(rmWZb_U#r}6dNS_2zA$YNJuMJRR!-Ez)geeBZ)tHPzo$2-OOR?Xx5M_rj3JGB;2Cj|9!^5ymNru#-$XG!~ zVH(xEE%X(h2wa@nw-RldotQXjbp|DAe1G4_NJzMT>%&gY!syEW$^AEgi}=a@(3|W| zXzJWA+`1*~?`#SUmaf3x*Tybs7RN^}*W3dcDtHYTssYv(#;W-H8TfFR9Ae!XWSVG* zg9ocFz1nQ6W$0K;kaNMq3^tN!`$a>xC&W?}5#g_Xb;PY$`f|Rjh=OxFTE>!AKt{vi zZ?t2|fh$6^#gTsA|CI*aYIL;Jytq86ci5RSuwEU*I9I2 z=?UP@U#CiZT=f))e8pPLmg>?mtOHU`cnI<^6<<-UYS&#+sZ>8&6wgsJfxb%2@C_pq z!9i$-E6Cx5f+@g()T+iOBgH){V4#w-2!@{kRS1Y_AmAI)ozK9%TrLnhxuhodp|U{0 zFm&+^SND39M2ycG&cxt>)yt1FTjhVlw&L!8P;i|7-9{l5iDU|22E+#Te z7Dh#I@qCL`aUBiUy8ckYZ`FOepVMHue19L6iepZJ(mV7r9Toh}5LWRlF!mi%ppwI9 zE&Tb54ipgiaAKBkwID?qQc_$2k{ZbBPJ3pSRxN`POqMjZ%{(9Do*e&j))t$-!P*C- z4g|>1c!9>29+Xl`XmcAvGQAI^in-i?4N?%nNMo`M%B806ehWZ60K`=D8#E6-B84Jj zVW|t0tOKal48%ok6ztOEQxdFm^EdF{8T83|feAPrcr>s!)p_yi)yubbc5YnYme&I@ z$LVSjNBiHu@Zkmi@`dF9l58=seBrX_4fbX|wh*<5wzBvARj38EFjBb8APq#WUZD)E z6Q|-FG;Zq3x=2-b!(t{R74_3nL@?YKa#ibQ)zeZbG7h{jqi8o|1B6JSU_a8uF3ph) z^K6CjSG$QI2?=8G^Bxi6;LyOQgI68~1C$Tg44iToplr^XVg<2wPb{m}bf3nsdW!^M z9le;(+Yum%X+0rD*oR8j9?j(>Yt^8XM740lWLX!|_F?3RnfJ2P3K|Bm8Y4(-DnAnM zl0xA$WtSrI6(GMH)dnA?pa36l;iN<>crMg>k+XN9ZoVCOI`A1n9i3}yE@Z-%u1|sR zd+NC}XQpPBm!}@s*@;cX8eM*)!>@AU`BsJ?M0KIKg#hMZ^ndhNR9)$u4nTQSy5A%hmjZuz+tb27e8NJ&^)6b z793N8%Yi=G4!YPR@S3qvU2~H94)T(XpgKUPn#mB7sXyW0iETQ-9Q$O;;z7U(n}D3L@3Qh09R&!zNlK{*5@b8f_kkO?6t>5ahG z!4Z`m1ujQTb<*i0rX*sTqUgEACdUY2d46gr9}Z_?Zm5|HDuF{wOOp$G%H^5S!3TC2 z!v4*Lj~4h?b1<+lxU)035C}HMq-5tgnxg)AV(I&yhSP{A{KH5#&re8vBSu>Sk7|rS z?1VK6sFPc&?+WY^KP{!gz!28Iaz0sT*KjfR(heyQfb5iR=i}eBL4~FS#+oki*v!j3#AJ(lqi&1$|c0pkw`looDvLe z%m`;RF@pM838(eX;v) zH)vLY)S*0+cqjiBHBM3pUqTds3HQM5!17e<@FO>_T-ZLbv5Znfi>RtCouN=mFUEXJ zO-(&LEqezC!!39&N0j z3~O;1__WGNL^-tjuvDansF9Y6{{f-)G0ncVg?5r6s$nr2a};HVPK&1n5svqwdbYH* z^!XSYKO=*8k889)@z*u8{N_v%tIhEKl5r-jFSxgBD zaJMI+9VNGLXjNu{xXFXQ04V;lu9#4;G#`%?P))FM=*p*~fYRzAAU;J&;?$Qi&7N1z z3<0#CRLnxJ2iycO{IN(licB`+I$a4sYkO0dgD6~x?a(1c^DQLxx}9Oc9cX5SHsH^5 zAf8JAX{%Ui#cCS-$jP70l1| ztPT$!-FunihBh{a&R)EDDRAL*dur$5m#x5!0Ka!Au=DcEJAt9SA^Ymwt==Y*Tcr@O z8k+bETq%&EM^p(EtM;%|b7AP|#6+z2?k9GCTR*&1K4lmR-+Iz=`z@hr|Gsj9tEit^ z;6iN&ifM+cweD}WTtHkv>8xglEPYss+dyTZb)biX6FNY#^jgr2fP%$r0R#7bIiEGf zXi~A~=$doT5=6nl%q^^r6 z4~`z&UK?m>YA-$98?(Efx#DP#eb~h1OCOZ@V@;*5#~$k{H607dPu>C1UEST$JQ>Tg z*iHR04sTKNM>Hg6O|d%lRrRywdrv0LZ#788uds7^ui{?ATht#mym5&bZ>v2-zZ~u# z;pQ~(GAMTR4{0l*i?x_U za~2EMjnW7(#fCLrLJ5$S!@=#S7>hBFLl%gcK&zt(E0|KvxB|*z@c`ZjWqKW$WYF-S z^JKiFYY3NB)3AOCY2oj-QFuGxcoA56>?e%%069;bF@(nZ0WypO;Nm%p^?r=(bu^Pn zHakupvp;~2KlH$v8w^OL)gvCc0D|FU6k2(dHND8rV%qv5j+KT~j8CR^7f`S*S>L{qEBF@+Ut=Rrb zJ1sz;Z38Ak!3|QyxHE)8It()96rkel>QYD8Krp0o4n zZy9JgV$vr@%Lpeq6Oq-BDVv0)P?Efi(R7f)aXel!fxN&^KI!z7fj(C(INst;|*?kndFcPvDzbV^EO zR2zX2{?b&8FFP+)e~BcMT%*X&PeTqlSW7Z%%gR=sy>TZZbgG@mZeK;o&+&=Ms?!z4ae(Q&={8Xu***>$>yo~V)YzrhUEbJj)SY6D927`abBUHwu{D$Q? z)%vI(U`a!jozuV}y*p5DFx*4M$IE&d@u3M^fK)^h$r!q%S;~+l{%6j~cfH%aJz8S|}=q zM3;`K8$2C}09=>!yc7D0hUEy&A^Hv#q5tZ@+e&3@7a-s@+qgdRXJXseBhVTJ92oOC z1c&8=E_%xfi;Vs!o3%_JE~0r$V)VKIe9f7u&PS8R%@fP3qrLmHHzVgP8Gdqk`R2^% z=uK#9-P}5N?j{7(Z{E6k_4>{04Yv2*am)qB=Es2;x}Tq90n-OCME0K!$EFkY$z zy0xyEUp}DB)IXCjwph}7+F7Ev#8Xl=!rc}7BJ};5)8cZ;bO^Xgxm~snfZYyMT|25LJd3V%SD`%=jq=I;O*ndsIN6gc2hH`N%+rsxCz~RZ>zT(M z%dAgEnv(7E=Hr1tPhU?Rlvz1p{yD3jH+m9mEJMsA`dMaeStv z1IRqbhmfsWrbgCQ(Bxr=210U@4Wj@HehQ3D7z;w-2XQbM6T*4Ie`M8Ywp~!l_%yI` zid9yuV(O23d$&eLgpqIvmCEpRTZ(TU?eGUo`wWNeu#hPU#C&>bm+LBOy=>t7uwL@1dQ5lsX2Prf`;T7J_ zcZZcb<}xE$emEjVXeOvw2QT_DD=YK(2eX1}qbL`(1;UFnkskjizG-5aCXFEQQ8C>f zF(Km#M2w=rP1R6pGI|xBK1p{2TbmW>j7~(CwpG_tB~8 z3nxyr9d9k4Y4M!?u`zMDuX}v);K9zB8-dGrkH35TgX6*v%iOyyAGGkt%Pr3E_{`mvWTi4Sy=Lq zEMRH~gHd>b|o4SEE8Y^Ie|>UEO+PZ z-qvLE5K6jA2pk0Ev}zH7c5l-1_>9irK|vub2a&#vSSaBP(edmDnX40YU-feIT?V!G zG|+MqTq%%}GN*h8BzRC;G@Y-fz<=T{VHC_17cB@EpxVyK?iRSj!{G~%#IQYbuwau$ z$^)yjK7U>(qM+en9Rr8Rd~aO7Jg?6;`qFz7n2Ob9 zvj>b;g;~*BTiq+sy811XhLD&do@yXOE^bY7^K7k3X?gH1` ztY#1?jRgTV9fH1_+*J5C5#N7O!vvi%)fF8}4xur&AYXbwN*}ebQ^1Fg0oZ**P#pn$ z0+P*LfVXIw7-YjEg6zST$7K`6ctZH;X)xUI-kX|Lbn;mUHfInO1Nel1*l}~xYomWI zwfuaM37*-J7-Rewg5fxekEmDjw~YV019hYQnBCbyeDnhG;yeR3y>rKpt5Zjhs%Org zRS!*0s_{rfz5CQtV``%^=DiUSpf8kp;;L7|AT|dT5lem~Q#Z^wdW`2|cUh2*AK24b z0EAVg_{k4jhpW+RJyXa;itbov=e|e= z^O-vM&d~JgPsM2B(rE=GUFSPHSH(e-l29UlA!VhwHS&GA?}ZLUWB3ZH*Z&Qwx_i*= zCsh9;@Z)C!Ph$FNV7-6ueBZ&t(+9c>W#|JY&E|LO*lRWss>21t1dpj)F^ zMIMr#EQ$D39a?SDwAA4?V!Y}wKwMUa7rn#t>7!G2#tE( zy}CrK$nM8lb(2en*UxPz5~~_w=20;ZNoD!_{RYCY`@gUSJUKYl!a)nRR}Jb$jIj{=^ zNjHyba074$h{i>L^1yTkGePif)W~FL(&0Ig(DX1}@a}+Q@xWLp5&(BFFA{W3FlnN! zh!BiHISa-EvvoY)gaDF;ADR6f@}<8-&0>wAuPy^e_gdhQsfp39uI0m};r`w$*RP-6 zIsf2;>n9?hq~)J~I+uzAi*>h`ySu}cdUsCnPsig=^CxzCOH$_9w&@o?fL#qh&uUlU zg29D+Yr(7p<5grgFd}#!Rs&!a)()q0&M+&$$-w|L?mT!6saiy?KF@-*+Lk1Mh5t6} zwwe(8dGWA+M=?Eq8@seJZ(FNJvRF<0-<4rljUf(KP(&q{4-V1f+m33D4yq;wPA)N{ zFD3EhUDaAvoU}adhz2@&LrpAxEtDM^`-iFCX@Kr?GOJxdLE!c$;#c4IeQgId_7J<9>T?CZP zV0tR6$tFrEf}=Nyz&=#1$zc5h^_tj3j9Vn z)59}rd{peyV_p=%D*`$v+@bGD>EG2=g~bT}4UziaqWjQ{7-1hUfy>}mdIVYbV^bqf zJiK(};>6Mtf8x@`i~ND{aUQY_d|NLB9{F-he?Ol|CU^HDp1FPd41cC!OVB2$^&;x~ z!+){@)TsVM|4-{k_$e1#aJB_lb%nMJ8HdVgrlMx8+=a7G5Z!8cQPDN>#{(%Esqd49 z{oo&dW))bU;wuOlIuvULbJ{eQ)=3DoN0f7P>J=Pn>H1N{>_*pV8_x_uD?IgrYCQ$& z4nIU>)zH*gY#LEPR;I%DOE!K|;Ze$_t%4wf>#`vKJ|>cpX4{al zLAeveS?D+*WtV_Yw}4hdj47ZvEkGi3-06S^&_j6?1B@})ppb;>42Yc(NeB`KJWMD{ zL33P`ua10Qa{dtg2`Yt#iM$N%2LB}R>JtLsAA#&p0}<5BI#4lNgEe>%k>X2%Ukhwc z4LtM2?XPXj6k>W{>)86$r!TAowz$AL_YdpbhwC4$^S8IwpI%vcdVTA5=+Xn%KRZy) zxZ)+$W!Og@4S;}=MU2e)v)5qwVfAD6=5KXX1{r>)5+O8JS#Ww$34?cFg_@yZkqiX3 zg#<%Txv%E#_ePV|np?F-Qz_6;?~!5;_O`V~$bH`TY!D$bAJX#zq-Id}Y^Ej=)jxB5 zSVJL{4=ytLM@~Tiz_me72t8bY>JzBXz+$IqBo~c-wmC$$AuEdlQ=b~_IXpAIEy=GXcfk}e)3S}ggVEnokU<|+msI_(zyD1C8SFz0vM_2% zsk#eG#bLMr)O#A9VYX(M^&wy7hbWD=l$h3|7}DV`RJh}+fVAHg!4uuOU@o(YD=T!g@gX0=I=K{|uxFM5@}3`A%#Sq5QQ7h6aD*XR|X z;Gc%39eft774L=km?>dz0M`QG7>ic~B`Wk}wUC6y983^F9L5qBV>8mtqG9KdOT|b-&4Hrc&wlp3C9?vI#B`!42I05j8+DhS_0l`t}-#O&3x9K zz?TD$PwhX`)^_FW{P^&RmX_1y^;~YV`RQyj5?p&Z@!Z{E?xQmIQ8V}E+WTuCu6?u? z94Tig5t9uV%LUL#9Yj}{{mA_T0uVZi4AMWnTHdLuf z!*2m=gsB8q=z^;W7Zls+C~~E}#>yFhfT6=T2sXlj4m3kW6Kb1r1$?^(7svb$&%OWL1Vx=0<-vLb(fbl7f zZxQW;rF3($Yy-xYHHTCikX{IpI~=+Mot}UiMo{iRb;Q{-8+EW9dFaJLt%OGoqiqA# z4?a$p1B;)Ax~7684Im3qQa*s8455yqOMfBfe--oeHu2j+r-~Z$p$KqL0eChYU7>%( z-bpb86wR4jgDrX`@NJmQa;`qB=?{@LM{Zsw?2mRme=V#Y8yZXZ; zBjNt8&9zx+;!B^sd*u;uU@;$BFKxq&!J6GQQ(FpXxIz)B-D?9T5AH72&9Q*YAVzMEa$n7~*jZXD}j$ zfyR-wx{2$rZ`^C}BvC;(c^Bhn60pKD%ZQ57a!_hBta(B1QLSQDH;==T4Wz9YA9pl> zdt|}&lzp`4_M-g4g}GR6-@bjDrW_tC0%9{9jqi(dO?z>?kc(yFCR7zm}kw%1yig_88)`O_Bz7lvZ@Z!|m)|KO@Ug|xzG5g|?mEoBii}75pCH>s3 ze8e%Iy7Spr-(2C|T;$$Qb5~CFZoIfMvzWeR-g))aJLawQ;>^m68@;El7?XXU_S>2L z{q=?>8YK+_pZ*SN*gsV#3BOohIfPi%oEsL7b`JIkUaxvF1kII32;y$M?C0b~phjxN zJ^Cfz60%44;QYu%BBaNg)&qC;KD6CxTd<*<0^k|qx8bXpRww@jH_cnF=zW6A(M3&AGZHaU<>DsWF2fj@=sQi|47{W4r6a_EeJiw(TEW;Q1R)esib ziqV&m^%t5R#P6Hv%P46bBoHpxfn`Ck!XF{d4l0tWuVhjB!CYl9OZ%o(H{d4Cufv$- zdL%Qxq+-xFbP|*!sKcC##rhyZD*;-DnLQ8Qy3-hb{ ze8QwYb%l$icjaC+m%d@%{R~qq$(t`epnby zmhjJ1O~5U<$V#aIx$<&(Q30_$ye2tZ4BK`hv2;=T0JuFChaD55ppnBcE?8H!L`cBT zaFXdtp{u!8E!dA5r_$2Y996|`E#u_5go`>uB7yPjY_nNTV@7*|!as`Mp68(Z<_-Rd zWc@y9b z7Jxrx1#H?-G{=E^{{d|7a12yqJ@9pGZh9`Fg- z1|!1CW_v*f3L|3LKyRV7oydL-hqL!zp_Fm^pU;1j#+n>ENy?1D|IoH#}Z-4sq zr|;b1YQ=>jVmhW2$yW1vic3I*BB2@RpEeX@;XgikdGO}GDWDZ* z@dxdJ`aAlTU=mH97z#5eyN_XAilnqh6k9!rHI8X|H>LwUSI4vHz3K)~GkvI>Gbs0K zMpE`7;5kgdjw9y)DLk0a3AWMWcaS_Wfw3yhPNDM)X+5bUnM|%?GL6RIg3v=Yjn;4E zRYe5le}=4oMo^}4kFNS0Cfx`i40Li-Fkw1UDUOG>DikjCC}-%1iJ_g*8k>PhAy6S7 zI>mk+?~ny61Supz{yAY{ATBQ2>KfRbeBeunC4Mb%V`}her|(z3IrfWRDJ>qHo$PKO8*`dVCFklFFMshfpK)%z{pyXk zzwia;i93(o`P}Cm)6>ANw(V@+a}am$mC6qCkLW$S1dH`?U@8RwwLMS?BJQ(cBr@pO zGYx6Zu)ksaLtWWje#r63TZT5|Pu(+YQ;J7W?vLd8giBmFJ=j1*+LlC%2Mw1=fA2(A zRI3{Z(MUwcj&MBL1@sZAj2dIY|rf4JwU0WX=o;~eE>HO zwqyIO;SCrOFn}^8q2+6>ik!~nJb@-X0J{l=k%F(FinoKhJj|N+9EPV z0xzkD4Y8f?CMI~YJ^zG^si`tCK0Ol#8+3$kykN7j<;FfV!IPw z8gRXD?WYe>h|*XGFC^oMN0P~4_8?~A)P(7^S&>fD>$juMx7ylzIy?LN`@hT^X!$|y z27jfFnCb8FSK{wQg&~fL!s=AVUQL^nhKAHJVb2~Bd_!I!pG>xy^Y4y*Fvdg9AuvB5 zAUTK3G}>IX2~ai>Lw~35s^~%W@5aupdMo<7YJV0*#%!PCZ!f?;vf;J+U6#r@8X9gk zd4HPwNKl-l4=IK@H0(d)(1a>PWpzn)6&kx-vBLTjx_cbc(?|Mrdud#EzloVn0Ll98 zec)~dZbW#94@EQ0U>O59>+si0|v zQs-i5@&Ij_YEn`uv9K%XUpQRBUHQkZi`bB~Hf*BWg@W;jMuFKQ?;?`xAy^;tEg1YG z|8d(z^@;|0I!5Rtr`S)M;f)T>KG>t#^LusY7f>Ke@QK#owSpZPXtIP z7Ik4CH#FPUMCmCze4^8I7P?Glal&@LfvXqe!v)n#b8&US3}1zbT|)9cJVqbjcLn~8 z6aGlkO%KFw_>3E2T}(|RT)`X38NUd9QPDBNC8+u75;YjN+d%ssvJ;If9%&ubfvQZUp2o@?9#i1l8vI|9qJ?4A9>goQM z8oKWUg9X`AgIiSkHQkLi)0rz< z&fJ*oe0`WcpjIPO??4z~@OZt%0TC}E>qr3H5N$0&_^T5*Fl@rq-k2jq2LW7)8sJ9^ zd%BBTd6U6al99++o@SX;NypVzSbq7}4Atjf@67<%kfxXVKs7S7bf{~-YtNpg+48}1 zXXjF>d1huQkjacJH8PJkIt99_eshpcIjkP#Yt`VeL`Sv?{lLZ>#*3d|7^@xym$+&m z8Z4|g3veQ$JwR;XGPP8JFGP%#kkv6vZfGxoEn>!W20+2NCv3QVY16r4a-f-VVxfZn zAx0snh@Gna3gYtayp;gEi|M(YNujyZYY_@&yjv)Sbk7KPvd>;4Y>CVWN9}-Y)XNVeMiB(D(y;rKiL4>@0!-VaUc4k z9GreHXK5bLC(u`pfMhkK&OvaRLMHu$VjtF>0avrT0CDb&>&``!bHjp{3pO>g4+T7t z*rL4ftTzraw636T$|WeHb9M^S1DK&6=s`qt2(TQQmsL3>1G#V-z;e2E*Al(XQ%O%q z&Uhp3VtadUclVdjcmgMLk*1C@hM!u3rByu2OI^D~Na=ukd1A!C>$ z&y5B_{GJ~f2m}u22~AAWz>OESVW0Zf7`wI6o727}_fi*|BX$%V{KBs7{0Y0)|J{LQ zV15C0aJ9BL`1rPSc}($RKBlcZD#tZbEk}@JK(^3G#BUq!u~x&KrLS?*{Y8sQCb;Bi z{7f>LXX-%TaQKoTMDtMmrilsFio8yX6kBbX>V?BYipZr88|kmnBK*nHYj<@ z?4!!ZZpPd?yhtbd)xm+?Ac3^>z33;`ZXvqb_u--4lmS9a>m$ z5ANUG9CC;5vmqPeYyXlm|AbxHxZnJJg)FKP^I(%Uq*4t(8T(mlfJS-Eu&!%yjTutM z%(#4{DQFr=63&~!9@Uap_$cv-2%+c0C_I-XDR~Vd@3Cn!I zHv`Ror~*G8L_s`)$sr*+;{C@0)Y4T*woU&BD2rhfUo{7Dp+lN%Sns%z$2^-a^_e>4 zuN&;aFITJpb}*fNQZf{fxpcCaU>zEh=cjrMsk~h1KY0B3{CxlF^u{!}#3MjJAnooy zy6@P&sj2?G!^_M4fmkw|UF@%p)K*PFeH*i|zW!~)u7*{pAeXQkVG=5}49ZT2k?J%S zKS~v&K?mXfmZ9;oPow}U=Te-V<>NY98A=wVyhWUB)fx=5OCHo)iAcu_MMOuKhRKCO zMp@JBB9wrjB-}{?Be~qS78h5x6}fzKdN*rQau7>IOgWGkNUK9ETw;O2 z6H%E9B@AaoNf8gbNW&RzL9RmpUy+WKOyF_-)r8=MSO5l$WeQa3 zp*c6TGHW`7dOv2|G6Mrmy&%O;cZS0~vC~tlt|@iw9p3&R%{8TCs~y|h9jmc)lc>!! zbJ{&YFAH#Kd;6c2tl?u9|NqCeuP+kK#0(-@hQViNgM#K^I7x<Qh-E-cR6zT@gt; zXoV4yhIlP9N+XF0AgkVphFy`I+}Zx35NlbIVC z{&*o1@9BwW3dckGu_G<|u1ifV+k37tyV#Y;qLw;TDyj9W$R5=Lu~N+!)-pB3dl8oO zQrQb{RJqu&L5D^Uap4pnZBa0dcSm=QQ=Z$U*>fYh^Oat>L!2v&*RUtk4O?^*$x#nYhSZwjrU-ZwyUe_R}+cvHZ4xHC=fe>Jw`+g=Xa zW0}lwe$Li-s|0p5TsYvnHPF~VhK)(ZAS^a+AoRlyM63&&@ZS;l(zT>1yCG=#;)+g{ z$7lQUox{ntwrqB`7%4{*iP-a9YX~SFX(5wTUK=1D}!v6~0 z{eAls$1m||U7QWVf3aP2--w8K43=wUf1-3G3{s6j2hDjSoYfo8hJf0_!MVxe#w z^s)fu8Fm!SVyo3qLyqp2wNMsX5NMr&lT<`Cko3Pvt;lD|9D!Hcp6WWJYz{W}Y_h`V zreFBnTt2&ac64;Jh1EYdkDcDx*>sHN=FQzj(0Z6a`>_6IimV~2)o|J!9h8c(N5d)~9YhJ*##DcspZ%Ji^UXFt z=lwh&h;VzVwIzE*2dL?e*OL>hkyb$&O540OngXo@Qtu(%rD$10eSsKZ6Tm=pqWVQB z9b%(8JJs!q$NK|a#}A)9d*sOR_FV4xnb{qH(2t*-JUuxxbG)^!?fAsli4(`czOj6K z`Q9|7;lfvzf$ea5jQ^;YSl!8NEBnN7!%^gPmFcn?^Z)NVW#!z=Ds@WjP z2AtQ9a=ASF_+nBK%r*uI*9`G_8(0%1D01%0y%TcCbtH8OSYurn8rlIhMi3<&J7mIG zQ%tAYJx17+dLA|`J~3vFR6{$FMbG~L3(^MWk`aao-wB+UYCqf_*IQfLq0`lF=kx8S zCMLGG+s8J>H%^{xA6gk*Szm8Ix;Qw9x%^L#>ih#xwJm-hv0@C!1T%J0_Mp<*p^4U>@R9Af0LcDzX$5 zAWWkh#j|i2sa&fyZEL}BhY8U?(?c;B1Qk)!qpF0?BIv(Ho=tX|V(1C%bxe1Sl?Uc> zTi#r7OPxEpXV2EwT-SQ<`iT>BZAUwguC2{2FOE z9w8&aOT(4#8!l^uy~Y);?&kYn;&WL(0j)~#e_;9utus)0M?J2`)J#0SLBg(COf0if zyH-TwLC~B~IHVuY>>-i@jG(Iq#fh_NSBRtWAb(1WYT}fvuinaFs&!T|mSrJfTA|ZG zP=~HQk02TKw86nIkf;}^Kg_?&MK0SG9~sIb^kZ8aK4Xx$RVumQ|G;jxPy-?jmLg^# zuhCV$INpp7?RFw@{``34Wc=jT*0{6o;WCe}9kuQ85E!?VaR6z0dMcLUXL-X~D8bTg zKzbXmW`oJV1xJ*DxVPcnHx{^!4h{Q{@hbD7_uSOh;$g#-7p?FgW5DP-2exkd5TV_{ zCQojnu%_B2Oao&AB~s+Umn6&0OI*6@;i9{2`4qB3m5(Zs? zjN2{?v9l2d%_#T=S`iqEDSaF2YfcCHY$~fG6WXm4e1pE7S!7cOTT{L1p~VAZqlf!q zvBA`_ecdj~BugufA$3h1Ih;@Ji>`DXInuQf-IvNAmJ3`*0ZUXb+he(~=lyVx+4gD> z*x%pHjzXiuyyxPwZ);bW8KesSmM{i`%~df8|IiE#S8IU3CV-Q# zW%ou+2MMF)2zHW>Lgx@4pKgWhv5A2mCCzOE+zKR6YwKS@pDsjvM6v@TL8&2X(MC8d zHEA~rVLrVS(L4O?aL=A5rG3%Eh@URMCI|CsnCHLR)z#nCMX^h@^WRqKgsc;X##Dcw ze45{oXIEF}=41@)$junxTb?`yuPHku{UyeZ_{7%|?WGYzaWQCP0m&RvZ@%Qr?J9 z4rOpNL43x5y{m!^rbNkD&=Kfpb`O0eb>|XW1HiN}JxwXTezg~5>!~ixcSA{(Pm&bG zW>f?tUzebO?&RhCE1oLEdq9+dAiI;*p8Isy`Bo=YocsE|48=r{e%cmw%XMUk|2Hhn zc;F(~_O3xe?ef&f&W#%v9y)dE`u2kx8&^&qURilyeW_zO4hch`qKeKI4H_XC+GKj8-3k{-sse-`sXAeL@%cQy( z0&mx146vN&zP6{aG5_djFdPvO&~WxJS^)!^wX`b3Ab?9`%M3Nk?zm36rHCal!ln$G z1#rM{wk$yX4wMr8pfm79xx;V{L%3$VRk6l%NveqtXc0{W|qQ$*z!XNVdL%|#%qYS5@^?$jK?%at6~2jDiu`;Dn8Y?}W*jo~O! zpU|@nHQ_#pPyZMZ{rHElDAwRc*gYX-eH! z5DSDyl6{qk7B~kT!w>O<;2Kci2IPZPFaJ;U*opCWw31;w2#z*n8B=-f#_7xX)r%L8 zAJ21&l0Un20ga9PP#};$b9e{Z$|ac`DUUE+I;Bt1>YIjl8e0)JWv zSZ1~+wFYNpfhs#;S6)Y$x@uVP$tzs-MpO`L$PxS6;BeZY&!Y3GB%Hft=u$Bf=56SH z$VxK;Voftm*0TfhT`fwM2T+<8MSDIZA28g0+dv1;u)EPdI%`5Ko<3wA>?V|?96+ae zToX}NYu$^com-YA45Npgvct#wqB@w4%%B&>WCpK;!!&9IRei6c^Wpt~z8gr=%eq^2 zb}8qjs+0Si0FVhBB9QTzQDyv?KR^eCm=Jm^vx%oMyK!@BXw==)d93KRF6XZ#mcv&T zPM%y|b~g^5I5h1}x7Ivl@g1!35yMH{l%h6T(G?kNE$$?NVWzTO?^b2&X6j8EC&duoY z7^{T@?UlF$)p^bNCIW9-6RnIPW5IMqc**^`+iR(I8zqo2)!FtBVEz##EJ~khW}~Xv zjguZjxPqQS=buTgCV~Xcidd~q&~D4W1(HLSwGU>a;3C(pKgDc18ZmnKKh2&5J56j) zLKkyJ7)@D9DIsI|Uc28UI7D;mWzCrfbqOf3c}|)`xepPajP)c%%X)>X+7r8m>8;VF zzNXF#@wT>f`oi4K&f?;Q)^Ir-i(NQ9vpsX@(1n88V!G~y6BDPjXK z7qb7dMXj$bg)i*C#_a#Tj*nVs^)$XQGrIqx))&3;*Xq0CbsR9H;-0KcAiqbGwn&B& z4YCu&*~LEaB3n!SA&fF;R)?jSMX;ZiJk8oLITR1{u$+YU9zHm@J!W~|FraAM9@k`) zVUYph6YJqhy)Q5TLQl^-lrW(p?m`}}_7fVSsoqDz3Lh?|x+_2UMbys01ScCfeY9HC zV-SE<=x1{&^Wf({fyv;@Q$x2F7jJW;bJwmd+?))|Ub=MXYIjF}vG>9AGdU%3d-P`D zYDe!(A~Dn3aW!yr^tO`TS$@JHcGE_n4ZJ>!X|NV-IV!7CxvN@DiLn5{5Y|{8SaATE zRNWg={LTVR+|;ZrUMBO|n2a@?*vc9Hq;;H#9kDRD0}?ybQ9{wQJS#^=LFoit41ng1 z9HPx6>S}vXx}lj8P=ODzbT?ShZr32qj+2P&R~th|&H|qoC~Zp-&Bg@qVoS@p_PO(* zi87>L2UOF-^cyd}zkQ_T+c8kgVD2$b)87y!Sp-!c6lUEP7jtm))yBm;v`T<*TJxCi zOAaB!0#2`8wei`9m`Ma0SP586ZRRhreuRVAkNP@ArjKF$U_B4tnAy1W_~TcvZai}S zHt0Pzl+bi2m)m%F>lO$uH(E!6BeJ|P%$3Uu>n-*(#F!qz1}BTP+G&w% zKMO=qnGrXo!&o`13j$RfAQ4RHFLmAnMi0@e*#ZK8tRDvtHU)`yVD;MRE2`UP{B~;Y zw@RgB?f6(Xbl!A<;RYEOs-$I5i1(v0C55~eM@6-$q=XaP6+!vi7j8kF$>S>X7xCus65K_X3(&$>f2ODmHNSoWY~1$69n(FQ)m^w7F(Ho}?|*#R|CyxS=O7Shy&+dCj! z16V{<=itXi`RH9vdw=u^|hHKEY|3vay>{K|XpaxYzb?;8L5CGPHdj{k6r zd-q!G()q2mLSb#|{H55ncjZH0NPfk#zH$U=>9E3NdTVX7>Zm-PAkWAay|&u*HTRdF z{RGamZ(k+UL~0Bh70Zmog=kTk>8+Stuq(vakc%phn14JwCQKXv?sM zT#U>F8I#%<_6{X9m1$HT@r&rXAhlwI5A}8hSP4_`k_xcAyrW|9uUJTcn+fJXUbAi2 zTp;y2D+)3gghF`?{N?cFfIdMD5%qg-Si$KByJ`ZpN+hwZVDZ8rJZe4+LNs}rLTTL+ zOVG#7C6d`R*U@A{V`Xa%)QG0Is+dd2MIc-$2F1C~QiP9}i-NMTv4PeJX3D^X{5af% zZJHxwbDA)J2<8v?0h@3LCg{Q-*N%dxWh<78TQJI;;x#Z1VOG$Qpmt?PT^HiUC5)`9 z@FoVPNo1GUy{IUR>VXTwU$&QI!6j z`T65ZOWmRNcDeiXfdkuz54UmX61B}vxu;IG1g!4K?&a!QS>a0V08G6j|IA{BBqr|e&TyF+qazl0;5{`x5 zSR#cHJmoFLx|@%sz4uVQ0O~msc@P9-P^3|fVL(fqHmJooD03(l1YRJaEQ^JH3A#?L zfV7+F3gdYUz+!MDl$Yc22?m`$EECfLMp1t$1}rSJwNNEfGz^f6hOR@J8R`bIB>lmaB^^8xp@61DRlrw%4CSu1rtR z?!b1yExVxywOzv8O@o;rBj9@+_9WSYdjdbk6NP$+$>Z#tW3?k{#3?&7rRd<%4h z(4)-(7X(6p|fYh53&e$f)vW(Qd?C;G>fKtN#jVpA|w+`!}N*{#ZR;V|zi zELWc=h9-KYalwAZ+ETPpTU7s_K_#&IKLU=3{UgqBKw3E|9fmC0&kR}?bR|X%@Q6iZa4YpuAQ?nl0hI|1*K(tl_sdvu%F9(zGN%ATtu}N$ z-9i?iE4=24m1y!5{;yJ*$80)A1+5U?8OR&nvEIbIttbI{20lQre8pwK)Y1yFjI?w% zn$m+B&?1GD#q@ExmYk|=TiK`%OQ45JNYD{&@}W%5vc{nu!x+@XP!p_cx|cCX1m7OYBufFrn>#uV^|H2nvc;yvtdEX-NmfX)h`}VWX zKhHh$#9ME1nq_^K`|MBOShS038AXFxV4DlkNPR0X;}7+`y5C^?4JtL{8FoJlG8Wo_ z_k=KrU66HttfbTU|M*#+reU}314|DvuJipHXe&FKXOJDhM7SP-@L@RA1_B<;3DHle zn#TjtjTu%AnVcHJNJb0;*g*g=0Dw}%>v1p#AU&}+1t`A}U}Fy$qYz_6Bx@X%P)jvX zEHI0hU_`M1l@$8;2(ThXPvAk7rU@*TK-jBt+!D-AVhLBkO$82dOp-!FL5TN)SyBZ2 za~7l-5X}TEYzk>8)G*NVHtjJ7?LnliiO&fDn1fgvleN&IDmQ67G%ctYi!??9RwwZ} zwx5v57>t|X|6#i2F4HY1{aMOnE`izfX;k39gncvF-oJ6>%E`Frl^$4GxxAi@g*oT^ z;^M`lUwHKiIk0eO-?V(%zC;OGz)1SR_V`!E|9F1-TAuYKR z`l1`!ChV^A$p5~QnKDdR%~Oz-U^*Ju8+HFdY!x6d7#2YpJy73l)s1rhfCGM|F&l-w zY21N+E4aQPcfZ=U_YnNbh=epo-y2M8@p;Y|XWvbVV;JoO)O5`GDxwz3SM>?Yfc7(B zBW4#_8A~%tam_kypddKS3KQ91F+fj9Jd^~^9&Y@mqw$-EPEq-%CpcEBSEFrG)jvPd`- zCt)aJ{hNkY0;p0D3h2kcZxeG^7V`(^p#*T7S(aZwPIP5z@XdGMef#XGQwKM{`r2z> z|I*7Zf92B;=91RvOLuR{?+m{2>9;rE`1I&I?~H!>jm@{kXV*S|^&w9Yp7r+zf{I$c zQ z0`hZ_*^pi67WNFi_5HU~<6a7f_gcDHC`3^`VzxsmfzyGqSUCf%pb9aZ!x+?rlK~!? zvS;LANZ!1HNG0BMAh@XCD2A~m}KfdeQhg+c~sCDhR23U)(pf&PX8 z=!RrW>jtKJ^fIaQAgn!QaP9u~`fW~^9nj-&V5viK3OW;@oB*LNXbWc*%wFOLf5)Y%D2Mjyav@)2PCplhdjO*&7C}nd|8_gz+TVTx6o`BkO zv?r~Kz!vykjP{$9c)MzDu!{^tvHulbid2@n7y~v<0Xz&%iBDl7{$_V@H0?CU!?-qA7L-95c;q_qu#nK|eIZ*V`_;NINezI%>)|J;Y?_@0Hy z1^(TI4;J`07r35-%Ln;)4}NfvfAb*sX4^+?{Oyf%3kRp$EURt$;KI3$+j8>4Ntkom zeGOZW5${xJoT$57iE**{DiVp6JGLE}v0{U;u~7b(HNL{EVICkWd|{94%F}{=#OMHhg=1% zJw7xfv)S5$7<$NXmfLjuK)Y@q95ZRQ7RbVQA(Zaz7h`el%YbRwUlc7-MK!foH@ZV0 zN(HqXX36p;Q};X_KmU6=_6)eTSAxKzh+xwI`(+s1h!JpwS=KNp zbiuN1qHu1jn6))a7)3#X{JQ7uA>CZgu$5h!Fpzf*T|2nvuCLdW1Ol*y;mbVJ4uRQqRYp<=Q z1_yJw|Btmd3y$kb)5P-L%)4)yH}?%ltce|oeIW=WNP-}CfFuZj8%TotB9Rm+k|ITd zA|X;DB}%0#NhMWDs8-d~Ea543#7wt)#&)qEY(F@<)!mNpgCiW~i+k*GcUO7b6Migz z|GBvVgt}B=gG3^Mya`J8ob#{W|9$(~LY*P-M69ixKE1CQ;E-T&-|F&-6Z@toCiZ!C z(74~earEfeQ_*frw~00?YIs|?675CC*^d_W?Mm>>52BIu@wMmY*yB2C%{lSS6W zYHexhWEbvJL+@hFE8I@%fna=S(R}rq55F{kct-i%-=Qx1mxzJU(Qx%M)#78=2iIIb zbbStXmUZH1`Q*x{7j7T^_}HU`kM};>`EWXm6X_0`88-~Qt9Pai*hdi%2n zKYsA&(d~Ece){Qch)UgVs;@tH`&>yN{OT^)wDcRo83)hG)+R@F!-ATU^UDy}n=UB& zD6D?*8^=BM6a!%gG|*l0lj8os;Y@dTe?QOF6M@cN3WSkLB`GPi_&|1qkVH8N^$cj* zD69&Sl8ko5D(nTcN2-v3!I{L&Y99x-gie1-vh-lk-Y-XEelA$4jwO0D!$_r)KXV7E zz{0x`$bxJ|3`o`xT4EFsnW|BP)N85Wv#usUuEhrdNk)&SUGEX0r3;6p%bm!~;{oj9 z0617=7#Sd16e!GP5oswPN|H6(0R5^G^UkSZ%>tjQC~yWC#?+8LuEY(W8w5-LiyQ3g zq`lG}Q2A(6Lia#>Di>izZiKm4$4_dsW7*?Vh0{b^ZM6as@y zWli~Al*`VU^(dMU+Be1T$k{l5*n}o6CWSUs``WN4I*3A>wn#q5$~g@uk9Is#!BgR# za2~m?9aCh5n_)3iM{bwZ(oSse9)g%{uEh6;?4xm+s<{YMpoWd=Du5)6jAchJwR?P` zn9$6FP>`b{O<3fT5;$-D;xK1prBWbXs{#$2tO+)UB*>li=#|9HAjmw&rNF?fxo`34 zxgo`Jw}NfmGzDl@4QO5{$eL;T#5iLy#d;)JyagFy@a$u@+)c#%NU}f)MKKN9<|K^1 zvM8DRRVg5dh9?b1|2n9td(sH8MbvmrVLQ@2M%f~67bBS5C9PKpG`k`cpznihj3Hh- zfS`!fr!=9mB>GXM=DUTRL^V7oN1w?tq@G6C&*1_3sp}Wn+0m-x%}cXqZk{+i`Tmz* ze)!?d>6-280qi?#ROyD9d&fe5@gzoabn_1*m8>Zhv@AKtVw`!kD+H(Tdy`{upd zpL}w&HkN7#r)FnAx|uHrIZ0M=lNI;Y#+|n1ceM3b{Ecvk;i6vYC1IbHRQrl;B_~Xw zZB}>&N_l)=z)$7-5c#C8u+^N6TtH8KZ}YVSl%<-|5T$(;(eVgF2Htq73ZI}otKM?&9@F$?peW!?Ql8_s)!6J1H&4yYH80N3H}9F8Y(9GEQ1i*-#~(F6%G)UH78cQzel4|Iui7eRt_WAPwV`6A zL1%3@7_-VS%7*wk5O%=ZG1kFuX5&g*k@?+64NT`bnK5jtO8l;^1D-u4b^DJXNP&o}La(tM zJ#($8hdyqg289S)P(_V{;v%&8&|wga5fNP_SR{0`MUM>TOjHmr`a$9gffQ36(_{~- zMUeV(2rGe>1x_4H=;(!xDFKwZJO(I47zPuJBBGGW_%L}?6Bd9{0e`(#f#C>rH3*Su z0AKPST>lAkl|}BLd`*ZdiL}H1i|qczZtmmt^&kC++k5`}fdkx6o__rl^}^Fr=dho+ z&mVpH2zA91dro0jaW|dvV&Bf=KnroiKGei{tNc}I5TKM<;4I+4L8M*cE^Q38H*Kvy z)Nav^CF`}Z0$CDX|Go_ak4J*nMXy@A6R9p)*jl9__!h|B@93MBVt212_C}+dclWW> zEUsCv8@@>d%p>)hcUPP4`+>p56+ToY1RzF&CMP-(QN?WX$=E-#UK>=+1)cDOm^Ft! zCq8y?s6PTb4L$U7cwO|iVlX1$UQJ_<)P+=QiCy+r;3$L8sHjF*dWH;b1WH-9rTG9+ zvjEcc#H;Wt?MCeu5T0N+0gps}j>SjG(68+78JsBZaXv z9YZ+mEu!j$=?f|rAi&B({z?~SKxk_H|Ax|ygN6y^_?31dc7F}{&o_Z7{KEAM*B@sO z{P_N*)cns5e>p#Xco(P{^!ZP2-u&#d`F2I=?w%jMaAE%1hc`a_!4KwzW*Lk(^QX6G zv-6kVd*i(iKA3L;NN@gl-@w59QFr@3=>SZ<%? z!!)+%HZWmg%jLsy^xCm$@+sQZ2CEbn^@ns=H}33z+G!SDZKF*eyy1qkbCqS3tZ+rVkAmTx>Nw@#k=wxS9C8>-j$i~OZO0AzzW=>z?KmGd?yMF3{adda}0?TTfIv1j=!vxqQLol!{wq87h} zE`WN6*zl*6Ya+t*xlHW7|IPIe8+g+4wF9Sb@|Ek)UH?9N=+C;jKmYlE^YefH&$)*` z`N`wQ+{~FX`}T34-~003g9qHo`04TKY3_$_efHMfyWH}~iIK4}?&9@NuHU-FW&3vZ z9Xk)5hT4 z?7D7bB}1lt(BBQA&kVYWoYj@$Dyysx^qT(~qqs8eiMj&6Mo$4k zY{nJ1Naw<8z}Y+=z(^rb1X>GUtjv%3M_HaMVqkM+rV2s=jzEu z4S9Oc&h5SJ&1u1x&=P_WjfVq)s%X{b9as>eBi|VcrP;tIqWoM+nGd`e5Xj+`cbp`P z>ZH7_OV^fm<%&ODH{;wc41n&S8PFX&@IU!yhJAL2gsO9xD_`bAppHj@(dHn_h*(U_ z@&SlcAP%ze5_u-FF#m0WTTQGd_*KukhhJS>U*uP3xo^k0aKf`VJKo|>csk{jm* zND^VP1Oi0k#G(AIWzS5@AX;&&Gu&iL%Ti0rp-kqO;de(c9V#Saynz}X@2*8L2Jxoh z9~3RC0gy{X&5{z*5P<4-Kt)xE57+33?GcL5M4S!u@^4Y23u7va^xcUe5VOn}?d-BG ztIHJ(c8yO>b?qJ->)J6g(lt0d+|}Hh>W#&^AbOXPx}Yun3K`fdDGE7dd^&g4$v}%a z1KqHqsvYVZqC?)f#l0-KjdVNfen8vQx{2HK;|q9r3cazPsQa*+XE?Vd;Ea2?nG9Zd zX4!l9Dn76Gi}v>Aj*esa+toD*eb^}sfiwJYxqCQNQ6|M3C9qV|eMGlMi_%VxYBm=V zaKEt3xMPybhYHj`vdNg*9IMO__`ksZH8R{W(ASrAx!uXu_V#4Dp&{AW(vl3O^pq$j zp$8c0PJS0vRp~A3VDSq5zZSLrYHOW5Y{TxNG^^y65UwYe{UZifX| zFawqiG?xT7KSLYs338t~%~ovr>-P4O?d_-9+oy3AQJ4HX)BoBqq#p&@cR`Go_b75% zgN3K}eFo%xqvPY-C#I*jcV(NhwYA%aw)OT_Zl_Vz&D?UO_lBN3=M!f#?~{sUj*Y}F zh5LsswblKjUr}=ZXiMEpHkNU*Cc6{&;S^doW14r#YN;^A>Pm%JG!AHVFK40J0*w}E zVa^urrHVlw^=Irx;$EKW>e^P81Wk1n(mov}E5tX!a=byaYwQt2YP_6;j$u{Y2WdLo zR|EG|^F=VMN+d|dy{6^%S{f6;d8UUmt`pf#yQRZtoIG>p*vjGM<;6q0=jOKe%ubH= zt1GK20b9R4#I>j^hkC}wdJe6qEn?YpHO4}(p93X>{mYS;gYT*224g=th7fh{ zA^@^bvUNG{8aJC_fsy0R!vrkNY4TChA<&9E#Ti5Y%Eq1ymA4K!jpRK<~}z zu+5@~La7LQ8Tj3A(9`$}c=COP6&V35g$-?GxF;NZh2*)1N>#B;R7x`#8_x&SmI>yI8ke&oQ? zl52i=a7b?dRFd)TUzWFxOt;Pq7qY7AAD&D7AB@~-` zgH8`h``^z3a@4Q zya-jnu3F*V8L33w66JD_f|5MQT>VsdGEhjhBWMKYycpeSnwj`3+;bajUBx@Slx?ks zRA19k%kA9j`Rv3*PuuwJov+VxFG32xR(W~iZ@vDeushgV{^ABJ zi6A0}Ek`BK)2Gxn*QeZ=27Hp+#ffIz_jdtDg&l!#&F3X{q~8qdNNEg={(~Dn z?DpB{zCoNMB@&s8>`zuy0eV&&axW(86e&<`K?F|lgj6Ty(vYe!ZwdICi1@*aJ5TH} z#0%*7M&i2!FJKBd{G&!PIil6o)QlWDdURyr;K32N$`QECk?ngr_q4Q(jPA^4gCoK3 z+$qNVBJ=p#N-buq&rg&;WKzQlmcf zrUX51c`!Q9^HFbvz?OBGFfjw8@w6f(;>a~*DWE$(lngdVZu2``g2g8Gv~OX%(}if{ zATUw`Rpkkn2e)|N0o>z>>AqdNG7US22A~sVd7z!>asSH0{ptYst7$IbIWXNYFwii4 zz>^St!(qP=CXd+tKjrHZh}2CfvE-kduPAV(xYm)4g-I z4Iqk&9`bT_$lu&t*}xrJSwXl0KRGxy);70i*KmulyxPF63hM&Dy1c&3uP$)k&T$RG z^1|Hk@Z7?(&>$+iYZ&$T#v8sVdt>*!Bz+@1jw73du}D;bb4^z4^?W8*vh92R;4F@A ze!ca?3jAx{MnT`4<-?MDyW&+v!%Bp_l6y$0t>((glqha?A2$xjDvWVSI%nF`(+X%% zJV@uJ3PwJYxddAsY^=52c5`do1d*K&sMR*;w?m}@h570VbgIe#`)W2`a)KH7<2p`5z{PBEFC^PPighG-MibHMurDl7iXU> za?fVDmrYz^akgo2uxWM?YH&Nka?N=HY9+lUdBPuhn<1&AF`_yKpITeKh(f;vxd zDc+`tm1U;RBen@rUWm{VLqh-(ijXp)JMClji@%0~lY-bVAGe%xoyumCeovEBFNMRC z8JsLZm^^Xn)FdLANklS}2agbeZw9AtdVF-WdU7M@D{kiI{3n+K<-R!CBGrSa zlLnDY%8ek-$a4d{z{tyfMdc1xH?1%;;Vbtkrx@5m)%D_QGAzctt?z8MJN8(Y) z(t5o}3}oa@&MGLrm=FA~z~)e=@>^G)8L|ztntiOUG>cj4?9jGtqk!}F4^DNrx3sl2 z*Vfn9Sh1MsiU#dxgTEU5&EW3_J?qWfP|ZvYKRVdnT;sBBS50&K;HVTH8Kd4%5t-Zy zXecu^Y#qq#(eQiitizEKyI95i$Np#y9TYBhj3Heso76}Y2gBW8UO!~qeGh9(IxPM_`aCYCm!95cbgOf8egWbc;!|C*37NseW zDSVH;%>wqk&7s&4ccXA8oO@UVFy)%CT?KnW<-6|}yUd)x{W$>wJPdBMW0d0rLUgYY z{Mm`PLgr%y11fm6zC=RiQJohS8dg`kIsP1Giqwt#m9j)bfDZ4$VHPCPrJl6!#>;*iGGyAmLm~uc|sDBWwP^2V$BQRbI8yCT9&+1WdY7B#{i2|YIWcYXdO$9 z&igG#arfUbFdN?>bK6u~Gs5ohAcXBJVrJPuIakqTZNn9p1;gedd$l<_84uhC7kulH zV~8skcTP|DcTSD%?x{Sss&K0<+-fEFn`7MSG43~uoYGQxY_W6q?#{(yl_-QpCUk(N zilHR~|8I3-VCAVm$&9?SNN}+^Ok1HcmS=9uwa9YToDK|G_re+>-t7KPY8x;de|SYQ>ALi+)^biY@kv`U?IPe3v>i#xd^90 zoZt!ggq;PSfGUDiCJ0^76X**2z1}W(f-ZQ0u3b0-@CfMLRQIBVL%kb!*H%2VdBdOo zT8KW$6XgA2uHT&B*&>Vdack2ELs9$PDvHM$s-jqD^Y;I9&ID&~yoyWqc&X_A$AE_*NzUrKw&rrx3jR%C*cAtaNNys`%CtEb-gY_=2dU1A;Q$+PGW)zck;JvR@2^KT`pw%;&pYv5H_8#U8hc^lhxHn z5v>6GMnt-8d@DvI4PXXUtCkql7DHr~=@Y+-7)`AGp9!2VCbjw!jl(uH7X1o!-O zJnieBLb%tDq-uo&MmKd&rAo~trvk;6H#9jPtm+#K&0fqu(tIOGkI4%`ci?HhY@mSeYX*A|;XJW-~)3hFpPTUYsBjd!^9g#Xiq(d|Hm$Tp&q4ne00A z&8(*Ec;refC+f=W`L+qIEt)IjIH)X<>#K+o>7<2_pkZMvHJ!4f^ zs#}I{_oVFA{ci0?P54-7Y;0=U9tebdvp&T$p&>2PqQM%!7olddEzmN;?WptGF>uwz z%P{*%=nnAnl5BR{xVBdIijkl~g$fuur`s~g zl4W@HNd-McvDB-lyj7MehN|K=IACLYduN`W!JPB3SuB1l<^C?Dn%oP zPuUe~l;mU*vDD3XEIq7eGI=B5MHStlXY-P zQcqSI-64%lO2HvR?gh(Cq73E|T^9kz2XPemiB%giTj5NS893~I%8<#rwSXyZTVXEl z5;D2oMnUMQQ(Dhox^x=#p`*w5?AteVXz%pIz`4~{ZuQ*yx##Czp7X%jw4OVDXky~f z@pG+0e6|w?t$4R_vrAnK3zk?~T;gSzuO^dJFi0r8IK?67F{c1po0iCmIXV>Z+fIp; zB`2FeE|u)Azv9`?gk*8r>mP`OLY-A!KH8q}`@qDJNLPlrvf5~e-ws4^yH_|X9EG$c zm{cJa)QRqZgk*s_VH4n8R34l5+$^dUFh{faNz1{OmLr)A7UV8Wk06+sdQ^z17-Mv% z3K|N39LA;$774?QDs>qRtqkZ`<4tc0C#Ot(nt*NOBoz$@M8H^4)fWb#Jp`jg7&wXu z6hym!3xx~f-VTD_e+<+2moc+;6TBcR+1AYVF*9G*eDPdWWDLQDa4aN+i?Cg zs?1g3xW!z13g9ol+s%RX-}J_=8cuQoJ0>DI$(ykmYVK%Xw6&e+=s1DLuC6l}(jjIj z5Qw;CiRw?_T+}=mK}}S^WvFI4xKo$wI;v_=mTG_ubi09*hr|;VMI?!KZEvbcmf|TS znE>VI>)%9yY(ccxDF)K&;j~ewtsGHAK3h2pUvn2sPOoMA*KSv~_@mLw>WA0QpE`T? zIPw-GF4Vw3fChdyfAZUt-0Dg0+rwN7fAa8wk&y$3Px39IFfNpYchvjY03*YpgK4Aa z&cRZUonyIVex*dwaVOw&$#o_0iu6kILXN2P&}~{h`fXdq(w7d*%_4N34K z%uuW*-5Z5m2k0PC7Epz3vvx4Xf?z?a$lY=u%CcS!r(&6A7`QedWxQRB>#k0y|+tm1px-0GuY* z6v3{@#U;o>ON00C3M{d}bR~|cgs-KGNd!FUZiyubITWZs~NtXG-_bI#W=fX-Kyk?k7 zF5SO>|1JswVKA%sK_E!PHGhFP-#YXq?LT2~w z%)+v}@#2-3lA1`B8c(MJw<%^}<};sy6;4gAcZDr3(lV4}Rh3v7IuQ9uTwrtyYeDVy z?~Nx7Lyb09&_?f!*4)YTQ0_qfU5(LbEJ{W(p_Ckvy{fEu`;77~FJIl+77CPeWjg4G zAUxp#rs`KHQK0j}@qnRH1!IbpSS{b&3}PAk2PF;P9#gAM>Q-;H={*K;+CUipMz5W! z?Ac?%;wm7R!jPjF2ici`gqj0$gY33!3oHO)2%LF)BDIFtXo`ZMKxhZrI>9{D7j;_= z%ZVvR(PMkSzgdNrrc#CIh^N#%hq?YwsC+ateG!K>^(>|p=TfHH(9$j_UA?`7@QWvp zO)e}9Z#%GeX0>6x;d#T029IMDU$lExm38I0@vILo~_#=Y3aHMA>dk8ML8_Sjii zPpNr-O}rTgu=E7NXOi2bsFWGSoXd39n%reLFImf$gW^!+*-pp`fo8Niky{i00%glN zq&6AK;<6VOeUsayMJ?7}bssp(%r(>g#Scy2CG>OwAgl~D+CJ!hCgfNH2m2{-F)k47 zKW}(X8`_RcrW3d!i=tG6*;58#d0_Y^rjeBgK5lJY%47~^GT}f?1>}!N?%EIP7BA9m z(zJ)PWx2oG@Yn_h6q&7RwN$ zSPFgo1t>B+a6JN}#xvK|?7;5E#(mlT$=cd6vEk{nXOE9eRi#`{9zJ@s`r!4q-a2;h z*7d8aPhLFXUp(OY8=gEkc=hVR2TvOM#qBqIknbs3nbJjZ0vU>9a?faaN)ib+Uyuf6 zUpSC+VO^Nd14#-NEANgfwoWqNXCd28gLF%Z2j2Afls3uAd=oG6@)m}pD znedNw=>O#zs^504XHO8+aV&|7U%)6hJIT4w zxmt8;0E~4oUmt+cFTticrTa~%yLQ9rCX29FgcSIX!S)*BeF+u3vz;Ey4QcL-`!(T$ zCyTx~VpO+$z#TSx-5&H{THR1T3xc=*94ci3aVEEW%rlb3>9j$ns31zo4eO*oHjtYt zKA-Q?wzea!tw-D2kG8eFE*gGWhWLt67BFgKm}K^Vi$#c~l1Y$~Nt&7j`8>38z*dVY z0&k&I7I!Q4V9(eUC^w}*%F?J}jp<<83F!B80rJX}*HCU6{N4YBx=W6JnhI1zU7kZnmrpDJ)&`JlZ#zJ;>me@WIeOyYf%aXy+7BE&anuu%y30m2%w#AO$)zQ; zqwsneEC8f;5D`HnMYlTxA$0_WZ%7k?;I4o}Uok|KP)q z-+k|$wad3}pE>^4n{TXtz`gi@TmP7Q@iF)EIJXp>pA$d$_`S8`Z@h7Q?Y)mb5a;HD zOIqd4hH8Q`Z&(->EnQ(`Sew=dOPKpf&Zjy*z#|>NLQLa4V_h7qAuXUNIb$M-pqvAW z!^t9_Zs$ub04fcJ3Il^wA1W;}e9xfwsn}=Oi!Ct8s%ED-GmBGk$n>{sq1p(lJ{~n% zR$1H5H8lo(EnxzlPbwmz=yvww;ZOx0b`ZGnfPvdF8mI!zb2Ums7B^18F%0)Oz2_a^ z1*TDV(3LMUnG??6j*h#SM1vzXJeqFfc!N>`C~7p6h;j|6X>_!)A>1?)q=H%+$^!Tc zRtR4M5Cx{$fWbG>x)wvF*bD*-#&!#?fTV|NBlasfrG!KJ2h8lpbBYj-+7)REypi3$ zt8Zv$ZF6%&M@2=ZMhIWM{^qUomtMPa0J@!{#||&O*va+nY^Vuezjf)#=+e^Yl}op- zhie*k_G!jZ&;gXXYnIED#8D;3wfK}&X!Ds$zIP3H06Ak4^WEU8i|ZWD_xkWUHVSr5 zmop3cPd50ZlHiKWuV$kr^N!*LK*NK;7UVzghT<1cQ;NuDOSxhKtfU}J(v$_xY$LCn zk&Tfy8>=}6W)6ZZu}cD-im>81^9u}9$kP83noC1Ry3!4 zu-&Q$C3eu7VT8-Aw2>|rRxJi1dT=L&-m3;|IHFrP@MuIioem%sd}@NGJQ#LTWlC88 z0H0grGRsHE7hR9DlhLj&G*|+ik!B0T=Mb%EI(PA6Z{>dmKuLDfeCQy9vlb7!NUD?-;Y40a<2 zTf)#%)X$~KhDo5LZh_6vvDJ^V6ZN`Y>z&$@k>%z|w82NZ-0!~k-aGpT*6!ZF|JK_l zUw?h!#%t%#Ja==hHSYP^i?x?)zg_dZe4Cq^bg#XA+u@-72qqslFME#$5yU|&9NiWPQL|IQ z(7b$v4?{l||Dni;8BW5;RWYJKu5m7_mkm*8-(1FCz zS%jgJa8jKnJ`5;wodQrG?2LYhq7!D3!A1zZ$)9eDjcdsY=Z|XsYXcvIdNt}i5#AzU zK)28oLFOodKY@o-yQYRlLE7d?$>3@OTnvN-J|AcpM8NfUqb!J}?*!Fa8^jkZA5Il- zmdm5fgPHXt}21x~jRL|t}EM7buTm5fB02L-6qWkI$U z(?3Lyjhsen@&%EzfWkqDBe#)7532MjN%KHS3)@A}j=Sv`7fkwa(t%_1@tu{B!u5JD zheJ|4>Qgag1)?s;EdwNreqFM}FGrCJQzRY*Z*3Ob$9vdZ!y(l3Z=yOmd?D^vAz2(- z6qK>an@9Fe&5rCD-j!}|FWc7E+^`zs2#hw#fhNEoQzmEk?Aq4Qux;0#*-0hlSAwlR zj8<(7x;Lh}EYPOoT|DCyV{eF}a(J}-8SYAd$7BOrVy8)$U*N*m62D!1iZ)KD*vCN- z*YgCiRHJ5%)Dzjhxfdan#qIqeMjpUllnaGv9f2f3TI7)lSi7@iEzhG%1NwZoCyD*U zHWnz(z_}F!6EX;_V29OMTX_<&PR$p`a%Qkvnq;>jplfQn19kyfmZ4EdzSvKg0-cMu zfZ-@XaC}-aG{u>$I;bB-bbCm6q2BM)bx=fNTcOj}K=pspFZ_SNdtO!0`R<42B(Xa_ zcAd?39~xcQH+$#Z8=bwGj*hyXW#8@OuM~ace=6n-Puw3 z+^z>fkb}b1zM9oKD_1Bu<`)u6$gpd>@WIH3bDo(>R?LYr z)de!_cp2G()PtfW!BAMF#`?GEVv_6_4|EeK(x`Q;kZsih^Y>|WndIj z>$y%MLK(vBXfl}{QFVCb3DCU;FtUQ$qTNSyjA2gzZ#%C0hIPdo{d3FIWySOZ%3vFw zkR(=xtZV?>_?RUy;^6z##jqJvpux7BNa?72iMoVwQ841kUReU4k6eKaxD20R#L>Hb z7H|7N*&%4?4w8HnExg9-fulw!n2g6`I&Y;a;RS*j2s?y9j3Q8Xt^;RTp7M-D+=S$% zNf}Z%q_aysIO3JM3!V>uTUbc-barO8_Yd#dwdd-E*Iqkwe*g0F#K_Tu3#+JJ@vE5^ z8U95-_u?w|;ym|ag!88|{a4SAEG&$izuKQk`Q`Xw0(h0K`j){oEq`uc0AC$f448@7 zgMknSAr10+BuF{vP!50si=Hcc%!?V`pqnNTntcgB{-tn*Ecn1uh61JN2K84E_y`mnRXrg# zR%l{cv%xhk%K;3^qb`CPNCfkiIK>uCcMt~H@zdq-)1#<7Q9kQL*KcMAQ5qi-JEvP4 zYe(MMlk&RO))o;{zy0Pdgw<~xnnzr{I>N2qe{rAh9JzmM{>+*ATlYsg#lDMO0|Svh zoK{+q!ph|f(QKjeF%y-dVRoGdwr<5!6s7@UED(Hjh@pe17+tiSEQu|KQY_Lc);3D6 zE7YLjtXXoDUuzs?s-uw2#%hm<&voQ&kvuta{_#y{Zr2fApv-)@U~Zs&(=5 zF|RU}s57oH0FRl?+Oe3O$9c&D=7ysv8Zwlk&18YYPM4&5U)yzW*s_ zhQLFKU7!kvSZxJK!x-U;ZTb;j`n&WPXOsyG#K8`guX67c$N#cWJL7!4IC zshVqx;-imH;M=pZ0YLN!cmsVTq~qq>0tlVrq7QF6sCfs_fk-N*kqB!*YIyr4sLaMR zPwN6g@}MrpHQxgCYz0j0>Qz-?P-();izX4csNRU;18@dnOmZr3-l3zp8|2`acmy*q zc%elbjI87dRF4>8y+Yz${tI;H32k1eXJvQotgFj5HAMi#>eeEFnO~hi+u_RjOAF9l z+;jZM!PUrmJs1TCj z>Uo&oP&MCZ(IRvLu%>F>nlP3go!23Jo6>zI12{3WF9 z{T?{kU(a@Z-1Ow$%`>kxojnt2vdq(Xj-0OZryXChhG-RRB;3FcklPY(5mXQhPYZLC1j|jMm(aaM)hZvO zN!?wgE5;0U@mH0&35wRbP_t%^qUZsBDf^os>6|Q+f~hbVXgpGG_R=(Tbl4HcCV0bJ z(}VR}QoOqF5qM;r`C_U&=aMFrFFfkzV0)FobvXJK#l%v|6Cz(X4 zmpqYUK-}c(*kJF(k+ba4H3or<&!8_AEcRoO91HlC?{hUu3gr8IlUYqfL`hvoyTWEYa^`+k|l5Rh6x`x($Uj~_`h58_rdA#6VrBNEJxL}IFJ2^wma za0nGH@aefZ_0VbU7=rU)LKZd2V}*i}q+iDbQ60ehZi8mwxDr`RHA6YLWg{h1wc513KRaG_K zTi@DRUI8(6Ga|U&UR}Ml?+y^LSFSCCjCl6ksS~R%ZuQRko#%I6-0`eldvT3_G0XK< zxb9q=J#k|8+8tL#uQYgOWROy}LIlW~%q2;-Q%Q3kOMXo8AZ-pD`+WHfMec$(zyL2L zR?ciZs2>=UH7;Ns4TN-|JPewUB>4gPk{GaZtEN^h_Rgjl@Hl3eu)IB(V;w+B9yaYB z&TMe=P1|^P$D5qDfeVRE2;@*6TMqR_P_u^NQ`$Nj8lg|)RDR*c8t}8b z*eX-17tDZPlth1r4Wwu|{g5pMQ8YG-jyj}0tYJpgrzH|GaAy(@8o4@j4};*k;x%wm zdZPj&ee|lX#o~S`9z$v=cz`meBad4HWmW01rNa z;h&w7b|~yPc8clY7AO*POnk}N$2#N!G5B_5;ZBC_l*Z{zVW}2C0=nv-HU_o0m&cG zdI+aPziRU}g~R_{AtCn4ro-Ru31S+`Eqgt|xCDhKbdo(rkjgg=F!Y>po{ys2O)pz; z<~$b_OaUz~OhhZSB!+41b7Mq7;-J8Ucnw#C>5Lmb>bBId-!P2qkjC+_dstU=(&=$~ z$0i|cYf7aCVmOXryLecz0A%vSP;nCy3e|K}LkPFr7E z0O_bK`t%D->$p4~KaOHa6MA=XqLIVYAApCsRmIdF)|Bc#PR{W6;7BmR6i3V+otTL! zRt4^4cT`2XJG??!WkVNW%NH)3Tmma4Fv0mjieI1Me!a{^I)utD>&!BZQ7oUax+;Z^ zh$@Y@)y6_@Ml4jC0n+MW`L?ta`4pn0ZdVKou__ybK-TciqaU1?i0B^`d8bTQG$U-C z;9=O5@)k+N|HK&)h?rnB!f1@Nb4D27=pk9J53k@!m>ttdq@0s6y~KPtHQLC+PXdNQ zDiM?pph#8-`9{Yehpmd?Jzl6A^OKYOxDGyQ!QK%EdJNwm4~+!yOxTIVR1Z&1E@GqT zpuW*C%1qJ`i1y=+np7R7r2<}(YIMXcN9suVN;>sMj-q};b-EvC4`z3rKDoSYXz9R# ziThug+bplfos)-^U(rx8GiE|6Tz^mFU|&--8YyVu8_kG&jo&$M#ut}8z5-1(ulX6+WKUF|0C zEHOlivzjpIY~@&umU0A22AoZR44<9CFl&+H8?yb9lX0@3pr@9y!v~y6e8FCkp@(K^ z*;b+UFss-Y&)2?gYg-1-a$B2ibPE=2bx*x!?QGDzBM>I;DI101=L|ZJd+-4HA=?;G z&8D2qw zXn6#9Z814-MIr(af_@7sBj~nvqZnv%&|>rQe#4JEQ3~6TQL=rfL}YPc*k1DDDr5U1 z?%jQuF?3?Lr^w=M|(Vdi*xr zAo6h0oI@yIgHLG6)c7?osHK%O0`7*IMJo)b}KF39$*3=@XB?Z3V69qIhTxyMU(;D^AsFV)>UDl7y$B5@T@2nrtjPeOt@H6 zb5x6=k*3JrRvqeDk{-SlOKDO(tOGQGF^+s2PS*)A%0fFGlfC~3IGLP^Pd)ez`p|Wm zD`apF!GqXS6){qi{T(em_Zw{A!-sD#tRj}beskru*ADK#bnf)(D);S8F4ePobN}hn z`){uHq{R9QquKh69(PM?oh#MTcF2``!a-3&tS(|ju#6?;9?H^am07r-&O2g?*YM+f zEr?t--q}v^AAUtC_;4$`vBkRov24}`O+FTv%w&L%Bn6ylCiJVieIW{}MiI7|(X$|^ zL|>g3;{&n@@=6{66DV>hlcTbt)@VUV)+!IPm~0OU_RMfNi>?tzuB{ph&=Lhpe^#(D zB1$>yDo^glzSe= zQy3L5vmmcPbKF>L6aqoMh`N0qC$2FT{r?OL;6`t}f}tr&&p)Q!xY*pGa@Tn6s9N^k z(+?^?T6=u|;hC#fkKVp=>HO+rZuKD-JLDQId-~Dihquq4zy0v>M^DQ}U58>?^7ZXD zL0w)AvWhmoB(P$~p1Ek4WNDDc!jbvS=WaCJjRj=(I=|LocB~7f+We&m=5evJH6U-0 zv*NkXERQRG)s5%DGSa44y|ZjL2ue9K0mcyMfnk)bjPveYOi3~{MlGJ!tbPQLyCYd@*_(0X^XY`)aj4~E0@ zcEZ~fL^D=62w)s3*vUz~+C`;s>>H=x8%v&oTj+4gI#p;c2pdh*Vl z;rlBq!xvXqhe0_z49(SH(9I5m7j?LA*PhI-si|R*q7K{}zPG^v&;oDKuqphEL1|$3 z*(6WSVq?KkZB5fc*Rmv^k>lk|g5(VK04lN7QLe?Y&&AoBSCoZ#xp|?jHrNTwe(h4TW+_xru>|J0CDY|vLZ5x<^{ZEx zpuD?u=KT4kxx;%7@7S?)Xkq{UwxzZWi~f7oyktK(l^mRX!m^>YE_FKw;MGu^Egu;P za_Qt0!l=b#q9~1hkk72XBQD&+zK>nhIRl@ZaaJ}y0UG8_q9-%nVjt6{X;pG%ajl(8 z)&M!E#4BVr%q4?`jQAfWs6@+RcJK`8GUh75qqu^{Oy*6L=m}Hk_5^|w0bmCVgzaJj zz~jJ# zgujHu_HJ&y{&_vW{_y$3mk-^~9&#`5a0Ao3>mS}(Jb!-i&cpiM(*yG0>;0R`t*@lZ z#V|b|%)yJ3D|a$5gzdFhv7iHOgSBQ|8(Ko=gd@mfHlCI=XT1TZs7)6(MBXKA;#@4Q z`F9$EO(y+K(J&L$m~ajwej@goN>#xqR;6#i)Wix1X!B)0PE}CCLt4!NhUPEl%r^-t z^@eOc={7pv#HY>r?-Q&)2mC4{EPY4w?jZ!6DSr;&BaVDa%dz(Mi|Fq2)c~+Uw$|e& zC0tw8v~u_crJI+)*@gl37+6YG!xJUgj;ErIq}oJ3q~4I&+4zVA@bOMOWJys!jm4uD z3(aOYbRRejFkOm`K^ufBbHrZ#cR1ZN8NDBfsQldDa<&6zIT+>ChmRgVxpQyz!TIag zk1SlfeCgYJ+_w+7fvEcE$-M^)mo6^?oaS;e^kAtkmqF~(_FF4WOzNTRg4-o)lOF(5Hh+ZH# z++F^tw~*TWzmKm`EanqbSiEovqx4KzRKEqFBQ!mokXK#GG-6(J>* zkxiN_(R`-r*BE=PGus7yN91obHBt_2)EMwJhYPFy%yl8#(X)6sv3F{0*E6L&k+_zv z8LX+VzlL$oYmc8ixwiV?!8HtgUb}c><;IaC*WSGP`s=}K-;XA~P<+q(?0>Q%MrRpE z7iJrK0Tr|S$!9q{t$z>FG&18ve8rxSVei3%vpLdEvY$8Un^wOT7rj!69|Uy5BkK`A zu&*eXNl4i31RvK0MP9^9V5}$$kW{GKqvItr#77|NHDCp)Qg1{#3#5~pX$8SftX23q zZ;f|9)zg5YB0>umx4#2z3x`{7Bi41sN5E7fmxJn=A`NSDO?!RBUEToDv#ALt(CHwu zN0naHcB*o!zC6rV*8`reM+{5TtSSxK$^f|nZ6!mb&m)(G?$)9pA2w8y(*b0Xb_;5$ zV5Q^YdC(-A_xxLA^8cetU>Z6Fw1w+mx^886?5wTL_Wtty_kaG0>~h_|OY=jo0dTRn zvNAJv;^?9EyU*|P&#rUNZgIVz+`WG5%B8VGhsG{lxpn>SC%wwHW1lr|dnJzF0J+H9 z0mlI_dywnaBXYwLcMLCF^BOzk-5cl^w`#6!asFXP z@-_v(YpY%madFbtWB*2N`fH3?8d_BJRAb~4jq*fL5hLMff{O=$M+Cmu^7sX=jEeRW zM3KO-j=jUD+|eW-_4BCWD79R34v?io3?@HSMj<|UPteCJP4A8y0_J!blE>1aZH*uv z?4^nuI6BP}u)OgyzQRjTpAO!4Owj}w2iPz}kWc}_EQ4r*twcqC0NR{J!k9#l-}FQR z0>v6UZw1V9#jVF-{6u9rR;x{~?b^IF;EpA6uV8(Tp&69uP`V6Y-?`0>pH-c(xaL3vC z`BO_HoTt+D!_Pkd@}p0lK6`6z?aGCRt8YIKalhNar99m4JX~nUlE?Mgm!CYl@b=pm zo_+G=XD-juj*w=)b7Z2w4Jio44kgW9R^Z)0;hf)frRgNz15e}xhs@j*saI*GX=CLB ze+o0PHS*R7CWmbZss`fHBD^Dy6eHuc@wXM6lla{LlTDFF_uwGs-ldv#=miG-I&yK@ zV|mfc;W=v?WA5NVh(dUMqZ$dl?FP8I9@?9RHi_a6m7lC;bc@l?uY$u5MOB(N9>O#u z%oE2#k$g3Yf>Po?HcFboV4MyFVi-a9lHxTju~-93LHs(z67xM` zn%Z#o4|N5)5t*FKu@TVjL7gF$^co&(@5Ish`4b;~^25)bK70J+%AGr_XV-4uxb`y1 zy)*z$wI)t{^4YT|YuB!=J$d%oCnqK>BdN9Anr^{%*}PYB&466+S==nnGwhNrG7Gi? z;HyfE2a?P}j!2b-9_%3$AXqd*-xFw*wR2c>DwWKtvu(seT8G_bE60U*ZZ0%t5N2Yi z5k3o&a8-uvui?Pb`{7oWhya%D?UB zbRMv4Ou5Y&+J2&$)g>4u=DAR+9-oAc8%=4x zgy0CiL;$Mc)R0H2S;R}OAfRHAE`Z8?bkAK8_!UEjEViTTNi*6!|(frf?y z6MdC2tL5jv{N*=-%e8)ecBCeteDjm9zyAEowU0i!dG*BBooOs7EC;6dwD0Fqf02R$n>04hR#=!n!^Fo_ig_~+u_y=DJfd0yBH8fUt4V-es z$=!OR$s~Jud6F1n3_&%G<`&a8Rb%+hV{dI^4T(m*qAT!k!81VhY%64$2x0;6X-l{{ zj0@0|7aH`kT-JttHi@PJUStYXZ0w7KGUjA2X7|*emQ3!g+R$#sUpOrH6lU^X1Lo-gLjb%)LCr z4K?rf+`N3|z=1QDZ+dn&56RmP4R0h#aXQOIKjp+pxkvWpNXL<4mfYTx&u=7i{d!$9+o|P+Ql@0wePhP(n7TQJi4)FzgH02?@q|+}Dvvmrbjpb-1OjG-RXH(D zM6=kiJMHZ%XQQ@-Upp8A-~f<GYKTTeXvdLu7G808cp7}ZGLT;YGj9kf zFVM@P)eNCM+kRpw92^hy$tg*)(Dek{STyRD!fY0SlH+o0Rro3qjI!`QENi0r7dWe+ z8&~EUK>oC6!+gS%?9S=2j@CigoQ{jt0}b2z8d_Q|8j6xkUc|(Mpz9Yspd!2Y&f3~V z%mQCTU-aUew{BfL`TC*P=jShCc;U>*#gXq(3(MzHtPbjYL;1AxEuK*)4C_a0NNdf$ zZuDGXXSJP2ic&V19M%BK$2ME^znq%M7CU590?t3L=&2z-LVJ zcGc*B%3RrivpOmD~ zH@)}>nfNFJ|CERdW&*J>VprNfItriA#RMOUn?&lwaJa=IqCM)fA+8BpXw!HS!R%Qm zL_}o*WYCeZX+8s#D3VDzvttoRcZ9MfX9vszn{Y8VJ^GdFk6ib%+m9_|=e`0YXf2^N zH?N&Nb!u%^$Y$4I#nwh$uC*_}`fBa#Kl-CJjFPTlq;&1=$Cn>}^wHX*2dk_0n*BZ2 zJYVy6RymJmqrfD$+O*Pe*eo^5#hhXM_jFZZY(L-qV3wc?8MEVPaHMk?4IvwA0e3>+ z!t6nbw+WM>NE4F-CFQsP<@F6Hlr3D#79q+TGcz-7$Z=*MA%J@u1qM+PI>ClvKwt_j z5yR_6X)R%R40%X17Xdq!Xd)A6QqI6E5_;kThXSOz1RQfX$(M;b91V6vmE=`=fqCZv zCKWNFlH*hY!OIkYD@cOCF%Ib~fL9zw*Vj=-HHu{#&OK=u6i(*_ltHKj?j&eW&-%z?;`Q zqb-4^Xk8!}jUM(6r;@2a;PCcr_Hf_8z+tUMuquV#-os#GI*gf!!>7-kI}Co`!}H6N z%e!|UK6-F*F?N^;?kPYRW4s9j2$?`av&4Dgr-K@_ zVzeZJ4^(tSbq=I2tg62hPl8H2XlhR975E;?y8W1h#nz$71g6YkAB}^t0%KO9Qjdr_ z!*^pldn^lHin=ua5&8CC0$=YSsCHt~{SDWRTt)W>uFqX>X9tG*8Y@1JKQ+6;55{I^ zyBizNwsm!#{o&`IpMCc9=~?mX5!qEINH3MkAo zK#(8?LI6pS04ES23Cj;-CptQPSWpR-ag;Gw@?5{nNAE5Gf))kJKq`h*=HY8BT)g{zg1yE zxkxd`RaZlT1ZlLSRSR8;zH&D&$oOq9*w#L;%-M)Qx_B<5lYR~Up zy=i{+o;~Lg+s-4lorhGyc}OLkf9CY{(}xb7zxdR-bFJrFAHZ~2{p5NnH=%JH5)^Lj ztfrTRI0UgW;LoC385~5kBS4siLpSMhrDB z5#Rb-R{8=Rs+pDzH3Pq(K-w|STC?JmY8pweV`UE5Ylmhfdf`jBSFb|l< zM+8me$njtr;yR+&C!=o4DS8jgxvsYgE^rx@9_Qo4mp1$_j zwd2RHTz&T9#qlfS4`MUqXY9(`u@n~1oV=*FjK2}TgBc3D_%vfvMr_FYP}+p|WHm*~ ze3@fm`H&0X5pVgyYGP@#inI;TAgo<8!QppK;FN*ZfwRWu|6QoLPl04tnR8#DN+ zHL7gyE_Zb{Y)^#N(Sj%H=@~)Qi}oRmhU1mE;3FOw#Ff2--(W=x_K9L8m)@%D7A0xb zJRe<-DKUSGpkk>IYJR>orl_<+7aB~m+*9utR6p3@eBhfoflr1tnFP!%*=X;Jo>pnZ6a}QOR;z^o6n!S z_K8oNgO@pX`Rdhk@HppAKDFh2ucF3xvaW4s51t)5`6co~cILK+5 zf!WMDZZnT|VML5zeI=*CjSRQ+DypKPc#?8)&07!t2j31y&ta|?WMZx{3c@dD{KTLT zXcqNVT_fmTO>%w=a|8Sb9bsK3OzpO6ZC@{$TF@uoYG{Cy-(8QFy;$ZA4k`3o{Bg{C z#M9VM>R$=cej1Hw#Ru6H2e z{Pl-7@7p{(dwp!`@YJSF*J-Wk_1wtFbxW47V`k*~XFmV=>z{i4_3M}%x&F)xFQ0wk z)T!&39l5MshrC_IDCvE&Vb>_^^4iXr-5;fX0kxf$0J*HtvfYIpq{y)_;t^~EfQuWV zScJk@2m%?)lim9Jp5PyIT4fI6eYyq(JpPi}yBnIZ*iK=kaNNWnQpI@054w=Hhv!=b zowp+KlIqPTQ+aPTp<;D{Plir0ufmX8Kt)S}PShc)RdGpgjf+}ygJK?qoh;|@rlv~P zye7XLm6bs)1d(pz;}4znaeG!RyBIYA3uEf{I0HL%i2dDJ8=xOhxc9!T)RBJYxLN$(Ou)0 zuLWLvPfGP}hbYM6hC=0N0VTmUJiG|VV_&B4z@lug!<-5kjy+daC@zjaHI%5Z5N5x% zlNsiadSgZS7nb)_L@1Un7m?BscjjLC4B3vG(2%PkwmQ8hhlRfg18;7j)$JOvlRLA0 z;=*5XS~|eTVPGJZBp~M_V1OJw?-a(<0yJ#GX45;^N0jS;=z_Vn5opY83Dfchu%l%o z=ZovZTn-FnQl;^6IX`}JNH*%LKz^jgb~V=;$4d`WE*KECR!v!s>?jC?8ZtA>6|5mt z4gAiGY%Ehn#L0_ch{R!PNR#m1iXe-Z)ogmTgoK^qmN4g&(4_<~HU#|wOf&h>7t5tm zxpcaOL3mml0^()XmyGVf8j^s(2Q&#I5wZzUTj<$yCRX4bw;@@M!Dw+XiWPCFX=Mh7h4cg(d}sx4a$n$g%Zy z(#&!sOiXLry-~O<+aSWFYdA&NkjuD&2fLpYF7aS!YUyCZqNxQ%8jb7MrKl`O&#(GAPjzqNVQbJt&b z{>4im=n<3tESU6|j?WtWs_QRadFJfH51)PJ%8S=m@dkDe9sRI|)?Y3$kP0VNHV@ZR zk8Y_V(Z#%Y8BjVom|uf^=2QiFbhHAh2?5Hj>Kw zDYPj-(PP5hm7-@yO*l6I2a3sIoh_5Xg2r~nk3H8uZ`g~%YY0674kAl{h%uf^sC5#0 z-hLEisUZ4DQXI|+sTge`kAc_~t#wmH5*PZS7}z5n@1Y%;QQ z^5=&}`oZTt)w`m8bo5kVa`oy{XlI<-l1`u6uzB+-BNRGSGd+C@iTNoc<)@yyaN*R& zXP-TF`0?G3Z`*bXq4QYlsRw}p+|;Y`y`6@!w=ND~`>M)}+zFxOFU1xtw3o(#oC1(} ztBPW9!D-#)rQitNU`N>*jD2aI)s@DA=` zv0=s#f~H^`1{Xx*ibY=%R2^TyO6i~r51@>d`D$!^MR^#B)EoX_E`yF6>MkFK%@CLR znS1JwS3#I90aiaz!^wIu)hQWXl@WayT8&QEzy2K}*H6&*TF@n4sPBPO*CyKK7P-Fu z>fW8w&aSSjM{>EVbNzez=jX2iiM~3^Enj}sI&k3X>d`6B5EAvPsPeC(>c5JL|0*i~ zs~4U>{rrg&SFc~WbgA*`18p*6ZpkV3%Sbl9=-P|(A>O%|QOvd#oS+-%+^mYh0=7Zm zXOJe@2^NAM>O5BPu@rp?W>kJS%C@Mz#^^(M-|dDuz(@D;XpRB7UX1drk!*_75;@TK zpydEDT4crH6yM}cCb^W{kL;ZZs-`H5N1DRnbgBVuXOT)t2rHZ>CwP5xN=);k~SI-F^BYkLNV1{?n-VPs7QahO;?+{M`O?&pdPb>|-ZSrcb9A6?Y3p;Tnhg zezCnQwH?>Tl!G0(8L%F^Pg-dxi{e>1zS-4(C2I`srUD(H1j}xt*~t(-t#mVmg^ZlC zao1Y9nuZ~qh4qis22>YSV=$(e9Vo$6oO3g6^eK5&FFOey||7Ov(pkf8zx z8N5!k!*p%~=7tzCl{Md~wqGv?Wz4Lgm(kh^VRbB96eE7chmLG4phcle7v2~Jj)1|@ zrep$Q>w>>a5|XV7|4hC@{*YE9`V?~}D~T!olS zxZO&G61BaF3_#f^_Q(Q945@aILW-kMTa04V2}l$AGF$^zSarfV32_q>N--!4{tOkr z%hm{aVr(jP0<+50*|2vS5lVe)XwCGRl>n6Xu3ULxY|owxoxQymklbtS?H7>1g-u`y z7wXeBqNm31zkt|v0deaBuz?Fe2`-$ubny74=bpRp%+pUiF@Irxk?W~&Fs{#`_bj7c z^Z_N=70@;7nK}N4LQ5r!V}Z$0X=}*B?SRBw6iRmIGdI>P=z1y`H<95Gu}cND zT2%cRggbBnET4(6Bp@%wPBKYNVdWCk2r&_B$fDPv?pUj7J{nI5LflYQh*m)qhmsx@ z)OhIbz?g`8N_|urDy096tOv`#(GTlJteP)x!uqu5GoJ5yULAVq%Wtn%2j=_2?emSF z{^p18zhBxkH$68$UqUCf1S2WINJ_DAn095AFf>u}`2D5h=k}btbg5KbTU(-VrI$cj zUce%mS=>KlxmMy>7IRFFb0T{o|ANDZZ$kBxuW9kx)fQPt6#m9`Kje#mEg}7}_3xNL zRD6NOHu5gL6xnPm!{e3#B+|0GiyTH)@^KK-f&r4>i#lNv4@;$*&|COSqo`p~)+m(0 zP)U1HpK+vIxJFTBZ!?0KY&@i6pMweY63o*>L`3Qoy*f0jk^%K-a6S1w}l=^W7GSRBAW@*Yc=Ud1)8-6$vP89f)oM5 zO_W5?-mpQokOU{Y3ahlSth8FxYpSy##e(AG*O_FF2^nN2l-aD*RtRM_dUa%EAfkXi zX>m2^$H*qMA1F&htrkLFPRx4JC+`CfZF-Sc`z-bOH>|z6zGL9#X!6$Hy%%P0-n`J* z-O+JD1Quo`lXtnYOJ@$AIewgZvRxN;Ra)i8I5OK{UFYQ(B-x_S)qT%(5@Cu~f;Ai5{?FDb5mFfXtkn8D-l}*hM5Q`>y*;^WGzFq6^b~O;6-; zxcjhy0I~=xRBK$4!U;n(J1}gAb@OmVAzvhnWu=st>F@u7v7DCMwDgB}3 zA4ha96nF%3s|NR|TJ?2SzHK0UiRdHT2Dg3#J^*Ev%KB}}cdA`5U=T>9!CHj;U$`{4FMqGl{gBl@tAYy=@6hI=aT3*3KZ4j7NB1sE{J%EN5RR}^R z=EFo3ds8v;MUxxY>Q2s0m%{>7*X@qmp-2R_L)zH?9nmr4AmW5ap7ng*^Oolw&%2)Y zJ?{+d-g)4_-lKDKhvp}zrymK;t^zJT_4xSco%i4W(o>mt-+t$v+i$&ajj0?szDxj!Jo-53XS(fwGPRPi{2qbqM8GXDk915@Iq*&x|U|qne z@B=O_E{fcVzP^+s>EH+CDHjtW?Me_9h;RMk1|A;zu1@a^z(j1325AHk4CPluA3<(R zW8%8kTb<$R!oF0Ri#6!zqRHs!nOG2qgel#?HIJs$G`*rTObdlN^QyTYCcKO#{wZn% zj)>X}3=yk984V5q0=J&{l9%=1dfFLj`ozy-v!F|YdyE4LMcff|STJr3k3|D!KB)Q4 z2>!U_3r2Yh`hV%50Zy(7rOyCVAmJUcS1_*oqFW<)Nrmtduf}9t5=8;AD^U+5g+RC% zLiRrx(}Ze8vFUJgueaBAcFruT zt)1!V@1H4kch5Y2{nYhWU!C#h^D`HpetPEEi4!xBgqndM)C@FaXV%Y+&8=KHGrM`i zhWeTM2XJLe0;~Hey=Qqp3!W6J?$ym>ZQwj>yYzI!KAc>PN<8{v*-L#4#2G73|beO+_^!Q;=2C_;GEIrez}73*v79^Uc3ZLF%PG znQFiizA6k3f!@aU5n@1D32SAo$W`!SI_Ta+Si+zzDps_Qyt3jAFUJH6um#X^&=}+k2t0TKgY z39s#wjqRF}jDl+0yliEyP-^4a^KzlsmZg1o@9Wlf(NMK|P14h`f)c2~atDyLjevE8 zsT{0hyIsI4sKrk|gMnwt<~89~Ybz1>@wTJmlz;?{M{qI$Dws&uLC*H#e;}+1UW7AC zmeK$t*FvR8iST~N-~<6#n^*?}q@ECN5Ora=h8Oz8XzE!>FF0~CB#PgPV(oM!YGNjm zCWoBphp~A#`gt(l9)arU&lsNR^7v^JcsCS_R(OV;y^EC-(cc)_x~^1Mxoz9j)S2pm zf%^J0oxRI?v)MB<8wWSe&7IkTC2VJUS~@z;FrNPz&KO1k?I!@yC0_wrzFa}OPsm2k@1`xUQeo0v$Q{w}%Q}NaKbeX`Y z-f=a)Jf33(;yU~W&BkKv2(lTlsP&jD(S!vr)!BK1@&D;fm0CwacYdUYybno!tPP%q z4+NX>RY)@6B|({gDN+YvT+QFAU}N73=gSvT)!?Q?z-?fZC7VnjVdo;j3=9s3hcS>l z{T%qE2AkOi)sxpfx17ugx@SjsKZ=R?D-Rzza%E%xRR4+w7+)9sa47}HI=vY3)`{}RwK2G=IY?~unSZ?cB?MX$R)WFa|PDC!ExvXT09 zQ%dCg9Eb)HLZt5bLnLO5C}zK{NQ?dr`sk1w^K#~OHTW(EUj9i1MY)zWnIN?vJvL4c zdqWC{16W96R*ADRwmWI{N)!^rVH&u%@NHJ#sb;WBJPge=tTy4RB)z*;wO&Omk|3(% zsNOq30#1*5Hnn8*$FV#evN;$@L-dmPFghV<-2wo|s2cDK z=qF(f4cJpUST1lr;Rqi91qG@cruzdDe-^{_{#ZOFVc&ugrcCHtSjdYM+;SNyFd}HC z3qpd;nAx^O6O8tb8Xx1_cA)D!4_1IZ3t&$%elWDjk;A7f%8w|0 zhgAN(5YPg`=8`~0zq;@@IUVVWzlP$fOTvS#JAc`YxGJJ`0$D7}C*X7%Ad*pMN_sJ< z7}FYuE3bP4@DDZ8CYDXh0Wa1n`;lU-b47cg*oeJnw=2-8J&@uB_a7Zq>^U?fy`JC) zdNpNZEjW0R57XMdD9VpiYCBlA2$)dEmCdANBqRfHI#hf{?BDFG1_!tDdiWK0h>>4L^SF+$}4YyA?OhTl4Eqp1g(WwOeaC1_o~B zi^W^#+uLs;vPsgd;isRz^}*M_e(Sxje)ZO`ed$ZLe*Mm!Td#iZ`sbc~_SR?Lck4SAP9J`WFwWQ`uG9P%K2@G(uj%2v%X!xsokIxz_9{k*TL3862I z<{qb2S*@aqUDINdq!kotNAHC0g>X9fL!8x)q#B#`BmvYr@D#wv4OnQH`0KD9#gvhC zgIy_G1P%mcJ}>FZ&|bEBH8v)<4zkTyHSAa_W%EED{Iaotqjq;+3?Ns7v4DxrZ_nkH z1xw)CY5sZ`nRXZmmkO8XOKVyWc)$?=XKGFnWZj>TX#G6J%MKAD;*@ayWJe&oRH?BJgL`v-sLx4!e8LF~{R{OZ@gJ~*{w#~^TtLB!WV z$%vNPqP4YyUwZf5K?K{uKsN`RMid9Hed_$DKKt3h@quA~->}Cs`07ia_{5RHBa1AR zVkz02>+IamnXS^-mwv(hhW$&f9Rt7zIsv<3DH9MU0T#6YEiBj`rU>8-k*YA8!yA_f zyg2ACF?FIL$J|#cO7V-GRbCeeA*8lEx`6))w}>Ev=JCTHgVWkK#s=c@#D)iB)rD>W zr@V_rxUJrB)@uf~aoD~|nVJs`9jpLL1AvW4&0LLa`5`K<7+x5D9vvrW&IHgV-VgH! zX%FVV(tgP(;F)r1BLh^PLAc?oSWX7G9%K|RoGE^NK-CI4w4CAKq#CX%hL=vt-Fo{Z z719RKK8az`0XD_TdavRS#zzB!7fZ)5hR!W}pXp!Gn_xo_YuSSkBmm$KdLf4uuM!_s zk~(Y_1LG;uN5Mw20G6yEPZX6qvBnT_aav9EJUcN~YMR)}9fzUwe!~h#XqUp~jhQMa zaN%0$GFX8yJAuZ2zzUSAA(4{7E3pE%n7$Os5cEy82w47JFvdt{S9CfI|AI*^+0oML z#f+AVzkSW~o1VY$e0FGUsPng)=YRY{>fE^*lyJ3qqg zyFAN9ao#nHVj;#yFvi8K&>=IUT?cY>Z;_lZy)JlH0b}T7UQT69AG(>P?Qofoj^H8` z=s{eQcF_(;f5)-!dv+pVv>$8XJ@D@I*TT8O?=Q7*;fxmmFwhI%89kCuA=+ZMH}s#P z5co0cB4MoyxYr1HtwiV2{c1{e9Xv~%UWFqt$BD)DT@gZymXMIclU@IS|C9w86X5^LN>Y-EItvI zfm5&G9-*DqBYl7#F5J1KzURjZ4%L(a(;2%U0;L7ESpn{Ybh;*)Z1j`tZ$MBx`AESl zVy6#iud1c`QNjC>G8o7h(%^ps0>HWsFUTNf9Y|u3Ti^n@uri#;oZjEb{Ol zS6Dgj`~E*tz8G{X@ZZvVz>*I#t_2$tD(*>?jSrQbxoy;RNoW=yR|1CXUIvCfJ2)bl zYDHcf?nKw5*cpz(ndi~M!|zw5C-nuw&2ZfS?DS+?9jDhf`l0a=;;{^Ns6>dO)_}fR58A)IIZ5l4>M?Q9mbZnec}d|Nn;33!s1?To!b||N)m80E9Yu25UCOMmXO3)333#o5aB(xcLS&n z2-|UQw2TmH2|;hh-v*Ml;scSbV^|eTUJjThdJVWrCo1Osq4aR{#Ex|n zgJWYW`X?r?ffaczTw8k$`QkMUR9*u%eyycYxQ2=UYnc4M29)s{P{wN)KXK+0Cr@5` z{<&wL9l7=(2vFJPT;kod-JHcS(*ikQm$2l%?~9|)L3<7Kh@b|s6`VF1f}sM~hkX*E%vgp%%OwjiEhrq>TDt2AAG(N% z?RC&Yha{$eZFdgl*w%I=li{iuH$bgMnymOTnP#yBTCn2Jq9Gip&tw|;Mo1DUeo!d| zKR|$9Y&*rioyK4aBm=0M;SKUwxrid%1hQu59k3aP0jIewx6qfOFj=qLaK|s1!S^$ zLXs*X{DQwL#t7(UCB4lUu;(kCDxWn>3x_hbiZ7ptUsVt+g89OM+G&HN z)n?&)C1BlaE0P9D1Mx2*i@5;+S{m>$09ZZ1)S?)zQlv@Ac$oy6c&!EMvQTFdF!+L2 zA%HLF1k$K4FYC*7jh4TIoPZSo$e6=OVbFciied)EpMmT}1D_M~T-|gHpe_%c9ZIZ4 zUfM>~b6-4yoU+&~U-13AQv zmv23H>+QF1+z(4e&CSUP#e|{k;&j3kLBsAxvTMa+JOU@dAh}ee=tz^+ipo zJ95@|7?!La*{_PNdgxoQ)2V>yMOoM=`W}ZW6zVGEqKoD&NcM6geE)b?*TWqh53{$A zVK1p4fJqh;KP4m^$Vc%9%^*J(sX+-OpeO^fznRhy_6N)fEJ*>n3&w@gFO2}U#Sm?> z9-2UYl#EbL#T*-~4iBIO4DoGnKp^q~tdPJsi0VpOA`USjvkYlao=dx{{}>r>2c`^< zv&pWTp3k9+{hsHyJ%0eT%Ms7_>%aH8Z+|HL`mVR6-Nz3e+`enq#lbZLYu2y77){jI zU&M8~cas3 zSYD{&OJd3j)X4C8NCm-Fh7uhXlgdgE$QjNai_t)f4k!k)S~aPJXemw+I7L*_o9h(w zG%PTO{C1NJ(N+kOv5b|JU?50_AxA%)yUCR&eLmH80iXj7`am30k%Rs?5@%Y=ZG~b! zdjQBvb+wpC9a;urThjr{zyf3od<+dt5cC!xh=vcKT?FIJ1XA#Npt=Ev^K)45#u)+t z5--QAp^d31hN~qbMzdoP47nwK13D0>|4?%>lZ2>0hU*h~4E`jDOHGD}NneP+%8;Vz z;ez$ta;$Km!EYqul5ZZA52(~AGBOhDU;mcvZ%H|wh#sgCt%jPzVP`&(toS>g?_*at zCO&@9_(yksr}4XYrnjznWng7jL&N2^&d$qCt*w`<8yhdD01;ol{f#?!E=S>PFYnvB z^)d|lG7R}LHve3PQD1)Q>Z4bW9lQM8r3)9vE8$4ki=uQ zT4{3ma{Xne#V$(&cD%3~0BD*`C0dk?K=Z1c&Cu217p#{$`aP88EJ-=&N0wAxDCVMq z-5zlSDR7OLQ>Gurrcf93K$ZhwZ)>&)&{RzlzCb|3GEvPU8I7d@s2yR&*KzhTrfYhR zOIqRPL=`Yx43yR8Ov;rpU3-xK4UUA!QMUWJZ$dgkM2@l!?sF1;nObJx-V#^nImKMN z7Sl$u_?hf^1*w(nMz8G%^pT!s+lL8>_^#)Bp5OKS&d^TJi^Z!omx||W&J`c8 zIaxeblkey#7VorFwO7^D+!@-i;m*Lym3K;s=0qlQ=kT&+clIATbSI2zprPT;{Jwp6 z{^R$)cju$u{oOmrDenB{cfWh*?e}lJ|LITP`O25yd1w62gUFiLCch|UARk_lLAamZ zm8&C1kI`HL^UyFY2gF?{_bM`qO8Z}csBQcK2Du=wjTk`@!!=eRkDrOq8$cYCb7MA~ z5%7@7AaA$7P$Xk!PP?pM@G({6l8aK}Ox~-T0Gox3SM*`&uqtY`nuwkR?tmg`qcM89 z!l_*=C4FWHZ8aZ8O@ava;PH;oat=O#-mX|DXu&{h7uVUPfHMs5j0Mri);V7UniR<2 zfj0XzAMbmJwNci~GAK--8?1Nf=o`RO(b>d<+w+U%M#GT6M)w8-z*y>m6u~d*(8pF~S_Q}{iaP1-c>QL~=L@$&ydMO1fNfaCrLu5OAZk)SpneK=VlrlnJvU=|qKy0WC+P7t1F;yw zKE8vVqd+Yl1FlSczTaRu$e)7UIsKzQ{Qmd8^R2JFcXMcS~(4e5sF z=GkYiT$z3M;>Fqe+FWk-oiBfR_RJT*ID7K3$7VsZn+3gY7F4_0>Fwj&hlgjk&1~BA z;_QnLn3I&ok&{XFACy^hZPy@3iILzUwZ!9^XEf{cfT3Bb!h7wn@a27m?(|Dv9dJqMsMlU^Yd@K@zJ|4?|AuB zpZX|KDt+|M^Iv}crI$Vm$KxMezw*T|e$*8TeT0b#%f~&ud91|9!s0;v=W8Spvnc4mt7)(+GN33eCjmx0qL(+&O{~W~#OEkT%hzy9 zw2(6SF)z2Ei{93j(Mwfi?LPATNk~vLG+GT*V_FV;62BSujw`&{0U|3VX;rv>KghEZ zE;u3qM0n`_3wj_JEauw4jm=<$67r^g1=_a~=BW^MM9u`-t%Kr(0Rv#z(g{*wA`(*u z(ruQtDT7@BRI@S`5&;RN9zdV2M`4=uf^vQqx?{9wU<(J=nJMnk_^}qh?XNmv(SAX+Y zfBUzItDku36R*CS_&@&FU;IVl`CHFDmw+;M0$V>5fBNTtp7`O9f1Egd?py+kr4oPq zCx4Ro!5{rm;^3n@ADx{|eCPWge*ey$1QtylNl@Q2F|>U7^mL-DZ=i4G%0%yYXJ?{V zDkWMwIuiLpA<@{?YfB6aSwJ z{nZD5NGFAKi>x1^R@S%)0&yUk;hQKR&^;|16O%wXCGnNU#-^q%jd)qtsdPPxR}e(C zlT5+x(f85P@$rrL^&B#JVr)Sa2r!N~jK*laFhihc8@*|WDe+}^9Y<54m-ghU%VH3` z@C6F=yIzRYfxE(f6E34r%Wq=8NvUH!SO5cfMQ>t&(#1Yr{{pyOei7o&XbE7h27wCo z3g+A~kI0jo;Mo9TSi?&q7>9C(>Q5s=a@8EPLxNZj1mzFl|9Qsuxg97~;y+U~yze?=ZU=ipV(!vIa zBP$+{9~BLCR)2~~=_C}%hdrx@YK(L|?(yVOLM)bR>BhuYZlIwLd0lR}cCfa--k0;0 zugBfy%D!TEHpvcbj0g}t&nf{lFpG{=IwG2G0>-j1mX_Jc8NDUeB^R8doil16lHzyQ zYmI$aTaSsWZS9IVIj)7igR1l4X1rNXM5($4UC0e(L9XDpA~k`3NA6LB)#RHjdrqhvfMfijXF$dr+&{x3`QX7wOL^^3zLo3k^{>D;>z6P0Tk&`#;;+JL8`JdH z3OUF+_51rj<|%LkF~wE_y2;41+B>Ml2V>37#1SQ(dwjqv_%&Du0= zg#Qr#$Rq5ZJBp9?_gH%bQ{Yf5hzAT#KQNF?-joH)h=4+xq~;TP_4v02chE5XmN0?| zMsWC8s}S8P;Eb^~9U6K6;xMSv__wbI<~TppG#h$&~ zc8(IG7B-eD!SRq*0@8Lok9;pW+`XOAXe(5iM{%pWz?lpu;$n9Q8||YiQXti8NvkHt z6r^4zD@FqHPvIw*vu!woJNaPD5DIB;RR&Kl(t$82=jaIo{_xIXnN1|JrDiaLg1>zL)n=o(| z4v*oe>RKhCb|Qur6TclES`GXNU11X{JmE%tC7MUi7a&jzz@VW6_Xl-Df2{`_&QzA^ zka~XsH)R|4)#Il0Kstxt;qmY-+qd&;r>6K2MlfT1wVnZ!nlDIs33Qe<4~>qN_)^(r zJjhjXe8&Tv$X$oPq|Cd)8FZg+`yxfCthM_@bc!zw)nlboK{bZcvfkC8SR~G9&jX?i zlhWjS&E+zbr}RM7Km+@WAs$~J2Hi-P)O?Yfl4JuiGW&;CM5B*_PAUX3g(I5`UB;FK z{CT+q0a)n5$cBFl^n@Txg(pAj^S?kraX>Q0CA7*z-eqlaAQytlo#>I^i~kAC2||?9 z;2BRk+hMT>crIJp7vB@?;|)*Kp*?$=fFm?**tf5#e`sjMil&FUM!Wj@niRumnrvMS zSG2BaUHSPg+q-M}g^fL)h z#fFprxy?v8%RrU}9=&a&lnH=*H3U@qz7wvx6fe#ew4D!&!7NZX9vr z=#oRi&8RpL90m`k&qz((Wl|FX<8)T`P{m^$Ol3+wp?tJZH3^ z{1PFXguKlE^%z>6l44Z#6oXhHnLMeWJq8aJ2<`6cw*1ka7N0bhl>=KKK4^x3Ski`d z12f(%;6S8eBb%*F)Q9-gbb>tC7O+w@qR9$XxMdn}KGLQj-n0tDgEW(OV}2XDI46UB z#m>$?%zN}fNTIg257Qrghvw$`#wH=w)|XQK$Oig04owZMTGbbk<-Xa0Ex@t&_bqf4 z%a_YJ)J11oKGX6~*|{Pd5|t>x0T94#u#SZioFb)0cCcT1$p6mcL^66Sp(bj=wb=6z z@j-($ED1FrCmO*N?i8mD$~_`BC1cW17znPztWZMM*f}N?9UIQ>d5#cB1~~|1;=ox< z(sl5KYCe$ihK4|pG(kg9VqnA9g#>uoNYsdPkXZjfk3fi9Ht7giXAXj*I6@%6mKAF; z0?CbZgn@Z5Krv~Fjzoh8=cd3@{%>ThHEiB_2;5&%q=m9^PszJ;u)coh>Prt@I(>TQ zvK1?Kw)FS!oH~DU5|#2!mN)F&a%khBr=Q+wrw%*!&d%<%(}yQ^KC$>>(s|wM9NjOv z=UG1F2hAg*pyIkvDCNGaK%m-yl0yu$;=4;SzfQu4Y#6uFG!WLP0gMM@4?$ToJ;V^W zv~k&J2RE^lQp_0~S2xS_NS31|tU%hD(>kGxC+PlQ1W;xkic|PjiB=o7Q>1G%i&!XQ z2E8HC&*u>cH7yOZP)vxeRiif=ZLO}Z{sy?<&^|PyPFod@6lveLd{VYc%#BrnS<7$7 zq`JoM#g&Z5M?vCg^+~lpDGy3I5Ycc6Y;FjX8$PHL>w&CdW-LMO079hmFXZzLwY9jf z#Qgdf+}8%+@-%5`-`6MTz8>FWrqg{p&z@x$Rjcl)PJc^+IO|j z-_(@va|gKYalm(_h&XKen)Av|*bQupE+*yx8Krc=`{pB+vj)G+eRcl=w{k>AkB1G% zUZ8ZI4Y|m&PHZMnkR&l;DS=GRn@suSKK8N=-WPia*=?AGxoA1X=A( zZ_6MJi=!-Mw<~~Xl$s^zGgBZP^nyzS&K$dx<#4)CDlECG*%wJh z;?OdyDPTQRjins&4Oj@Ps37pi&1d10H=**ww1ikah;5TvUM@rky=k=$JJNO&%^Tc6{Pc;+r%yEZqlxo>k*(;TEu z=Z2??gVUQf&At5OlXFw!t5(fDd>jbo++%xA?m2K^?ui{|cI@7LWA4V{(=U5o`zAY= zw9-E>`~-be{%=XP%RFmA;PbHx8=>rqYU&CHYXcNZ4xC~%9I@-af0>JZ??UpD1r9g> zY{{SL4ys0NUA&R9WAtp~S_7M|G2|cPz~xqXoE*E@7EAy$ZGMW>b0PIg!CEpQxs9?fow6@%9thr1u!Iz76TCjsIT$IrQs9Jxci5CcO&Q>$ zC2TN|x^cZJN9Oo;rdg7pGLhIn5V6drQah|5BD#V!yPT9Ed)t7B9*K;5IjOb<_2(GH z8-AxGqje0wps<|mr^v@b=tK1YLEr7@g?-V3-8nCgsQU(I`XBGO-t_qMZ@;~7a^vca zGc)_1yMBG&D_5@UJ9+l(TDt{HZ9#KU)aoRO zK8aemWbswSe8`)u@`{@PwjjC!JQTCV`kfZQq;OzBuFSI+dAQO(t@N&oW z&uK;ge2}{mGCHnsjP=RyKDk|7JD!@2m{XNTNlSDRfDhL}s6td|Q>@8m#Tf6^%tQg2 zKe$E6inO94yi?y_(!}=9<5JhE!B)j;SA(ci%zynkDwaR?L=Zi9dR7i)<^y#>fHIgx z55VFB(CGUABf+F*Pn7i{Gv|9fC!d2yiHfbjHyRaeOOee?x}#6FHjT-_J@T|jAR>lI6lt3^ zC5wBOOVavCZ}X-!O}VfqialjyrxRS{tjVVa5`eN1h?qBlOb`~c1LIUc^_IgyQx9P4 zSR74y5gQ6b9vi;`7|hx>8Ud2YtOO~kY5?mGz{k)8!B3bqtYbAFaFsQkSl7dM!Y(>t z6P=JX?1VjZMuNf4otrjwLXNO=U<54Z&UHOwJKkUCi#K&_72$$ETiI6139*WBl zj0~bm1HOAlHIY2xGwLQpAP*TQL6T*<&ZCv9MT79}UTCHHfN7E5$4}X_e%*6$sQq9D zPxdKX!c%y{PvH`t!X-R~C;il_-SfLACQc2WA2@&M(y8NTp4@k4c=(iaHQkWzxMtTw zS3J?K!IQ84rSGe4&+G}dpKJF(7Toh<2Tomh`f=uoD;Z+WF9Nfmrq2nEwDML(@TP}B zv^Wp0X!`-IZym{~*0LtN;-svUH);9+|E>m6P&V?;fP;*0=`n8{ONyl0l2?!T43G)8 z_;hcS7ghmL4~iMZY!7GAN>dXtaQsk$A>bkz;8%r{nl6OaLX;L`yJ(95oPVxX6QZG* z;f+8*FD3HG1^viDan7=oF$D~08eUS)uNrIWui`SpQzfjeMz^kR9{a$u^>Ff&%k>jgedCi z^z;uU+qurpT8P2dViu#eA)WSkY71Du7O%xdhzkADMc%;qcThcEzN*f@!1@3y^ptY;O_=T1Ul^qx)~YKEoI3LO7;wa{rzjU7@<$!olM<^1_vSJ!x~A%z844j$ayvU>GyOhNA+YHr>QW#PJDCbN6riWR#(iD*>ceYf1|{cfUNHq&!Z z`HypHkS;h+Pfq1A5`fX`R=rg7!rRePV?S>U0<*)C-T11&%IJ}%{lR8{8l3tN^`k9} z?LZ&`BfVBW*oYqRx>N&FW^8@zMka!#OqiKVX>B05QXMU5gHUFMaE&(%;*_L++4w-n zV#IeEJ5)?rEbYibR*RT}O&9P2{n@&@Y-3|#5BMjx@cUl0SS8h8s|N%u;H?gZ{d(}} zpzh7}Lv|FH+3AJ`oP^5eZ+^sVi}qlL&~;r6?a_-vYcO)mO=-~7-Lqwj==bc}-W#25 zuBxjWNVN}-eb3~+r*fYJzt(Haw$84c^?h>od$a#I>zguF&ushHSo^F;HK&Bp4eM5q z!X`UA7xW<=ZAe@#92Wht-z*eE6?zNqeWItcz#N=?3lVte657mbRw$G15i60w35On} zGYx^(K*cQuYDMl8CeDmtcd943s)}AZ>wyN=nrR%+0F=uh3eb)jP;bi58=AE))Bp*g zaE%sy5(8YX8{yydo8cdD+EJQ-Oha=~kya~4o1l&J#@H}kpfUhqs$g(F4GL0*+P=`V z7NPtpdO@&*=L2A-=c0y)A73%7f0-_wepd}$spgq<95AuW` zcwCnA26Q4_Wg%b|*=diWOmE${Y18oV^sc>orwc|GM1;2Q+&K*z|8(#8%(n538>d0% zpYBG2Hl1l~3{JZXs>#cheFU9C+3ne`&<$tK58+&5ED@t|WoGd%uwMZlI#**6)O4>a z=N`qPU0v!UIuss3D!OJpG=j%T}DMzH_^#D032RC!D?V*}4BTrU+|%n(ju zn_}*^YODsv?7)aKfFoU>D3o-+R>G-U4~L*K5!fE%l@a-~)zx727OJZcCqYII?1*9+ zlqxoD&x#pPMJlgWBQ6VW2dRY-R$uA2rZHDR7@*C~eG1zSvH9Tg`MotQp6Yw5(v>@Bq*+A7~6~*qsWd6Wt&QR&sA)GxVlC$_TfkRs;iai@nO(S#>3Sk|hNb8;zNT>?vxEPEb@b|ET2=Yjp zty$-E;fSHVphXW&@zcvU^^L!D`1$A0o*jGr(4jGm%Zxp8{>4|$U%x(f3>#9$Vu8Te zfoOD0*}s3RC)Pu{VBqJ8Nr&7%2b#v13p?v57m%W&GG;*h*?!G&KGWXM9SvzRrV#U>xJrR(gPDUL7KW zQA?mU8j#mBJ9>h?k@tD?fR%14=4Z0Ys;6peYj=Q6V+pYg;v*(>k#b_Kr6lE|rWkGQi->;m1g6?sR>v<;{En%bXCZu`dk6wh%%Rgsd!|*Y)Kf zePKW#0_n&=q&Chgelo-eXcXNjQ4Fx0{SLz9swGW&HVqX!nj))%t5vm$lj73EL{rsD z&q`5j8VuxeO|1>x{z7+uztLp4UIC}iZol(p={qNe7Tx=Zb0~ubPS(R(K6d6~-*xxK zJ1v}rLNRTD&&>e zUp?+wYjZs2W7a@R9|StBvDJgCo0~0v?W$VL&gX}rRy((4<3_Avs#3y3L)}()#ZyIh z=VPBP@{_E1vY!?5biepXp(kqLS#`TzEZl*dW?s)h7Xt3SXkB!gnG1rBla}_V)b070>MqBG}`e z14C{5>arUrCWoZu{BkhOR*wygscJUZv8rQYBHKP3iDc6?O^KSJq3qV9hYtC&3+zLB zf*p^v)E3!uPv66T^gJ(m*6iBjmwDD*o2KV^A-ohxHvnnj!Zwzoo$JA)z^ARoGfVk* zN1VD6X#4`=lj1l7lAXj(i3F$1F@hrXctSDO9;cAeC5Qs#;JU!R%W!TGP(8 zW`ha{2Ae>IGQx5?T$2lmH9(!KM2yvILdqY|<8(lz_GZe^cvnLZ4Zs2MAvz$%y6&6{ zSdy4C#bSDGeYMqH|1Bv}XpH*PO~s7>B|-kEwW>vi6xqsZ?mgH~JhUm%+mvlUyzs6b zs~T%<^={d{argfH-tNe%$i##Kqe-=I%gN4|O;#0hu@EBbNS|IBz!6JqrEzL+&VI4L-8X!Th0*x=wIH?-^6;luw% zH^i>Uuh3TU~LFZ7Y_Se;WYpXCO0k4H|eO|Ky{T3EjCZRxq zTVa@@U>dj;kXEsDp4P_(=y)=U)u4!(tWU}aN8@qkwqki51ZrM7f^odjUAawt5nr-r zyodub0>`>y;GPlUW6yxPcjIBtDe_|bW7hGGgCBE5I}j+6_ly+Gc~yjqrOvGE#eS91 zB02~zDa*GQqDqk$(!T}xv~uSrL5BnTmqjUs!=c-PUMk%dH+(2YIea7yc18NYOA-T+ zWHx+S1T8TY^%KU8H5FKD6ig}fQp`RhZy>1fF|;wvpd3J}9g&4D4=-UsT_6Ej68Nlo zm7UH)P&tG}maX$4Y}SYmrd6aqT3}xnCR_riEDK{}0QYQ^`~LAh6$kGNU*`YM$3<<{`?Uh~v_)$S z)Nx(>U`FLv%jPlSIUge)eZXO)1d5*6 zUl=m%=>98w#$y#NpR&tx;|4?D;s6C=fCeC)6Q`wBc=bwp0<*Mn)Dl?4m{80vxU3lb zQDqX}?Uq#4C5Vyx0PAQ#Gqpx`>_U?*U8uwkO(%?<&| zFOFB7+%{qeEj&}lc*u~4(@&M&~5j3kP4MuI}cdQ zf&aD*3=q zu8wiBq!5<&;QXTO{KOc}j)XcOr4h&Z#VF)xanQwjzzT@t(Yj(Qv*zKhoM|;8S0=7G@r7&_^kGb8oI)mm9Bg538Jwrb=Li3X)LPF1rvs>sGfZSh4sN!HC?WWLS$Y>!Wf#KW#T#M+|(=B8xmaU0lGibfGeMG*i|?c8;4ta79&BDcC; zi{8SXp_ZL9Q)4R|(uH(&^-3v_3N$sX>SR`!JjEH!) zja*=C%us{r)z}QuX>_{IuKX0=^I2yxzJtYhddBfe&;Bo8wJ$yi)>Z(D$qoSI0(4ZD zK;HDVUR&x8?i1J#4klcRC^brWBR%P;>p_ClA)%~bMgwx1;h1W6!u)BfsWU=M*9beJ zi%?L5_riD3=g~t0*w6&bTjGs0vM;YC<8hRr9~%}8?PxAHm`o1htPJ!{LrBvgsRA8i zUW`jJpFpMt2L@~)Lm`Rx>ovL%2lf>4)oXk@CHnVjw^_AFETd6t3LOXA-??*Wneq+;%omKVKoSDI))mEVwcDzyR_r@iIyg7Cf=l=T zSg&ZC-aGy9!z-qCb#|^;HngU9Xy?uq9-uzC6*>1rnQQxn$Ljn5gDv6v;NM6Hp4v9_ z-bSGbmh8kE0;d-cn8j!LAhzJz4c*%J_t-I(ZSJtw{_347whS z317x=g!oPZ{*H1EmhVBTkNLYKV%EBv*0`Gd>V^$lXJ_XDYrRKg@>#FA!TX7VDq%~# z1l=DA6OwMehqBc&0foWAl~WBkx-7PDI%ytGh9+_<{hA$%&;`;bHt*g&(NWh5&gz5| zs10;?Pn+wuH0vcM=MAOn^xhoG1;Q=xcp)SpS3sViRbgZr zL_RdXK^`^QiS71dQ9D)Xc;r1>A%{vu|9pkP?>tP)6t;w7#a zg@9=+;)~LjaYb4yYJ(8B&Ys)-Rou^f4n$Xo`b{DEIzP%9v&_n<$Vhf4NDium)RUT z=ZMIOv1u4*6ckldo|8ZN$w1rKFGnDp_;Ha)sa3UR|~1OInRq@`uuV`rD0J$!gwq!28WO6!JpKf3$OnRUBPjE=5L z<>I-zx^**arnikxKk`WXI+txqY5OleLFZ1QWTtbp$s_D&P$whtV|TBzKZe|cAwN`q z-S-F|>~2<`;J>J(`GPW;ld};lj>V<{sl>8HfJ6kjCMCU5%4lE4*+voQdXsd93GAS9 z))dgXZc)~&afA#x*HY-Dt*PxuswuQNg7t-&tW>`))n@s_UFcIl?I{^k0y)KMl#D_> zZxmE91>`l0Rd;n%D)SnRS|^n9*$HugA80TIF(g}gb|PkJNVC9IS5LA@?7gVBkS%Ur z&jr!#T;JE&jV+Dqp<=Oq_x^$XrPBK0+^*cdee1)q*!t=nt5&Vwx^_cqV#D_B>xEFL zW4$Z!&rWCI9PjBvE4(TNK%621k<+CXXc!Hr;kM=I$o@S=nM*~YSa+*ugfnPhO)($F ziIjSJdXC`PhkYa9rKu5tvx?(8{j|>2z`PJdQ=|;esSdBeV>j1zVgc;niWMtv){!2> zS13RHprfO&tEFgk2^`52q)?}4`d zn6bHHn0v9+3yyf68XAqKI}RLZJsi;LYisv+Zyy*a<~jei>cO$KYqyMKL!J*0b3gCq zexB!kKFFmHYu$POU=|I)L4UqmJDir9Ce~BBSi$0IZN-LPtoX&{!7E+2MQ@xhI46Rq z%*pfY6ulyqrvt+)J*yC`x33$H>6cIC^Wo193}6SLK0q#T8B``7IiOm5G-aX|&vgpf zAuEz`B{)6hUY>|p%V7{eMcWCNhsb)kJet+}jsE_XD^`@Gv=B0d>`^rKRpD#ESHBkj z|7m;A;JD5#OEB|gKJW6S_nAP#I}#ua0U7`VNst5y&=Vx+Jpq!UH=ws7MJp1bBvQUg zs#X=tsH!BDH{CPQ+p|4Y-PNK%r zvNP$M?^RGg>746aPjAZSiw9rYwr&5e1&bGF%_>2dzv%eJjVF$*+}g|6PH%5-boKm` z>Ha5l$#$8Gw$}Fa)NWm5?h1-CBKuCSU)qU^8Ha!!%OxB;TE3h=lH#K&$Ar^)ftR8r z5=QJ8mUozTIqlGg=t?5Pp~`ueTh|lpe|pkMAY>03mI|^us!|hEjDjHebCf*@)c(ugBe*&f z*#zMsivl|6M6wa-=}v3HfZ}UVt#sOy8o>f-Kz_ni5X~PbyTH2Ww)ZP$jmLXt?%QDo z0y~!VEWup%4m2!x96!DMba(fTwe82+Po3J4jaPY%NR`XAqYcck9b0!#-?aPCq5d5O z9Z@pJMjD0rA^Vzp-hJBWFiCCDz|L12i#r(OvNN4zi2)J1h%^jMj`Zl6) zhRQ(%EUpmV=%Yt5AGkFg`=!ABN-*E3yA#MhI%1ULMG zotv3#o)Wk!alu4_6<4jz$dF=_6?^S#=ardMo>VOoTvEs{GVmb4bye}1$ zk{D~miBl8a?xiTcXq26?gH-)DM6ODgy`k~2>!Ax1827K99tdX_OxxbDy{c-#*h?+A zmkVYNj}9L^xZuRuqi1j5Ua)S@tXT`@En3;VX!q{g1-1EN?EAzdXyG`-RzaGK1P5|u#; z&!>eT1RwMOuF|AVx8}y87rDW%&m_$aCIp>y0%wO@G49snprleY2c5dviRz#d+Knj! zG6ecMNL89Q6vCSvPjbod{s?v@rBWds5_lRkNsv-v&7wD*_FyRi7|?t?VPaD(L$)$d zON|A^B%YN787n9We#^u=$*@ea0#yjxb;7Mkq?>NC2NNTtDBK3N-+4%S7*Og{&o{Kz z`#sSawnzR)Y#;ay_?-16b>B-pZToiAq#En$@^{#|zhw;#`8!;Cb9Z1c)-1Wc`NXAo zhiz*pxw4L}fW^cr2JZk_K!liw;sos8(SNGe{BZcyF6(5gt;SiF2>e}lN z=*OO{P>#YVstC6}XU<`GYV_(UyI~{%-A!ESnUviaamsG!2HT#RSIi+~H)`?_$7L$2 zs<4@@7F8Ryk~2UBgsaJ!aT05q6%&HihQ7X?Vw{($$^-sPcvmtkqAvid8033`ddra-?Kg2%jUR`uBbm?u3NGi^VtV3T-k7C@!|uXc)YFcz}BAg zJ(n*Z=svS!$AOxrR1?P?7(LXr=g|0g;6UJ+dtBm#odcY5n{j%q0_?D%e$?pbvsK|* z(RHHE8qG-tQTt(J8;-Y750(owzHLvfy{L@zH%b{MYh|CIBu%6pW~$NM5X1H}DO+wv zJygvj#R&*0#S&DlRR)I|N2Tp2nBd^0Dz_%yBeL2Y00Lr z8G`(l9Eg^o$5s}d#!1sF+dGn6qP~1?L=8n%A&KQ>Rtk#IHGSBUM=qN6+2Eqf;G%Ia zGa?V-0hX8XKAM5SP4}~RP>BjN_6K#b^QcT6W*s?L#nc4F-pa@3_o;OA)4D9H%tPeD%sq8CQQovPLiEt^(-Go&;aO=eKw z7UQr2irGNb1)hbDC=QGIr!qil94}$fcJo1lesy2@w1^g~uC%1O3JMMfupPU5A|F7;gTo2>I0+3SrxL`hk}OCN-hj%KeMmNP zMl8(=>_9rpHo@H>j>qbTw!u?l$1(amc=`I7>!YKCAkPi{gogU5vm9-kmtDwnxA{g|MR8=osd=Yn&mOsSZPB%p zCr8}P%_D;cFCM&lbp+FEBL~i{STPc)tQ^@nym{}M&1cVckK_gM3Yo2asFMr)DF;p8 z%=h{tLN${aWZ4q(B-SRFg0M}U(rN>fgaYT6DKJZ~>zj#rvep~WBu~Ka4oUJ1$&|qW z4_WA?cEIZbN~3WuwN2sBe)y13Z5$xGuaF@qpaImORTRApuGnd4B!S$3<)FsKo0`sm zvU(~YV`K}BAy9|;U9uvYG*T|?_F>h%?#+e;xd#Bb-4>LtqoyB+?{LHEHf>v&)F;ltH^$E~h|qR<>kuUaNhQHp;`YSNODlog`v z2GhB+f7m-@#-))`Bn-!is&Kd^UKuwJ6X7^~3^RTy(4e4`L3j8Xa5YFwMsS*nF_TAL zDgejy3Jp1Tra~YRQ98`wFuBC54lNZ9SdRluVC07|mgGXCKrv~nmqS2`>tJ=qa@4*W zYR6gHgoQVH$fS?`^c%aYj9O?1V!f6)Q(`oJE`#sr4+{-II!!pRl8(|z%us%7e zq@?EU0kM`CU$wv+&SH-P?P0^l)r;|9ke?J-z5bYA!0jXuk0m@fSrOoa2{J5F>RD56 z<$uGiq^Zmnmi^F)qB_~WQFB>_v2kH%U+0`T8_%Aad1~?EjV}$I89I4#W3aZWYU9CU zD_3q@zh&RrEk}=T^!j`~8+(3NaGjFVmiS$}I*BkoA8TT;Y=^b{o;l?bpaD;Pfv0&D z@F|lBF%~b*xH-@wso9|kNzT&HnU5h}LaSpha0Coe5>t$IIjBdkN995iO9$!nt0M5* zSv2RPp_-dDr26tY&M%<Pt+kz9@ zvUv8w**!g5QZ+SO4j*57eAcWj{&0B9%9cYd$Bu1jKCouZmhBt&?q9#Rp`mXJ4b=MS zDl*48c}IU618k`0vR z3Ql+im6k?Z+d=qE(3C-J$`k(>aWjnLG=rtb86cUqp=@JVi=OldR!tyXsdM4BF!p`s z1aOo*XHxYkoH#!tCWg)Bvu5qZW;Z$-K1}^5q`taTi37$_S{a|11R6*eGJr^FVQ>Qo zZvG+?ZcF{Czh?Zu`Pfis>*oV2+Bt7DddGjw5Jy|)%o!cLG;nFbg3-ILTzqB4iqUl^ zZ=Sq!XY|DN4I4(c?K!-8&$VldMi-SF-0yd&I4w$V5fc#+$&WfMd;8p~i#`@*B!h}3 z?bj~KrLZYo0{!Stewjd7n*6*S(lj46Gt_X5i$-$jK9RdshZ4L`m!v>SBXut+fOXn5 z%#Ni6THJ>lc2&iY@zFEmn}*dW0r0`0{zSdaJO1yeaOC2S1KL%7>u{PehyikvkdDKg0J%kQ3Dv?(C(Wxm~#^*IH9q*}8ef2-xba$?EFX z!^gKBU%tFmvEY;x#F8fL%5I}`d)Ne zoVXp+BT~>9=;&BPd=3^P!5kGZ=SF~jl5iv_JHZ>rFnnbL`T>Fki4I^FEDpL$liCsB zdNW)dtZup4vnW?rSG{*+WY?BxI^9^_+19pUY{lWjGuhECZ$5@;+@O4>xA)Y*^k28S ze|^kdy`_At)i@?kpDrIWTF1(_RLk7<`Exmz+ZHoh>V@H|+837HTIcc>9v8pG5Wm7{ zFrdD8iUo*h%JEWj3~!X8I#N7^SNP-46Zap#=^MCj#7N9&);g3Vz;m!Q4xJ?tOKYcP zb&JLkx}nyxnx(9B@N7C!Ucnp?a$2ab0)mKZRtHYB(5$gDU{!uE3E~Z=KpSWh0lktv z(SRaC*0>d059L1ec<_!|B8kQVeFS*MJ+R}lC^R+~nrOcl%6bOR5*G1fZre&G3p z)%xIt|8HolDwqac;^_H3LU!AE`S|e*r&ljsdhFV*v9W_T?J>&FkF1Vir^|h{Wv$kNBC|>4*nWH6sFV6yVPp78up7FDE*?t z7)QkVBoSI2$_CBX=tq&FK}wBR647vbjeCBs$&@rwsGe(h7H|R$czL{E!<4Qrdz8&# zRhuPAk!hXLx$&8M{lZ)vISyhrZf-kU&@*$15!{dCUW8ZJ*GY)eOk86c{QVmbmhvIl zl`FB16-sL${bO7bFf!aRP7|B2fdPIE>gvK zjcT217eaIPZQKoU#?Y#vk)i$jLsbpaa}9lcp(76lAFNy%dUfFV@el^eLuW7FK7Dz~ zk{zKPQ@rvsk(n;!5oa_sQ?EghtMSF)(w?JZgIrg2XQaeb)G{HR>io*GgMzvQ==Gk$M|bN zZz?OV1nR3O7L=slAnq1gdU^!Po^3dLhF*Yw>4pR+rfn!}+f-+y%aGtz!;Jgawb7tWkYm&A=O!V`D=WatuK&0Es8f7vVi}RF`JO!q}%>y%e4S8j&e3 zVfSh=lIDbNGffZu-j*wz^%pwXV!+OO4vGg8Z8_Zt%jqBl zi;;gNp<;l0XSR?muaOnyxU#tIB2LhrfTG(=1+F54BAe&&nKY|0iTs7=e50~*v8ejO zJeGb3XOypxLTE!1j)a+dQd*ZX*`gU8j0_cC1~yb;H%OXV>f=Te|ej zm5T!h=e5tCy>P~b6VsA4*+bYL`JD~!@9cK}{DOPK?kfi`B(q*`HhJOTmE9X8c~hN? z2tBPNKr^aJAwUc|95A8ZY)(t2HIG%11}^EXQ5Pb|#>ync ztLhrwX@2Y*^lCUuUFHQJ{05r*D1v<)#zX|oy&FrApnj-I$FS{{(VbgcE*jvf7VRk>V0%cJ|dHoUaq=+XZ5`{&H*M-tsXf640J zC1Ydt{kZ0Z>X+`NeK(7jGViR5Utx#LI(3B;%I95nUw}!YmXK87d-ErYL;6BZg3>Gc zHB5vOQw6%^q*UKtuG2O+C5)C25-oYX>YIDgo{pmQ*kt`2h275_?x+nwA(^ImMtdec z!t&=MbF&H$(TE1hpW6&<&Xchfslp$Srgsn)wKoY8dxjUx3R8AeBSIR95|ASuuyVP7RS`$_I_)t>C(k-NipSFSufG;n8N z^X9|NO-+Zd?i}2?WXa(SpTub$zS6&E&*6i|&W{~ixNyzkHB*jkvOi^?P4ckp!0Z@X zI57+sP6ig)MV%aO+p16xk+%(#UUmq3k*ce5ly{ZH*DqTL{}lMJrW%!8N)#}!17tnr z(Sx+iIc>?bLWEO&*jW!&1O`yergFoVfgmXMY|8U#dNC4#FJ@dN>fPC3BaPdKv7{Uu z!4)<*6lQ651hZYY8p5i8PMt530Do4&kW_7)^R)qMoTlrbw+4)zDlJZvan5Mjb*dW%{*vM=}W(5Rnw-h~S+SOh4fCC1=j0 z0$zD0=2h*!9%AZd&+v@)`pV1mj&~pL>>R#w{@D2i3x)^A&W&BZJe-lj=r3r)qvL~v z!)r!%tsFUhdiL<_=bk;C@Z<~Xe1?vmlU*S{ij<3XnoWU~%|Ie|E~eKI<70F3Xs=V& zL_p<>!#PlaU5w6@3_U0CjXIb{8Nj|~STI9XT*jhy+;qX4(6Ma5Ehi)Hc+fi=Cky!h z<9>Er~rI|(uE=GRf(V%;pHjo3SDRVCKHAFly%(q%`&ONLO z>9QoGQOj$l%W)|-E2D~a<(5>5(g<5Ap`S$*#H`FomWBTTmc@=$O7L@il8Yqrs-8 z&izY|FFk#_6F5ibz>$|;>TE|uo_+XmCm`lcotvDKW(Qk1V4UlulYZ{0)06O*0x%A- zm@wJvc_IsD6g^u?wV0_2k22|22g*s$-YI}c71w8dMFku!s z_~e8OXw|{Ja(Z@uzr6C=(6z;j!lt)9dQ%~A0kqJo$P zy(rV7ejdadA*pO*n2yq5^_NYUVJnniQNnx?5*i*YDhKhQOu`n%Ds~ww#Kx>UlM`b} zUxlQoZrnS~lgs%9x9X?KOsq7vlD-4D+~Bdv({1mazuX~-F1H=273k2>Jn z45{LoTMm6N!H>HwU`q{dzKD#U&)ClUC3eZPE*Ypb-SYelw23uhtC{7etfmgH(@k>^^Mz?ZXY_d8fuF8PX(ps{6dE1zL*`2HYhi$~^ML2OePotoUxsYxF*~njfr+g|Yuvi!%?qoG{7%WRG z=|TO`jv$o()nplWQGu#>YgM=u-QEP%Oq*q+BSE0Fmf{REm)1S8q!p`k*Mv>e;~%HS zgo0Jx3Szh){2Ru1O@i+lCMzhk7ik=>IiiD*qsH!~(-oOa1$#eaCU|eAA|+w|LN+sS z*R>MpaOnURZhJfmhJT?yXT;117qo2hBkLUcK?tz(IHvw3Ggsjklq~ogs#J#daaJ77 zcZC(l7XBK@iM|rqR)_)k z3VqS}3pYVNACbOl^0JGPWDkfL>u}f;a6+U6U&GhQL?(l9@HgZxU=sAbFXT8%^Ti8g z&6Z)7m1nBaX=KFnELNam*9|B41;F>g>{MqUtf}=%6iY3k6-hJ0oF5Se%ZYTuNt%8mpFuj-kGu|w+d$SN&2nql zf{V#HYgz`S7l5|~f(X|Euyt9dT1 zZBC3`fV6=%MMN2C+-z76tI=r>;6DOw`y2GX;>ZT)U@t9I1h0_JQfNuE(tD~7FH}ZYeuN(f3x~{aA$sl%Qkwx^T z357`+x|_hbN~~?H!?7ER3G47N?NdEdt6CROw8iH{pvw@Iy~CNX(lQM@uPWQibZ?_! zae;CTYvf2iOB6-urK6pNux2V4^_P8vK3^TA(?iXcA_S;B_Xuj#z~nD)K;{XfNLY2O zVCWf096_yMXKFgic_jZVa*#$o?cl{`GiW%FGWS97YcIL3^mK0@&ZPz~1jYxC2VNTN z@0#B=ckbZ+ty>3WzLQ_FWN`1;*x+=Z-_VlP3wMbHhjL`4>`Z4q`0^WHicd;Ij|I`bOyQNR=FeI}C7`yfym)3r73LzVI2n{MEX|3H z^Tq4|qzRc!Wj4FpQoSJW`vSb-hP&V(7f*TPZ(aW<@&luwluxQQ#G*deGkeeCzRCkz zMG1_B=e=1lB{2~KIT zD}h9a`0pW*Z25CbF;rm)yK((Y?5hI3Jr)oU3nX znKo_UrS1E-@7_I7SJl=waO3uo+uODcoEm<4_|~m~byv@v88FdA8o0b@<%LC8uIwAw z_q?lHdWv*S*%6nVbK&aR0UzF+rcInRXHLfiB|dZ5B~ToT>XVASQlRt?JL=yX^&=(6 z{a5OcU?Q{kaDx(5_4Nt`5u3}3;K z3+{ZLy~)UA&tmOTHH62s*bOj&J@{cMpvrzXgh6>t(>-ND!NM3d5z6K(zCLQ5_IX~% zsw+^`bTgv|(e)q&E%Zt?Kj=k7;Vi`R3Sc>DUhqR-H_3aWI#en0fg7Dt1=G3IC!?KK zA?#XcLiDB$XxCgfsop=ZM;&NS)`ul`Ypc3q{vg&>t6kWhcID;OFZcDS)lE(H_3DQ4 z%j4IttEVq)+N2V)duZqAv2CO0&$p=gL0ub7FI?$K$6xYE$wRvAPKAiWU}=82SbD@o zsE=iTcAAHRz-f-zh%7{rY#;GL^1R0#gF}k35bis~2I{@K&(G5eU`}b)yvXzPh-wbQ z40gDU4gfu7t7M!;I_C%<6d*m8&MC4)<1kbX*b)~SHqQ1E9X~p!t7|U++crdR2sj!( zaC^NF0@ef5%W=pC+mT({m==SY=x1Dp(9!+8*$bKrP7}igh}yk zyKp2X&&gV$vT1-2L%PC#Ft7meWh^_l_X>m(CAc&!fwBoidt&haUtl3B*dsBWsc~L$ zlapB0>BPUKIdgsnf+`M!7&f&v}ww|8EqP;iv-oBkkN25Mp zV$ZdKfyBz;?L)&?uT~`ry28$>vnY^{1@er6GQ2jCc1Dc+&fE((vIn>iG|Xj=t}wNM9x1PK?y*`tph zVtoL+g`3aqzbs*@G++3ZJ6-2aLGw6O%X!LIB8$gZDVn3aI1L-#ux3C?L4_qEglIyG z%{apl(yI9@2ODAtp{7Sjn-trz055}jZX*FS3mpcM1nPMugNbgKf%5WzS-w~gmX(FH zvX=M^C}v_G3XevR;cb#rl4%Ap%oEV~Y2{%tRStF|s6e1j-ZY`%YiY*O1OB& zRGf@qMr-MQvvTn{)JG~BU=4QMD7TdpZ4rLb#%T<$BT4@}6MXwKLtS!fs$8f13_DShZEYXaN( z6W)-}?BfI;iXpvb+@y6jP>d7374i61jLG{ztdW9{tOeOdh71-cRc;>r!cM4QVJy=Z zjWeH+zLR&M zD>Cca1wFo^dD-z?bL#lMw|2j^b*sK<{gd_k_v=d=7dJLH>qj08KiIfYe|63A<2wEg zbVj>cy?TfK2WeN6VhCA-^VhM1FjUU4kjuXLg_UemWwT3^D2hRbqD!0elVm0EBlI$* zupdR1=YvILRe!hy`OF7m`*O)pIbVRXNAFT%%0ipi8|nak70Ywo==g$lshEv%@TEP1 zu4Y=DhW-vJa|u(5@i`ygM; zg&V2a4;v9$Hlxq0i!Uprvnp#=J+`rn*oSGTC_d1f(yFS2rphR|AAv^jq^Ij%Q{kem zkq9<;q*4P=)+H61az*f!`M|#A!}tttM!-0Xt>*6M)eJ%uvQ-VFUPKoip5*^Q&Ou$| zc2|#Ux$C}b0^670BFuU3_Vld99YTF;<@NNnRS*=1_4vThzeB|7gmWK6LPFy^JHQceq;l<0At$+0R`s3rr z*Dso%Os>DZ|F!*ZzPTRimg~nJ+`G4aT5Yb))tAMpob_ur?q0R=)mM%6g(ZP`!(at# z(Oyd8P9Xs)W~|I|?0f{ZYQ&-U*&c*&W)@}8UHm;_D+EW_mQm8iM#1wUE0}METcFPs z#vx(gt&Xb-(L&@IacoPaa6sFXU;$xF7%MWg-n6jh4glS1sf08$_749VwG2&Sh>+Vs z;z}|eYKVz4k~<+gG4OKJ@KcoLW42Xj*T9hH48K6N4K3kIk@!@ z=FK6dRngF3kDX&OJrRvQt2g$C%^_dIQ03yF#uPqmQ=sG|lFvP=L~xeKci{WTPQza| zs+2}3JJl`z;(Wf#=4ELMPVU=Wz)<4V?o5Evi*Ap_`DA|$9xjnhE#dK&Nf=o3Kr;~Q zc1w#@%0So(5Z2Z9sx;0zg|ebWM$r6-HoI#AL}8l=Qd9;*1#;5Ty=k3Wiw>1rsH_fp zBG6Q)H8%pu0s7ogZ1ezR=83qYl~xznq5(!tDsouxteD~rN^vHmMasJ+-ED`%lHDN3 z#p?PQFgYYP0%iiSRM8LoOF=OzVN&29Shf;@h4iD-xfZH)Ph9W1u#asHH@Iri{7c8q zA3Jr58-Dxf+gGo0uZ+Gmx^5k}Z}pu!+}78g?0oQK)hezD<6~uI9HSy~T|FI8a^mc1 zo-n4GP^YZM(!-tQEj!kh}Mr*LMIz|QKDq=lJIi_Jyrd~CYLvq*OoLX z7$8odTH&Q_=R>tp;nDBLM~j^>dZ9riD1J$=jw{A8oHABiLdXCKhaaJ*&b=P{j&ekc zc@1$qLkK(nF3Oo#Iy+;C}73#^QfuzKmm=Lly&|bUW*ryUC?TE zeFXP3kHc{g- zU7(>YD|oSe4f{_57%4zpl(B0UTnE@DTB(XxtOr%q#z|;e(}PXBDOUp~3+}jH#bm*o z)cYFWxYp{tc=X)SlP9f~{$=g+m(8ASJ$(Jj>qm}Q*f4C}-1lJLqeoV)%Vq7ocl)*# zNhGW-tJd#WzW(mrZtGtxdr-8Y0#1T6K^ctnL%_Yq&Y05q%_-O@)j&8yq%|y7If-(K z?Yzk7b9Yvg&Y3v{W0hPa1b`Zw^wI~Q|641m^V~XA`A`hWI_aaUpeVrIRJvo>B5ium z1<&BCr-~!j&_|R>%Tf)3;f#EiGGzRKAJ1$G0eeG*#NdCB{%2aoz;7A_?0!U3=JKe zczxvcn>P<`yZG?pqellt=ma0UaBt_%gJXxs_a44`H+(Ssyll4AwUqb|yDN?)mUt8S z!nRo0*c@gS6R1qdldmYRwaGJ8MdKm+pztIJZLJ+hU~MyDKUO5+04|-H&e|4*d}fkM zVUdZx1{3{Q3R2dJy1a)yQ^EiluDMr?1-O`n6^}xU z^PpAj#Tc-gRB-A7go;oa>qv;DkiT4O#C^K0LnR#-cEpolcjiCxh*)(wViCz(Q6Ww-CrCpLFRT*6E8Yru*yNJhYIuXtK8dQn z7C&w2(-*-qG>g`ZHJf#dutgGyuAo?pf{GISx&x(Qjtm0*=+Wl8FgjZ*^ITHauT;gu zi;`y4CopS<4xN=n$9BH2QHuD)`o)zZ@)#kTJqZNg$UvltL#i{7MulD7<)=L*7($0z z(Sw*yVtRuNoToh{UWn33B?+x}Z$6WyJ?Ou6{dY{i5ED02!pTB+2ADh&kTo_Mzvhj% zF28m7@S1tkqR}-s_P)ON$&)o9o?o+P;?}J-Rxr5c!SMEb!w(;>QGLG7HJy%Wu#x{#t8JQsc{}Enc$cE-lp0Kl9pxXAsTKZWTAkSvqRiALPF@F{91DdD$}~$d zSjYe51rL~2wKLU2!v2fQ?PnvClk7|lO_Q@-_8ajO`gjzbdpHLTO&lIep%vc4SK>>R zm6aVjBxE?ua8jJfncGaH1AM-HgZtQwoJ;G<=*e z27DzP%!HIpyLN7_P$OMW}yFA6S5r299up2coBZHTaoGG~o7IC?NRM2xe9z{&0mG z`j_h_P3&c~z+9TMe*VOs*%2*cgL*HAViH!Epg)W?jX}X9h7~vk8A~+;cn8VHVF5LV z1=R*NPscq5Fxemq`ih|JMYaOyg?Ot-s!hxV`GhqX9FiqPM$-z5&`>#}I^uN%D*C7a zlEG>%6h%5nE|wwcZp1UJXRo%v4OGzy_(w!6VwIO6!Yp-R|AIM&QuzPn_h{v-Bj-DGm z`s%Bzv#X~#pMr7a9gP#lrhMv{7fWjF*)cjt2GWX#2jvj?9a?$nSPw!J43Lff<5$Nf8T_=w`^rt)F%=;WicdztMAN4l`<1WkvQ@KpefFbo|LC1}cCDN>1e4jtWwX21 zwXAOG>e_YuwNGFB;SYChYHHii)ZD!5yAu<;AfL2r``#^k8yk0BxOVUCwNE|??Fvn? zp}cYAGoTV*RCG`!2KCJM^GpTXo``Xd2}7}ogMlHzK|g>wCfkWs!HIQ5@>#MY%S~oc zQjW7ai@l>~+a9Z=(t_EshI(y0`*zk_9(m;f%(gT{&x z1VqJR-R?mCb>KB?eM+Lzrv|=S=Y!L!k3gHr4Iv3m^daf-gi?W2)QnZ|*gsfClZ_Dd zie=CRcKo;z%?A6bUbyUm((8 z1&Ib=fYoi`xR}NdraZfX!C5Ri5@U|0ss6_0MLs^@8bYsg7@N_zx^}w0O1ahh*Y>Dg zpN>S+YdkzTw=4yLZ(U%UsJ=uU03Htv|MHn|gHf>#wWT$>qtVOVzKw zGrH*ss8woJc_!1X7H}YDZZNdcv}*F>=YK{e8>|0`8o}%j^*u6hm<;n#_6(hEQjXCT zX%YpVm1DPdKxJeo@=UNgno{B(&7Y2<;}LI1#)TPJ&zP2yE0k<>T2zD#u0l+EJ`;uNj1|Uq z2kA~L|t4I^UaRSqun%-OVVR#We>xj>`W<*KXKUA#K~ z>d~X?%F~I&x+S9*Mz3617u5B2`_3*~w$2v_tXsWd=ZXzy&aCsAX6w4vFHq(=9?oIm zO%8DRNl47uOtKxcE!bRz`f!w#1bun8#$p#uaW##|m&@jKF9+9y#7NJYp1|~|BrK=7c}A*bz05F@Yz?|b`MSOU5&~5~ zFEbYTVICG_bMybewBllzlo?@Nhp)K4MxNu$^7=4$Y1bRu-`KeE(#YarG%_!J`2Oqf z@7;T;XU?2UcMpE`;Ct^~%FN8oY-_u8=k3FXFP%DnqP`p-ysVf`? zWkRaN&sI`mMqcRCJ$elw!sTf%I1!L5(iH)~gVkh;I@(|&)?x*7KB*iY0&1?#w6-5F z7yt+z2tnltD-8U8n%365VNf}f_O!OmzM-7^|A2yIey3{ORf|no&1?rTO>2P1y=|m^ znp_6v)yRUG^JYSd`Q({JXF57Y>Y6Gg31ZAA4vvqHpwT*V;3&kH!Sx+sTFgg|j6__n zq8@WT9??hJdH5WQe19ioj@HMahA)&?Btdxi39V}CPLc|aXDR-a`9oL<4o47{ZO7p;lO|L! zynZa4W=dyFa04U=++s%@lw}+C3=UOOG9p6?GaE&$_+d}~fj#qk${$wViaiY6G9D`Y zEqPDVym@<8Tphf6PD}rcd8NFt!$|rV z=$R%3zN1s1TP zq5CXp0TF!vIG0T<)-c~+i|%w8c?7;EDfu-a)0q-9?FO?FL13bVUav)K$pcfzc>#CZ zJ*Y~x5MJ!++uk>{6jk?XCpUc$x#^#{p1OY6v*F4%44R+YJk#CW=B}zbx99QB$M3vz zZtaFm8(gk)U;pUMk48t&%}%dLuU~)e(EShZfBf;e*u0h9D^sa+_dYm!^j!a7bpGIq z73buo=CZ}uVRUZ%;wvXFzW@G=b9rSfW));X%s`w61!qzCA`GW!W@JRqe#V}gk4Nwc zQ!!%4hzbcTJ(x74mk(N{#S?ukUw4r!a#C8*hMfxQi&XAY?CtyM9)zVVg(lUk5*0IR zqE3gf1AIf&?RUqcQorL?^c1P&Rg;T>=`~u_cN?IPoH4!%C3?76@16w9w(pN?YiKmPg)My*R6R z)aF47lEWK^(Ltg_kbVf7;T#mw;91ZO4|-x@?5<4-o5YK^IRNp|6=g( z2D!hR=f3#J-F0tdaNeVuow)}Oayx4t%^MuK*QIdB4u+E}TWpzD_^J{iID2hjiCnAW zhgiI`ALk!BA<(uhJIR4nQIKnQSby*~j#1eL<~XaIt@k*2sJKv3=Y10U_yYaXT{Ih1 z&Ww93>YPIyJp~s<6k`pWb4}IS>J!!ZWG0pyGvZmzS2iuJWtZUX12YsH z-X?b>!5v9Vj6jp2WrZp|4BC1NxudWeuILcUR~iCmQ~@hSy<|d53cAVw0kK5}w#FG4 zlGzmy(Bp7RWz)ruYsuui1pbtfDAgv~T$7|-z8~@tN-+B4_-ygsJ&98rb{P4+32TwkI zx?_AQFTFH)mG~So3&$@p3n33=|0Q^au`_Iu&k~%uG+lz{p^Qmn?Jhh3hS-tjfJe94 z0tW3Jur%5W#-7#=O&o?x7x9~-Ay)sf7<7q8%;#d1jOQzVvdG_t%F1J*ZvQ4wXh0+9 z#A+2&kYK9|ISepBdE4l0G6lm@)oBAB8MI{NT%6l84<$^cR;!945E7pz2p%pZxxoYP z6w4B5ZpJ0KF6K_By=0uLY&r*xNzwE)Qx;}9R$-cwk$tGh2ili~ibC|KQ2i%}P)eZ3 z%Om$TF&zudTM-*u?{|OvKIDe(A3e&weCE=UQU6T*aW;4UkPfi)C z(&G;BJN?tf!PKX78hYNya zDA)rH8zG(>jLPF}5>$+2z=l9iAciX}!hk;mpbaAzR5uS<7!t97jnO;R%9&7-n_ZJBbDo2 z9nWDp=iW>2y!62b+n24VTG8IV{os=a54JB@ymayM<=fxfvhUFrO!F*im_J|JuH_L4 zW+)~8iMc7qSCxDyach%ptHiTWyruJ=+F)ZufPA4y2b{0}nE$gG0R`7ojqkE&I3EFn zhjMtETA3Cc*B|4;V0-z3l)~%ZVk)?+QZu^Iwur-{%%VN-0c?*7VMHTTMiFlbnU9vE znGIgi5_M%mITdec$c2sqq#~fo9wWtyKg!DTW29_^&|aylI%A~MV`{8ZHnD(Oii=rH zf{=zFtN|6Il5z9liZF0-s1n9R5VRrh3*qj?QT)M}cQm?$R!W@$Rf+epDIO&KhA2QL z+Usn?DT;La%8nGr6JOzr>`73{o#l95GlWW(W0e%UYU@& zn}VasJD>bV$F!K46>KHn$DKMwTJSga>5>nc6e20xB1%$zvID^`)Xf!lTfw00c**!m zSm@eX^~WNazsrpBm@3)f-mCy#E6O>r@iB6YL_JMgcGa@7U-=iG(x3Ey0(nyOb3F*2hG%{-2$-7W5qMRsO(r+`bC9z^7RE_&Nz^!`XCjg%kYIFK z(_6b=3kJoqcYrOJ-mXv_ptqzFS`kQ=TQQ5aVbKh#7Ld@Xg{(AnYKe#qe~1-lHjzo9 zqfxehoE)LDwGF1y^3t;0?@ryxFs4HaGs(!FR_e4&EPMJu)&p zJicvc^U$hQ<5jU7WKG8}_4JHiyBWP%TRXn+;>Gc4<_+`e)p6raOUwAVlP3=z9PjLw z+q-Yy&W>mE4l8d^jvFfas1g$^d02cpJz{?;`zrXGf2kj_BUQxVo;Vp4D+-v~v!fh) zPrst0941R@JN5>O0t+u6<`@PKD@RRYlVFG<4jW&N1V~VbJ)%N_4sE$8+d%2aUOM|* z3MlC=@>nfwsv}6^Hx;UN02%&lmcV17Y`51$cVrWGPJpWKbyp+o)yS*buSI7^m9kb) z{Ygkq*)7R_jCFj=2MQiFTp(n^HpYUv1QZH;d@9)KL*|Ap^(NsHG-G(*ey^ZbV7wj6 zWergx@k3J2sl-JALL#h3HWonj3nX5v3afmB+?L63gl2U|B1zo>Uh4-_E6AmFm(I{F zd-8)+&ur{ssq3igq?5=0nd^H!>%MyZqA|Mn>u-PU?f2g|){JafIWjO{{PL%7{q&pP zL@$T0tu>})y;;m4eDC2;9{%DN#&LIx8ycVwe)!pEMqg)l{8)Q8M&Zw0xify{2R|_8 zSo5s8a}ODZ@&@L3DaUaBU_uWAEci8Mcg0T`t(&4EPMA)dVviHYDD*kG5d}KOj`D#K zUqX6BRs1S1IbpcVUrXMK01b){SF!<7n^z+Qp za~ws}kh5HO-M{V0b?kcj8s1IdK(hG1S=W!C*55 z$Q8Pw2*|vUVWGPqptRMzv}KIPN@Gj3+`Qi)bq)c)Ef{&n>Cq$63$4+Lid*8X-(kCX z!<=fPWTz!QvgBcj@;5A|U^OMtk@+?ou3+F9Gc6HLE)!V@buZJL-nbLPa?KRWc$rArfS zEiDs!UjF#y4?mo!ZEc;{{lP1*OjPKJGTpK!UVruN_wT;FZQH_$g?U4Q6PuLMu}@0u zWXi+RPaSpxpflE{BvIMPpc&(SG8gtd)sSLjEh##mlNeTivB+I8Y35R4ykx{rL~lk- zHyN6q6@+^5ndBsb5=6uT!76NA(P3C=7)*@_#Zj%kzMJCh5d0vo3RqOwhfFR;Tqre} z+y$x~lOxi?Op^@EUHmZS7VsQGb-@>oz-UPc04V>WbUjeq_cajqfSbWtp)dul0W4xs z44Ns^6NC}0(4#>AG_PiX8kz}(T9=E-P9N0_-EdiK2D4|5FNoEpsu!T2B9;Y%7m&LV zaE6sVqKc3li3_x)Eern`_4A}Rf@TB*iZLhSg{WN~NMkx9wq98S`b)E2lj_iWhZl5@ z300n|y1KC&uRVC}_U*CRT8rFLSvmHVcV7leeQah^wyCjkY?j|N$2OmT=llmBj3t^o zBEjI;xhLDUjV)R~Z|T~3D^`r{J$P!@!N-rsX#W?baQUEFusdc^c_i(bTrdChyp`r1 z9sM}rzL5f?Z@Vk@p5EolQx<%k2wdIf1Xv2Qq2E<%I(Ws4swc?oK6d9|9No0_7D|K= zAI5;)9@&Ty-Vc$It{TPcb-UqQ$|8}72L%H5&Iqb%R=Txn5|vQp5wxeEgzG@LBAFF% zs94bm-w@n>X3z$%|NRY z0~tQ321GzG1)y=#hdrH`c_8yKpp;k89bx81q)tfzPK%ibrf)3nk46j1m=b0ls3X+{ z<>E2)qTX`-N7vuE{&&}JNelf?f6^GY)Hfft-}v}wWx>+e7M4`2BYZ@=AG zUDgsw1B7qWN{ognK>OX(?yNy5m`CokY^Z)dp-fMiX#BJ7mkq?!XACA@V5njU^&Rt7=9YTPU~PKOvw}_-SD{t{vid2#gnURuDu?H=>0xC2zq9>Nx|<08u3*)Ulbn<%{(&TqWrU8u`z^{; z5gOItTXIHR4`tmc3}k2B(UdzJvhz5L&tP;5!uy=NS~0uP8j`UClwrAQ12nIcGI%Lk zVMhZxDOsXzdZ0CjJ*KFt;3j)Vuz^y7oQ_Wl3t_LvR5VRWV^<5LJF!X0&Bah2(AIXm zfQMgQuu)1T$)X`}LS-?tXi3K+2PpcJ{(Cqg8}pbQ*Ao2d<1%4W;5n5{Rks4kSdGtX zR!2Cf?O^{)S%cro!bz@=BWD9IzK+MB6;e{Y+XKf3Rx@}=_zDk-ioqqYCSG^vRE^Vg z8U42qC&1)sEn-ZBw!8{rvHWL6Z5m#^;!XKn{pd%Hp|ll`FK%31yfnYt3EOwb@wBCZ z-nn3uGSXj%pXBruXd-nkXXk}*s|4Yd!g}yXPO-w*5jT4+W$IskW347M>?Yl-a0~+9Pk^AhIoP= z*eBPnn9I3&zpItsDUTXg4ho)^9x|`J~-tD z$_$vnJHyo=B`~$2qQRrE>0$=|SV!ky6cRmIF5T8z3&XUimz$_0j4+eg<&hLL;{@eS z2)7D7IrJs?MneXi4U$xos00is*D3){hhQbtKNNa4F9zIUKl}iX5=O;^`Aq0i8EcB*o*lf}~C>z?F zLi4*0P{Cj3&SL85EYgTXBEROKJYAWttvy@jPo>Vj^~UfU`}UoMC&{lnSh{?9XXn{P z^9SY+4cWU7`XL0JUx08HeUPnZw>s8rrw)17&#crjReZ>Qd1^vi2njU}z$DqnP zPVaIdQ=&F*FwJDlG9vHGT4>`6w0OtxgViYVpuUub#ecQID=;S^n zl9v1Fp8jk7H*Y>&czJa6>HW;xnTd&~hfnq%JbCHT({HCzO;4MiYfaB&qK47SPl%4T#_7yMr}KtiMeldSB2aLvS?^1Puyu*$%e`U!KwN z&(v>i@d6)Fyip~E#yp$d_UnzZVD!oQOpL^JV}HDkN*bdB%;q{f&#;*{8YTz_6r&#P zH>O)v7#DE3olv<#dsSaRGjZWFAaGVF=3)(~wag`?oUB8MU*;4@_k}UtB-BY;5Kbk~ z4&cqy3e1CYfNu;fq{)LQ!{MAf{bm+r5y%35beQW?sRwMi9wM$EW(u=Qh1gU#*aK#n zDJHx^7|J7Laek=#6UgJ3Tb~>FkcA05jIf7{E#(Oxm#C=hQ$>%jHlU*MOYl4?fh}0kVtbFfrm3ZG>b@k+>lV{FUt?pmZKQK_WVcxoV3l~;>@AH>G zKXIaJ&eqXQqrJUVcfR@EZ+`Y!RXh@@YHCA?UiI|b_wQGA)pmecT=n|fUz>RQTi-fg zb-oy;C%dVFKPw5#u(!!in)(^bdMVc}hEW`Leu$2tjtIda%+?jKO8743|IopOOJb(s zwE3J8su+67W!Z$i_JW}!*TpLqJl7ZSccsqmkjKYM9J0=H(C{oznHIKmVt2em%8OQ2 zF47H`1&N{Bq-^w4?*ydJC5o;?`j-ajqOvg!&W>gkYDt}~f@YxLffSA3g#GV2 zbD5A}V^ea|X}K6y6XBOYU>pQM8FL6=iFzz3T0jBA8wCeZ^CnUDqb$pYdA4JY#0U_T zJ-h)>fN9G*qK{#upYgU($R3{qZcbaL{u#b9S=bu6ACn5Ueg2eYJ-_kc%@I9t@AB=- z*RKaw9T?rSC(tuAG=F~J^B+I>@uf?Ffmwr?_zb*p>a$Zn`ca_2eMx&)SD>bOVRKts z;Nlka{v;8Vh!7>>uc1-6ygsBLkDP+N3}g)dFD$$}vlZI@sqvQoRo zVV=_tf~BD_&jcisESMWiwOHQUj|z|^f-vFbQwdyE)nvDz)T0u6k-*Z=GjNPZ^HT72 zjRfe4`k4TV0RK+^^i)pgK5uTLw+PGZ@WcPI&6Dhq3#AS}5i>5f$E zhJnG(jp{PL9yE?nZ-}r@JsMGs>F}})BagsXVORxvDv4l&u&{^`xIVxpU?iw$OQJS{ zjy8%cEVLYplp|>fRbaRR-9iwyuuv21EHnTm13W;k&oo0mU)bks#x4`AGvXv(N8AU6 z$53=sT9SbgK;L;hoz*u9Ot8Y+R%&7f!!{W~#JVGrW>FK+O(!(nLN^LIpz+)vo$crnC}x&;b+_5CVM<<$h!a@PI0O zja4*wMu`h9d5B=lo^B%utU|Ksh$XLv4)P1c(r*oJgo^{`0oF7)xB&DBMNL+K?T2WG zswD%uizSCZoeE(Ti!|NPH}-)Ql>q?|EtPVxys$#Y?T$hAKqS|!N?rp*npC-)_kccy zFS*NPQL-e|M{)?{SS9!|eq&)TXHaA;L=q>Xjwg+PMIFg8$EunAz846T#S&o|C6tO9 zMBv(j!QH%}d*vvvVX?U26(o;ng7yk8=}8(I7IR76=u|?%7S)d^s6qU@(W(b1F3OW8`fq>vx8M2B#OTUBE7z`_`17y*)z|+0 zzn_RjA`{bV8X5)$CjRY5A5Faa`ulfZ|I5Fem{-v;t-7PWexf%AD#s5deo*wwWa4De zrS%a#cE0rdE8yIXl5et%7C%#xL9|uDU}@1W8GA-d)o{+av_J?R{er{oka5(^XTBydfeA!KHd_x zAUlHDW(hhovR>X;wg56$HD=CS21MV~2!mD3TBsNTGUx?Ji*hL=n@uqjqfcHb>9Oj# zoK8=RHiORC#F|yjN-LO%ZVns2yR74GMm$1e6>tJ6wozKaUJir*W<8P+`so^rItZ4S zs}73*yC9kw?tc1({=D7{kv79C9F^2u#W)ifW@SFVekT2 z0g$37!}LlDyY;dG;F`Dbv%3DvT#K92>EZ~wsck?ZTOZ&5b#)+26w z^YGHnPR^Ef`?l9149dHoc(%QlK~YeQn?W&)Rzj$8~1+g5CGt zzBzWzXmq2|$T<-p2#^3lA`pQfK!PNg14L4!D2k#)iIPTzB8LkJK%>!sgzud1#NYXyZ+(l4 zwj-tE*1r78D@Ah9H{Uz{`g>pcQjr~WFSoa(^-$KL+Pj+W>aqJ2eRRM7(Hp>CU3r0< z!a?K9!AB(`rqG0X^hNArIc>vJr1Bd#rqFdLzn45iB@{3G{~3OK6Cnq(s^K`&EDD8b zAJ$w9oDwV0CUZ$L&W5y5y%*nvF&>r8ecS2nToSQ}uBi2U>t$%MPl+GFa0{$5yaP6C znY2)iP5VbFFs4|eY5*L*V`nYxS^9k)K{3-jV7j4$?a3tPH+^7tvf}6#XgrM|Y_8RU zmF>KXA91L!4RREKq?tB*IL77+~!%$#E7x73rx`1U)@;)jd zFgObPK+(kr6~!1^4)q;~Er%xm&J{JV>JuJP!N84vKSr+*ZG#yy~Rw z=MiY#5^3GMY@80Mp*GnxZ3lP@p7W=*WY$|7lZAS?YRq&hexcqQmAqEY%LfE+y=rZt z>Z%a3Spz~a+Ppx)(Z)Zy4o1^Zs3TUl0#nKQTr@A3?OzAV>ll3z9xS&=Ty65j9H#8V`&HqA%*dh5;@&8Wyz-v6u>AlmmQ< zMZ*BwQE8P}PYquRK{y=9i=Z=LfD)%T@%LArXt}Q1jk(hU*a%6?+t-S{fj{y5t>+I$ zSO1SMefGmoJ$mWf>0<}?F3fhk+4R%l+1U?Y_`PR;?};Zq#8mo+fAotV|Kg>WK5Tff zuFmKCFqBCaE+%ui55NEVuU`N8&p!;-*onl4-}{3%-~90XFMRWzFZ}eUAO2te>)-t8 zfBKtW|9bm}+e=0j8d}n4_jA$4R+PJ}|D{(J?QG>06h)AdyR8GfjN%EVc;GOs?i^rv zfrSr%L=`_*_YDXiN}A0yugHFgz@XSSaARl0*~ORwVKknQ}MyfRV=HOT7TTG=U7 zx#j)1t*(~~ziu65{SW^gjIWo+EFi*5udxTb?ilOZ6B&r8k(EdtiV)Os_n7 zreNSK-U3NSD@_AE58Z;0rjN2)aM7#hQQp9v%HV}qh6?Uy?G2;r?+UpjidM z+7=EE0dpk)NUtj}4IIM=rY&{>oBD-f$N8T;e?EHRS3mpm`#060 z4|=DjC$3B!J$mz-fAh7!`QU?_`>su1o0_`$kAM5W|Lu3abMu+Sr!cT~6H9+@CcC?D z{?1?jm%sjpf4CV))4cc^Sk0Sn zVidRCPfCBwD^m(GN}uUU;Kil);+MDmgl|;)2{))HhaYs8O2EVNlO;$Et=|cu3Ibky z3GKH6Mc+gj(3`_e>Se9%%C%y*5`LxFt8=dki}VSm2=#Ugejls$w|6FYf4{ELE)-Jk zBny)Z2y~n9RRWNGS@s1(O1i-OgqOqQ1~g9(25Ydo#Rq!82CU~6y-F}FVycewSzZ;J zpE(S8D_*aP0-~l&!jqJ)LO^2fMYF$OaxHGR4y8aDBigto6tlzVv-Y$*o#|-iaEeep zuOSM@zn7)Nv)CF2n6@JcO?bk@BJm`;Bf9S;T?Zp6Z3bH7T7gTWIVmtt0wF01xMd+g zc|Z>cW)jdaVJ#g3F}xJ9djQifVbCEvepDob7%1SCW7ug5^etj`x((Q9No_yXzL5w^ z1>C2MBnHwZ+z#us6i0{|hf~O-bpC>g+lT((0nOD1Cy(r;N{S{E{A& zajo=JQDsWylVVkw^tN1nDX~d1^G|N#QDIoMQP8&nzkn95=J{eU;ql3d^c>#Sq*j= zt7s*_bU<|`VzdkxEP?ht#&mz&2yBnVFxy3afqz9UD}+ds`kv=Kk9baxb{^aF(8L9) zaYyYA(9ySVYe6r-*}4mH-oVU^69*bYat@tcTXTX|%+mF=lU{#@u1%=23>8O8=7B5$ z^_QxTlAR|#A(1zv4hjE~J0mb%O;Jx`;fJbsd7@0yw#0Vhxf`p8_jh9l59v7<~Rqd`M07wG^&w#NG zSaQD?OCJ>}C)PB23o(vZLUt?mK>-aJ4taq5`-U${#4mud)u4u0YnX|vnBB``#0q5} zm8aF~U@_C z(Dm!H%M%l0W3!n;3W@3L!pstuDea%#zfp)A#CVGaGj1_we%UrCi;1dh$`%6ZX ztu;ZJgl-Y5Y8O}qyIK!Q@{+nkzo8!d46YpI5MJvu#E>1YE| zwsx(H+0X#7_M)Vm=;`@mup9VjMBvvbjHJLyn2y#rH2S&B_EuhL1t=jH(;OS&v#%j# zTl~4!K(cO0_kp00-QF~Ixn`5e$AN;30|<%vWRS1oRucj|=2klpjo!|O@2ZS^tW3P;o4uOV`76vpjq>48rB{i!Lu+}Ci8F<447p{F6->n65 zMNWbi4!ILwhi0!gjVUCa!wx(!{$XJW6KyBE@_s65VVP09r$>>D*2WntA-Bz?`onyn z8@CZcjU_ZOr#Y>VNr(R1z*NzF2UIbQU{FjYz3)1HE#-)+50)J4tdJ#mRHC3Jtx`f#nd`D7ZS5Hv^j-E}9QCL4MPsP{5}N^ve>AMPXJ@~aP)*>FbddNN zNU3?0dIF{$<^{<{(MUq4Nn!^$a?O*xC@Dv7Qgih|hawGR@61$DTUy)Y8(- z+G8gld-BPdt1p~AJF_X4>Wj6v&s==|`I*J>@vU2D=B9Q}?by*ZQ{JXt6lUcLzGz>^`nQ0e4^V^Qcj2r>)jEZT1wdr65C|6C zoAGA(oCBHXe7Ypsl8_~0&~7$>IKV7=gb?N_h9JLr#Zd8x~Ku+e3^ zUzat2@^NTEDJ?EZzMAHvfGbUzcC}R}uRz*z2Rd*U@%y_JYJ)`=e9fpwn%Mhj(KOT? zdN`Oj;q}3=51Y9R^$?0dDABVx4b6R5^jw;&6=1X}fY*E?ffcF(wW2qt5to=^)%5gq zZk2roC>tyKIQ~RIVvu84a zn85F!bZ`Bn;Y+6{uReeF>?CS7lNXnBlT953Y&V^p*|B@a`1sz* zjlH9Frr=hJ@DYmub$}v}9=M_|Rz}E(-?Gd|M!lpeEc;?rT`Y=H?;Z9z-D6s zR3NNj)wStmS2#eu8$YX;LqlSk)g6$`GpN1WC!qmuyk3J$j?044mCFmX`xZt3z;|@n zvox~O!5I#TJ2BEZGLhp1v~-W0&Sobrf9lk!iE~dqHGzTiiCrTjn>SAcqtS`U@fleD z2{dzdPwXyU`qFJKy6#(ebSmUky^16aIn(t;2f8$|OM)(!&)i3pmQmzKz#|sj=hj{J zvRhwg@9*ZW*KjFS<3$ z1#>WHZUqss`P*tvRdRL&0;ZUFOsyq8D@fT=c)I8jALfRD3^shgd6JaDHg+If6|tG% zWvxXs^G=4$?d}F^ zd#npj?E)SW+)J9h8THFZSjT9Ml7vpc3#{N_4ULwi1i!?my?m{Yu0A+Z1s+u#K4k&_ z(@HvFwKJR!(+OPvOjp+rz>LAs7AA+^ZYI&tGJFw)0(?H1Jg%D(Dr#~VVWs9YVbck% zM3-{B^1ALr9f%nMO4n->P>_sNuZd`A(5@6$L6jsGV4(Z}_yH-1YOlf*_)u;8Tf~5W ziTv&yCS_Prv(_&#b-krR&$%Ui;z~*Df4Adg#zv zelR;YHnw*5)cI4#kFWJ~wzWO9_E1?Rn9QriT`>jK&sK~9^ZLxVlO=G)4Y`*V)6$c8 zwjPEaxn4i|wne)Rg$Rd9cVHWU0jK(WF<2x^!6-6ssT}L=1Z)eU$2+O%{SGQGu@?t9BLzbV;v! zU-uypVMU(=h`Yq(;s8H)X%tv%_ zgVt5XN(gR(ZcJI3N`8nE2ucb*F8-ig1m#?J3*{|UZe97X|IStJMp92t;C;$FE7J;c zL9HW_65^5Y8fk*3z`n3dG6}0l;mnyCYpk$ z;yFj;l1#?}RAXpiX$eO4us;P8{q5}!MevrQ50?$FJoz+l5E};oXYtkH79gVVN99^7 zD$8OTKrTcpS+GHXB>*GX6|ExQ#Y%}0F&4p|GW2D96ud;Kl!(HUE@1vqjzX;z>mbWd zDN3a+Che#_UGu!@d53KxcwuzwgJz4^;_=)F793QIZ(KWa^~i}6H|pPxL~iWu=(v%3 z>#ZA~U0AsB{`Kq6J$GZ<=DwYuS?<|6GjrpOSKoW}rI+{{d|8WJTf~}+>|w=9kp{V1 zbSw2CYgKLt^nH@?K*rJ^>4$kDV4oYOR)2K0iuGk&C95R7MH_|&W3iZ7vW>S3enQ;^ zB)k+i&oHM${Ay?&q?k@H@wT!;1J>FbjVKYv;n-B!4=?7BC&Rm{n6+qa0}VQ&SX;bd zC97HeQaT9UOl$E%io9}9CZk~VYm5UeWue|*7ye}M{-@6kT?L0D` z`Ps$k#pUIB-Q$VR$BWuiWn-AKxC*phZ7RA`d^PJb6|ie)1O}TDMLzA)9NelUc0uswH8a}<<)22d1p1_9UoskxxBo%xav$t zJUg)*d-ceH6Cmd5THR3lVpgT18D;e-d!LGOl%Fb^9DL2N>q`-|DW8a*?Hyq9=iG}WpD>O9T-Mur8&n597Lv4@5? z%rs`(@I?sT3O&k2JggyWk>G}4 z*klS&4Rp!1O^y+!;D)B~5!@6bWEGjRt2@=)l4m^^Jf8ys7xB%dTf-C-+x1W0Z{r6Arn4X>9z5DcAA3Xp3>8Y-XiPNuq;R~mm$3pGk9zA{G$Pw(f z$i(ZnMbHF0ee%pPaOMu49^B}eihYuD&RnHMOnp8^hfqObTIBjE(t}>tv@oMlO0|(r zxvB*(!~z^QbSW3y@KbPKW%ez+oPlz0txp>=t~-sXe-9dfxmgX|qjAIqh=z+3jx^Ii z{>V_RB}*|j!$hHRWtnPErai7>o0XorLg9^K%rdpYHk<^iu6&IbE{N$Bs;=;Ve5y*V z7^@Llo@N2n+;n?;eOi@cksdh`+p3DZS&L2x01C_v`N7Z;WO+HrY=Bib2`feLEU#Gq z6gFwa@K!?{T8|;jA=?B+qSfpOa~@M`WTarAw}E|P`X!nn1kak=RCk+fh;pbF`*+}% z{7YCV2ldz-a8`#r#~G_Fwx^7ZWUl6xqBs3Z#!W?7lJ~c4-Mat58)vY2eLq5<{m8oZ zUwP^BORv4QzrUwv|BG*3y}JLYn>Y6#SzKIL*uT2(@V=#`)B8`a*Q!d8Q>9Jiht+Nk zc8E+<@gL^9>QQ0ng{eT+g>V;v$-0U?DH!o`FinE0kfkX(F{l)CbIk1lMO%!K@e0hkcK5wfM8JdHc4%Egvfl-AC%k3GFdHd z2o+MymIxXG?d?BudA$|69^8Mjf!NC6MHrJ1I`0Xt!9T&Nd3Z6bP(r>Af7crhD;Qif zcgH~NH-q{P7AVM=?nwp(5Wpa@HDAds^pef zZ&%^nt^l7+Z1O)DJ@{lp_LBJ0*Ps6S1$uRwD-WF10K&M zYjAmR|Ncu~{O+4?Ug`}k`WH8Cy7b<6zH@0V-myD^!tSN3=g!@C-=%y_^K23x^3uZ> zAH8_~{KTa)*HzIvK}}pOVjnB+&$UtRlU3S9T2*DfN$?3A?APNAObpKJi7Sku3h6tA3B89 zf#bH`Cd=cOo;-14+?UOcpLybm@tI+aV2vXHAK$TU8cn8g)U4*m=kGiKU#DTNzClT= zItwLjU@=w+7FUYLp-DwGqd@D{%Cg?&l?)bB(c1&*Ia03#tXM^9CRodPi*;-jmzs+5SJksz7aG~gD0G@3d= z@du?|<|3X?1LJbaHS|eeAVI zUVGyW_0{*#O5Bv~!^oTZ?7QzG;|r^&_U_%YM}@FeBbh|Q@#w*m2Uk{x)#2NDucAC* zL#pk_y2s`3RL9eBQD`?*VrS-%SbKq{eTb7QEA%>kyq=)TsQj^9)pULP45 z=>)D)G8z>kT_l1$6I8{H=qq4}q?Scetk+GqESAi_q704hSF^D^aJsst?vq3t;p)d$@qREbq?}2YI5J;;5707yB#Pl&B zLgBovEP!_kj>xfsSTQO4VxiiA5QKf%5e4!bv33N5s<0C`@JOQV>+y2=>?I3ZlCejHWYa$_@PO4Q;i}z=oaq{HGrM)TK*jcK0lI zE@v`lUU>gmYz8~?-dA3F>CDI`C$Z4yEG?aR{mWlIV|cfDZTrl{Q1oQ*sU*%PuYm}^@fUNa|E zQKzC`sc04}1Cg_X#i4kqWT0-XZyQ_{i=pnsRsASAmeA=v0^fwJ3^&{y22I&0yi6E6 z(oay+Al4{{y?$RPK_l^)ZbN#$IiyD}Ad>@M*lxU}VwcECWhq`tAcPT+{&Vqi%x$?P zMTfi;povhn&lP7Nk|4Ip1CLE}3TY57A!WCf98xy4I>4}J1BLD6IU$n!k#^6p=)P{=4TLmpMCJe2@o{uqCdd{?sWG2eHZV;PWZEB-tA(zQ;Ks+Uoz#n zy_OYYs;Xeg&FYG?HXA}9H^MGrm0c%P^^w`Cjh$6OeIv38(cmuI6L3qz_6dqs(N{N# zBrT^x!5d(KLz$>lC?MuVBO9Yo2Ff!O!G{=j#{&(nDJOteCEiAOyv=#dnhtaW!mkGg zk>8=KM#`4L@&{!0h=^(cq+-yDq(F4-C~zj&Dmu4r!0Hg76*Zf{o)horcn#ox%;0LE zu>mu;A8VZyF&20xY{(gmnn76*l)Jl>6)T5qPjlu-$r^Kbd!7a7thks2gQ%FeT4P8x zLDa9^(418@p_d@E1=6q>nWKD7EXKqk@>iZ-_(Ye7djWp&B4Qxo@%okLPib=ZwagwQs7^xwuQ_l5?vi@lE4YGp8=$+ug`^a z(I9%&el4Dmi~3s9;+s5EuPnpNOqDg84A`kFmXJ4!<$YORB4~ zROuq@UlK9=2934clDq>XX``#Lhq2!YXiX&2lI`W`PXp%1u zrpW<6-awS>_b=CIV58)HhE=FT)JDbFxE}+TzG)24;ObyChNXd~4kXI27quEbnd~Rk zE8-SS0e}J$OjU#&K`qsYVIBy+8sR-s2DD`kMA6@)uFU^i)$KckjTmblLXiBx^CQn& zqdUL*;@5urYv20T)l=TAcXjpZjW53P#jk$#>ajg1_jo*4KltGrZ(Lm%K79DfE1^>o zMqvRIp_^!9BCVJAM=_ima-0domDq(b1+7f-m}ta?J+%GEYmYO3Efj-8n*D92JVM8~ zqS44mL=10I7;01iE`U&{*gFqv@ox(o?Gsx#hcm3AM!#DQro{j7@zWU40{qo&+ zZ)_gx9z&b(+kfzlKlsHjZv6C5zxTZxk6~WkFmC+tPyXb_)c|(V-?;wv+vppvJ$mfi z!^bXOMAz^wbPfA%^ldP#&@iTOB}Y!?l)bx8-&z^Trk3j)rF_%%+5}Z*CenpE;qr$g zNL1EOr;D(?TR6DedZ-(lNv|rvp(a-vG3>u(V1QZ*WwZ!N@2vE3M_NmM{u*>~nkmg( zK*NlRWMg49T)zbtI5e06VvA?InXoL>a!!;BYMj@s;b2O=c>o|eUBTon$4}Ud9?z$l zXhYHrEx7FJ*kCOOrQH*Jl1jZQ)8LqoO1+fiq%a4Q1vZZiE07Epk{nhYVQ>jnsMFmf zN1;$)FSZTP ztQN%?pecM(6EF*2l;@NiAX)%_4lT3A+?*^%Z2VvIN&|M}mhvIj#v*cv2E}+3IkiT- z4luD%6!i@3hGhE|syg2mi&3fbO>7J9p7c`pVHw#qP1O)v-uFhAo_feQw0C-R)Oh8a z&wTURHDkxrl<~$_ZhYk%-!R4|CXBvq+l()N|E;%-XnS*WLxb^K-}|2N`2F{vIb%fH zYMPo18qep9D-S;Q;Drl@X3KUkxZ5aU`6?FF)oKuoMu<;bo=>4p?5GSw_(xF5I+WLeW(N$YQIg4c%$chMUCU(69GUPBBY z2EpX1+QT6+as>8qfvNhQAb`?P{4FftBxEoM2~ER{aY|0fIB_UGMotq)+z56aza=eH z*YqeHNC4!6NCah^xEsL|$_MEZrpq1FmfHakPIq*CAMI`Y3j$=~14+c=1t-ArXh#Qi zb2g5*X97Jm1R~VhAgA^1Kuo~KXY0`&1rQ{H)p{CumciEK|2}}j#hIWKbQd!NkHl@I zfT<-;0e6Di4g;dl1}7k90IQ=~ug3;n?7zb1c6+)*gdOYAFCKiV7n?ehxM;x zIM5Rf_%OK{A6C85pGB=u&J5OR7RDcaHcp1~^)~jYTN`+#jz#&1?NMVOw&?!{e}e*s z-NT+8qqQ0Fpl5sgbj$R?gIjthx+bQkwhV0@*t&iDmZVx=-?*i*{1;W!yXtn}A;lPs zn~dN;s3n7enV0(5pSFJTvuJ_KP&4{d*M-h7rubjv^QcMqa_l5Uhsm9LFX` zFE1bnh&q_ssh8_oxz>aa)U(^&dJyAfbSpz)IjY&+LEUVt6HN)YLNAsDf&9~(_r4kn z$UJDf)iG5Qd$)B202;?P?8~{P+5RA(+_a;P|HH06Ua4oh-_4Xt%~cR|)q|rMR#8O^ z%ZL2E!3gG@Dbpcd`X0{_#<#sP+BC5(wsL>w^om+9)q6ZE{YQ_k*tG^KI4jGmi>tl8 zE8%1ynaKz%LiuQK;V+rRA&*J_xX6jystJq9*x{8=kO4#i0d_+;a;G8u?;v190T7?? zc?;(bg3^>2J9l!uRStC=H(%(lr+rtVgq_#2M|*%1=WGy2R9Gx zFTvHTwJ^+qW}_1vkD_-Vv&E}>+sNpE8 z{ftc01KCit{x8L7eE_ID%xbM{$~nDeuPo1za<*6VY8fuPDa z;b)mCX5^;qI$dY`p2r(>IR|pOq#*gb!&GEaKzu{(VIbl9u-z1>>+fRz4tuK6RzZ-F zO-d-y^IS097YZrexJ|G^xKKK9x5|I~6RHEhE>;J2c^>i{9c{aK>d>)cT%%QQVZ+zz z%JMQdG&#w&t1YT&a{YsYT(7SSJ1n`8zP_{E*`h#7CtZv_>8_L?R?HQ;qM%ccL}3)$GDdBzDG|SZ#pzho8!kOPbvh(5*ISQ#hOSbMu>O3^mAW*4F|d zRlHJ&ojh`c>+yAxutrau$Z@$l5SD8IivbqvQQcZzQpI~a^$;-GVro_cmO%l5u49ck_y=krA$AL}S3N~0@XtVfj5bnzO`1qGGQSM8@S+GkWHi0J}B|6Tw^$snoboR1afKla`5*Kwv zN_QkAMUyV>VsA5GEmJnvpl&PfW@Aqt%puG0*Z&MY8X0qnX)r(%56zX)O*_VN1NHNX zgQ0nQK%MvP^~|>etp||tJb0kzA6dP;dj9>*j z?vLwtDj(S$V%wMifRHMMsw(DD_!{P3@UdvQO4WE0(7O9mAXjsH2}eG1CCeiI->g6~ z)soqAhzFYyp&e>?(00>w6FkpA6dhwbO~T#lDDB* zg&If=4QJFvk)mT-u}a`{E&l>=Uyuw4R-V&r5D8$*IR~~-gnO3FVvxz;P z?V}lRn4=2}W@N4*pXVG5KLVb~>9)=FbavKoC5n`?tco^|z9#qpn;vsdcRd+TB}8yx zP#ZrU#^L1f-eLIX3c54iraRMpX5ddz#@=0z6WNi$hpkQc@OGoENpfy`zmX*R`-|6IM5Hn4;o9KFV$1wvEdb3f%P0 zot!VJ;qq8kA6Kq5;14O=^NoM&hQG6{OC<~7=K6Q{=exn^eprM~Z&+$E{L>hIF}->G zy-(oDHqD--Hc^Xa@8~fDzrxdd>hNKE5+8=y`QTOG_G8amFc8qipb-!ZDT?JS7*YMf z87HDs{SqS((1|Ra72+OujZ(lg#3wz7&JBjz{Y&ipn{=69<~sBK?Xi*k<*BJWY;Jya z|NcBkB=YF&<SA%DfeS}u(H9HmEIyJ848qo;0&IdH3=7PXPR=%bwT=<6nxo0W zoCf+~A`ba1s@>p>;e2qVheXl_gc;;0MmwS-EiG%&wJO)hH2k*GB7KLX z5OtKxTy)TVteaofemYsopXeL?#Zp>Xo(0zm)31mWQTBItKe~7h^iU}CgHF-lOyUg3 zco()KqK_VvEiKYl>&>?L>vYqx>d+StX@MqhZP=D2c@`6Z{-B-+-@pKA4Q^MH?(E26 zOBr1#T&7<_;!8OaI}2TF@#sBpyvYKGqN!{fe5gSKnMlC^t382uY$25a95EM7r!6}* zi&q&c3RikCl0wDU;nRLBsL9CabsX574AKTXKl-2;K8(`EL)HLf5dNhpFhA}bVK`KV z-#84OkK?25LH|nUYU4!bRHNAGX*~bngN;u<{&?ek_ut?6+|y4to>*IJeEItI#=6#8 zn6r3e2^C)ze{Qr_6;E2s<|=ZGuu`WO34iqNxqHH@=r{9Z+%koc`rg9Z+IbUFAUc>hqWw1Pzk&mfP9F} zLkn|`#s#HbTo>xXm>O8R^?=yn7*s;1-VWfVZS~&c4)(XQE6U9j8=(b1_%6R)-lAUM=?o8KcGiV-e2d)Vn{*&i}H;g zHaVx!lBFMV7l27c;|6HKkSK%{$15-(55d7=6yF-iLH-r@)&Zk-FJjy|%-Ng(DjqrF z>gA)|Gx3S;O_xWyh09v^Q)gay0qhU+D1^_y`TFbg7!RHYU+esPZ@)e7PsQW&peB2E z{@JRl{IR#VS`+9oZnbMPaf|6Xqo*Pjh{h6knCvgbv3L^K7&kiH-%roLFta{)eToUrx# zX6Ofob{cg9FLsC9n7YG|pr6tmbV@Me0@V<$XF(xiA*zZ5U&SWr6yBROXM#)tCIvTl zTLBP8DNC&En8KqiWC~6bwn0;4#4l~3_bBpOB%p&mG6DU-GV=_k`$Ulk;{w`6NefLvAO5Slu&_;zXrSW5a3L07SwS)q z_!mG7xCunzI#}4>%3F=8#9${m~yyq1f(F6lq+gnKS*mvt%b z!;QeRl=$@*izMrcEyd`g8sXpCRlv9v>=<(D0LM}Z$-kgkXcq1Rb_#&iC8*$blS5Cr z3#x6m%jS-*gUA+=_{vHUOW+aR8H@u}O#ppEE!5V23p5m9VASnSaQ&+$Vi_nB#%1YK zgL+^~2;+fL6x7-Z=08#`lj&Ny=injPzu;HeQ6%xVgXd;Z#&`zON3Vpz3Ki9?zlX*8 zEAXM$>H}_9>ww!7_n{7>o+fJQYJJ;H}wtDvL+U^w; zRMv!Wcn#Zx*3hzUZ(rx2K63tKnA{NCjXS8`LFbCfE~Vh89WsDmAEZ+1KS-pj66MrY z8eR4MqTHB;D+><&WBk^#@JOXU2;rg*p@{}s5mQUYLq5(sf-aTecmdc%*vFeSp-g!;cuV$&=Wc^B^mN=YZ&Z_W0t5fRO!O5+o@`q?d$#T1>CPv#`(xO3r9o zv?>O0?LA4ODmyPa0z6w)lcea~y#XxCVh=GdOHboObESvtZ`B4{=w44(Ed94=DAI5G zZ6MJS)OR)#gvv)biwYxH=nO(<2~QjgU^5o3mtr`ym<3MUKc`wd3~i4hE54v^?SV|T zS{#xw?6@YB5EQZdIFPv|qNm-e1|`SHhRT6Q+>%;jcYcD{tz+YFXe&0Ki+ z;Y*ihj-5I+WBGjbGxgPCTIZUJ;;NEb=^=e)9-FeN9FChV5bPb@EY@8?q*b72`|EFm zKy>9V)yzIH#EwIm=*ba~#}bMRfoP(?Z6RVO5G!+m`)nKr4U| z0O}b9>t7*aqX8kO8-)=`(oEaL_3TUpkRqawgX)p%9y47jOpI`@F3_~kKLES>*PbBb zvfqT5eHW&hj{#LkJbcfLj+~bUCl7DmU1&qGZ1Bnh4-EEXJ5kLTy!7zHgSDyt{=w4^ zJ~$W;1O^WrJ9hZ+U^o^VoZY>9P!*7=9v?hjQi}B#cHLLyFG^bBDo!;uuH%EMO;Zt5c(CnpwMjBFy8j9Xm$^^>uPl8 z1SGh*qye*71y2%J3;^WF2uuEH%^HWqO+J7LuApY`#_NNwwDH>@@6P3DYeb3bDkh5! zANJts61a#l#XQ7{-C44$C}-93Z)sS9q)A$^&u}naf#}EPyRa46rvyo~&$&VsH^bzW zu6c3i9PL9C(3j3buKUnyID<(pV$gk!>fKM)`}Ntw53Q`da_!pe^_O3s6@cJ z1e~)ETtSItwzHq__xWa#o6lPLP&ylm#U^H}fOM5wVo7?{;w(R=dkzQ6>@ym6p?Q;Pu2$mXa zezD2j#_p9g8!y%)X_>-MxXUn%JmB84SFwl1WZaNKgh)!(^&2vJ=R{dxy891t%~cC9 zf(}G87>IIZe$Z=lP>%z*e7vKhqdyt$>Wap@MjZ?t2iZWVhN&kp42pjMeSTsP`F>MK zaspVB3FF;n1Oi#$L*+m^8q5a%9>eHVMl-vh6j&Xn1A=VxowcSarAZkIBUtHW%BlXC zq9U43X2D$GGVl`zwu@}bGYn84GL0#4tL%sUr}@4oiC6i)x%%mS!vl5K9)5Tf!P@Af zk3T-z90-iw|HvaC8*dstx`v5|(L{ayC?Ia5d-m-c1;DLqv^1%H3%|V4Q^MKB@- zgJP{WoCeow@EychOyrh>!B7BgBx_2ww&9*zAgwn=bZ^PB`(ZnGd-eI}=fH;0B#Lt{zVgakFz@6W8|NOsetj;UiC{JF9J2#++sDS{ zj-Ng~_hp~&k-0}oR=p%j*J9&i$q3x~Au|FbbOg}M<5xR%s>--U?Xp2A8+J$-Vx{0s z46#yrh^pcE0mKO*0{h&(3KTQ`lCAHrL>esMAiXJvA>S}1Tg-<531n3^h_{v%*#Ia6 zRa29tnDwZqKWSri0k-fxt+!-?svk^E8eFd-TXik|KLjN`DGR8$X&))#0c#6T0)|#^ zpvb3Df;5a@>%dCn@grWnfVZy#*y^`4-e^Ekuu}x&y5LgDf?q&4La`6P!KgkDb~f-b zQB?)5f@t=!VF2@(P{OxqB+m%`Si}x7Jp_VY;{eu?8NR*HbN<(whF}4U$2)=iRt-N` zoA~xxO$9jz1&%MoHe>mKA#`BlWJ$5+dEjz&uwqz>1}+}00DvNvoMHK($$4ysFQj@e z^-}?EVv{iYfSx^yNf<(MKM#($&v?E>6MT<7(EaYYH(veV1%Esj^zZNO^*?*M8&9(8TW539RbaJ_SNZ|JsEM=g#@-b2m*tENl~@c|5sq=)5H8}R_acZmA8&h5$5|kB+!&2LLCJU-qUR08p_2tZ{%{w;8H!0ST zTjEB7>Ukrw0jeZ3?lra$*czK+0AE9WSeK1{%``Ra3fqD=Rq#F!q^c^JP*4?g!zp3H<4JvKYAR&}gN~Dm%MtJ}rhu+} zB30VyOg@a1#8sD~0#$wak?&O{pl)e^pb<=Z%z~}AY!OfuAG6{dCchIuH;Lk&!}Fb* z)1iZKZcz9CHlE#LqA8E!pDI#%bDU5*#>ta)rfvk$b_)BWVQ<(mu$*f|GG2|~tsT5^ z1W1MTK~oEB=E53}VH1p&2o}nSn1kWeK%WNwIytEW{}d)t99&_aw6lisvi-v;si-4UiAY#B23wBGQ?TCok`H%nN z`6pz?b-;0UvPr%R(5`nqUt`<{_mB2``R0|^pZLyKzuNSTZ-2Y#vtR#u)1|9duUu(* z`BOJO^~4iR0J$~QFDx`I=JQQEckgc6fByV?P48_qRYirmrIwX6i7XS-gyKgyBXlsx zloUUg`jMn)kUtB0Bw!Frx`4G>^z+n;Bqv$chH|PSVPKYkZ`jz`gC7HW4ysoSmAi}j zM&BS~$ex#=r;MKCHieMMlp=}fX8`ve7foG*lT@*L#4yYZ0EePllkmnOtqnDt#r9-z zb`GDB`k+S4P*`w^k{b9bc9-Ff)>C}o@B~)3U7~d&^{;?b_yj8T~t(r~G z>gKV5ND!AmWyqn(#Y<>=m?G9P_XJQ=@lmYb>h~W=Y@t>5LflE?hXoFlRko7clM%2A z2+9@`K^dj_Fb#!`K^oXr(T)-I6K1`IUWyQ>%3QnSL~PrG7+huhXa5qJ*-&|A^gQzI zr%{7>r?`dlz0s+64<$kup6Iyx!neQjl?yy}(OmfYx4w0uZ*g&O@WN-l_O%Ohox8!a zdg1kV-nn`6!gR}QOGn3r!j`Em&CM5(!Ci>@(>pBC?H<2SO2gN=#-bTpXU$4q+|u;n zo5c*SKNp5>xe9vAEw6xox!P0?;fh&0^tqd<73em>@&NTMy+gIjnH~LRC^H$({>Xag z=;|Odu4vbNoO3OOcHa-!<8}hwG*q;GggL84qK7R~6m;c5p$e`yvzzTV0sBf?wT=P> z-2kXJwo=vU9L;T}J3@|;_M3WWModhhZhcrbe~7S-Ibt2;Fs!&|?@%q6Q()Bm zI%cO>r4I~;guo{r|2DiChCi5%6+j4UMs;-16tE8=hl1xsF-OCmV>|;}h<_=~-w%8f zD4u;jn-`O8B)dbxlRlnjlbujLX&t9VAGv9`>vX?KXWMy*+|{P|EO4 zLRLSvL+1=NvJJ7V*SfDYT+au@V6gTQ*AhTCT~yvg)`NeO$?o)2Mxnl&8C1NOa}bv! zieKs1a|o(U%j^N27hq|MiNDhLkAFn{^Utt*v>j6i{kVhFsRlx9W@1xgW1@FpAko>= zlgPBUcXT9lBz=igEF2z9j8^~QxBKhEptoX$3;ekV)hpKLXl*M5b z=u}Epyio5CS(IvQ)9nWA|9(lJDf+X9GiNDkw~R9}cTpvuAst&K6C+TO7@y_q6cJWP z3ZavHlhCN2msRZaxE=$oo$i+esx~cRi-#aZrm`{!_vr}J=}m@V^LASCVSfm9Xe^vn z8aR&s=J|8h(eFYwIS9_@Sr59j)7u9c8sa_u{qc_O?l@qn@tU@__V#!(8VZfXN2-si z7)n+9J@Rk(>!BxfOyt&JPwwfUYJm!_(JX8%?t#a+dPfJ9FCEn9bgU!mz%qk0UvHpv zd-)DeN~$_3s-*sR%m}7%Mq50zSDDZcyGHBkxxEYHJw4p$*ci8YWQ6l!1k3N|ng<7m zhPZ~h+S+Mu`lH8HZHd{HJ!7ei#i>Q(TtAEN>_x*a1UT zK7B_ASywv9R}yua)Z*0*=}?q!kg$B>n0IJvoQsYP2(o#Hrz%#RDs}$;4W~+ol8XM} zuCCWVSN9yOyt|bG-tMll8gPMzbzM)Bi`>gq-B#e5^SmMB{15=ER$>3$on0qpFhb}E zU8PLkzU#A6SX4n8NW5jsC1>lz0J zHf^e_&(_pT)>W40taJZvOiG}}60(u<6T2B=3x% z32niR%Ga<(N>h#-&h*C_ym^#W{abR#a*Kv9a-GytmGHK&ygJ%8p@LS?gySqRkL-ORBA_dNA=a- zpomp>oIEGA&(*}TKDy=+2YoNc+K=l9jvms=&6-t@qIA1=@7<}Ukq(aW%1%*If#a-avE{~yWTQu>bPJ(ql|wd@HQu1l zb{dieE`ZIZ1#e9o>VVN$;YA?^infn&&S|dBC|k;>L!e>ug6Mk0X;vLB5D1P1+SPzJ z6!w1*Lr@89AQN8q6Zrs=H@K+S}D36o4@D zqZ*E**7suIK+Rzx!-QJy<`k39DnCun(51&|x}etLr;^vk;oOsICICQ=;2m*tL*Cn& z6ZJQkVxGg|&yTz8aC7W<78%s8_lCaQ% z4Sa<(9Th0phcK)sd&RxDFxB*PK}FMoLkVhM@IpKW*4%`sQL(x%iPBDj523}OKZ!YJ zO*v&ayFN||RQ19vS5*kjUs zn#b%w=iTK5JBDdlOfqkZojI|0$Br22-($5z6cU@;y*svL*RI*wm^;KA8|v@rITSlo zEr^mGsmP=JsA!>a*ixnPj|13=3J&%?H1;GImD?URLEl4+1iYLR_>P-TLDh%w2;Fe!8zc&V||=Yw!*6 zPJL?S;Nep(7U}&d_L;Y`U2D5>l!t-rSs1NX`c5C+Gd|uozqr^pGdI`Qgs8c1XliPD zx(|D{`vx%Sc%bhoTw$YV5n3 z0*)GG70HYfQoQLCvi2KfGjcgz6w&b}%>Ed>?L3g<(Efe9w}Tye>-cy9IZPpK$0LzK z%h1r~%>|Dj6dLo{>`Y-Vm(R5Ppqwb;d?`mPpdnio!$>gVZb^vh8hsSd z^f7?J$I7*I~?u%OopoVivB30ZStd{SR&EXaIc1^-r2qlP1;WY*bJ^<4l9ta;}m4P+W zKYK@^{bFb5UT*+PAyc z8;wdZ{1ObmWTn$siwpBF0h})}<1aD8FReHH6^m4sLgmaWC+=2X$lg;}S-bTr7y(hTC>8?wDEA`jf* z8CUe&-6Q?)sJ5!GHa*3>X_c|uUKs5iHd5!;rh9_z17grKaA11c$cKs0!PvWhzkzhh zXt5hXIA?5ISlGSW7y(nqG2__BsyQ<`uJXGsfhoFs?v{3+<=9k)QbtIRtp!??OtCd#Ki(UORs<~2XUO`!;*MaT@VPebHemfUHrBc zhq9c0gq=l5l#S?6TS1r5Pz?g1oNcnXcoUk(e#~ua$q4ASO+83*GXl3QKYp}NNYT*W zqt5ed*r!d1M)zam%rVbdOqC$t-4?xc|B?Cm=)uE>qj|4a*Q5Im9Ek2%Uf#Pm8iI+c ztBa104iBG>R+h?C8KBAqDL<-MB35gNxUShv14@$0LPQ8k>9SO%yaf{6J;|s!3Xmjk z>zZ%CYg#<<@>;+$DKQZc7emnEl==c8Nq{9zP~&MnbLNgbNTyU7dbg|Vf*Rm;Ega4D z2D$L2o;D?oxm+L71RglED_$Giv$|_nVCCS!0GgD6rG5JX0!U)jSU`xz&{JZ=_=2e=8NUeRWPnNr zKuVun%STQ#_j20sf2`FjSB`$hsWD*O0Ew)P)djfZR&yMiae)faLiZ0K-*CKvJeuwT zmJDWi^U7U|NMhZRe@8cOeYFCeyh^PCO(#~9c1so1bozv1bhUt3kEC4IFLglOss*B} zd$eVyjY|#FBpU^eTt;e6~Vmu*&zAGYF#xZrz{atYM;w}ZXk65qVT zr`EcD;gm;dnWy-`UO6hI?pAeb#KN02`$B? z0GDfpSJ)-nK#9k69(*oJG~U2v>KnZSHGtMOxOF->7|m{5bWM})Ox}?Tc}<4JlWd^P zRa*$zfGhbFf86Gr1G0co#h}!I(SB@R4QtNQ9g3)8l&AyqcdTMMShPmRu|fKZ2dK-j z#)ru+B%iu zS|+a27gaun9*d6vbpANP)4w5>o79 z>XTz$AuM@t_+V zx@)=7{tN1y{RMo9%PmYUWIv>iYb-fMp3>4XE_ex>b=(NtS(*C>jwN#_Nu?txoevKIW<3q4>g9M_Oa?>`i*!w6 zdSGDouEkNDmZwgzg6V6rNq;jZSk_D4TDRhQh=wGT?0ro~WsaUV2dP;=Q zZI$a)Uy#yV#Uhp(7xb!oa{Toeh312jhyjCHL(^?qK&H5gh!tCrLBc;Kuq9JsJR}^J= z@J901mzxoNR zj>qZN1s*~WB*yxq0 zoEK=N`SClJZw{kV4M1XKLMWhl@j$b|QYb{Zn8K+U)v1r*8K0_U9X{BF(Y?9=h%515 z_erMSclTmuF$&4~FIa!d&7n>~(vMNC?a_(+m5Y0Z3?qL6jCDM~2S<({&m*VGPw(G< z;6T0!d)ao5Z{2z}U!rlX1Sge8MOl~4DBV>I7Eqd09Ed}^%5{0A0H$nPnV_q)DMI<) z+g)8W{1PZ!F;~)z-OvWt7{YaoV3@YW4hjBP5NsB56NNHrRLAZ0$(_xkcPYdNY=cP5 z%@~BJ%aJw=*7K1x?V^Oio0~j0;0KGPRF-ujE`HE`1w|C(;kRN4Llm-9K@Piqk z?^ZmtIrF6Fyyq(A!H+!r!12Y!_~B#6;swBF4;(raS27vHh)=Do?B5^fQ>pllvC+{p z@iXfzZsn4GM2s#P-@SoIcqs^>epp{0%X8rniBBein^!?b6o)?0Ib#UYdlTOzh+Z<- za$v~-l`VQT6t{H{Q}Yg(0qejwBVoCF0(q9Gdg1Ld9ek(gR`E{i&Q3&}tqdkHPB013 zyrNxFf=Oigl8yZ(*ye$T1k=xsUM%A6Tfm5PU{D`R8LIe&&hM^SzgE-*aD)8<2^8PwXH;0wh6jU%;IdK#CN1QY0l&6t#;|sU%TSNu^Tl zc9qIiE_c|~RkGXD?(jHfracpOPr2;*A6y-tn1~s-JLcCp_j@lFkdR0a0}4Q5rI`1A z_q)rv=lHc7bt{AiECYt?^JEuItHLhT4%$+v!ZKCZq>6al+TLDerl~TUR9D!<%VnC% z0WT`n(@pPm!5S-{biWFaN;qd;Qd2Jh)@O~5Dnv)B)PapKMv;=jwe*47N7EeY1BMj4 ze~so?7#$5dIV_TxYN|g$6tdmKNG*rZo9fZsZqyEj+ZZXc$tU5A zj)3d$(#+85rDM~1QEYAP+ciDi2ZH%vA0S43TjuBcqM(vf`i5s`=jQq%uvOncPiN=B zzJtvH&pQ~+Z)*uk!!kH4baTNrbO%-Fy&vMdmY;u0C?Fz9Sy$#!CMk?@NFh|g815pN zaVD4(okNQ4&*&aIo%q$jz_n_1Y;f>G@8K?}Uk;#Ij_!t{RgI8pez^97p<;LE|72Y} z0UOv|$P5qqnf@i32pwOXOF$SPGkjrgZaB`__VC&B=ZBH#54S5yATT_!u&}f=Tq)`L z@W^0a-@)N0F@tXfhO)z*f*Lu>DB|d`_v|+tWTjg<)ii#68?6=q%E($o2F z91o>b(z@wD$#(ADdc}^RlIaiW{t%{5Nm`xPQO5qq}iZv}_?9E}l z1zo{dFB4aJb8>P=x*V6=e=;O&N`lE+88Wc8EOj2~z_rs3GM5N=77T0v8V<-E(wzWR zDr#=7ApgQj>o%BqOlb%L+O#bbyM>i1_8<1BVhs0K+o}RL5>#wG4bo+xz%a|WaAs>) z?^swAn9DJ80?Rm}mC<8V(80^@*Yj=!08)#}+H zv+WTlXbiMYg5820&3Y`OTc1wQ?_jYmU^q@dZ-lhxo(1PH`hqXbzj)>5p~)*7m(LwK zbmjEfvsX?nFJIYp;>5|5R|q?OWnt^=>=oFv3COfc;HsC$jQ65OE&v=2b9Gc$aCpK= zHZ>@40;r$S+z`k2;KEs7FssHH4F&e*HX+q2CZ18-+*(L-wmNl zD;Uf#?An#zx_vvaU1q*IH@9U=zBQW-1oDI6xLV9FHlMOp8y>4wQT_>|l^8GfH8+@s zkSV~JICASdS>=(DNl-41jH|eZtVtXi2l_i8gAq%LJ+MX#ebLde)Z2S9l2V{BVM@g$ zwnEkZs|76_(s`sE=Hu@m)ejW9Pt*;hK6?uLS`T(Bz^M85Tdyo{xx7&wzdod*XK?^M ziv#FY9ALeQ1BR*|z_956YgZgt(XME^{Z~By_0z>_SqaQAHDEm}YN_BE1zHVdE>0S) z$-xRJb|nwi(?qLD-`6;t>pN)u1~!6i7X*ze__9IE#sO%e4M%ueOGCM*1$l&`b1BZX z4#!A|kz~E5LSPo+X&kk@MoS)ZqM{CE!#zZvApQajr(jDPe#c2%$(wMHK*>okH$d#hG_VzTJu%uT^Sn3U_da1NxeciJ=NK5=1j;=10 zwK!(v0ba>O)~+8tmXXj6SYc+C7?RP;=8>tay(?Tsp~NMzup>lGjxAgOIyYsam8csb z&1wM?@b+ZCgLQ6>H{M>ONf%?i2|YcOEcZnCcwdffVH83JXM^o;LU(5-CPtxch$e=v z#Ru1Jy!r(Aw}_bG6*K!60%vCWp4%Mnxp`%;)uK$JO*@V8eH^W(IE)w{PmQEnTH^37cn0$tLQWMQ?nP$!q%Oej$FK{>aBm;%Srs66j^nB2XkMP3yYE**$|On z7O;0=TQ#A9KXIrHU11PHgfW1LvaNpAuz$<==IXX6J#7wk7ZAio`#!+gorS{Mk9Yd7)ME`xDI$S zbUPj`L_l&3diOX6pxLNN>UerQq<~7()KJfb`Fu!QyLt6GUPEFUtF2&`@anx2$U>i` zn0oEXGYg%4(OmlIv4w>x@SRP8Dq#vG-;^GYPi@+}ci+A#;KQdjOpJ~$Pc1i__F=m= zvLS!y#-?t#$A}aKX7iF9mWwhT6lTCGxDxBo1G*R2J!|uJCBUp@_p_9AXlNqF0mR0M za(@TcGstV&fKKB$dFL9<_Lo?hI29=)4+RyE9#a*eiXm$fAwY_{Lzs*~3P@^;fj-{8 zwRUr{Je3eozk{{%sLuDZi5jtBz7_b0x+nLKyTk9l{n}d>GPmMAFJ8Fd&Tj9Y**-Sr zK6m@J`|Pb-?$Whu*RQ*Uo*tKU^(NiPuQ%ArlZepj=Ph&z`aB`A7;DsHVR^JZ8)eyQ z?PQi^R=hu$=6I*Hc2?JSGG9}41H?6P&M|NR<5D{1aDYe!rQ}>5NvrB41t&t9v%7Fl zra89-#Wa>?bhQ=Vp2jPXq`*E1=R2ZI3-I^kAExuN~6bZu4VV zJXg2)pOSV-FerwZW!4OJA6rA8}+-%7BI7}bI_TZeQX^`Po z%V0Ieeo9(OrG<1jNSW|=)@b3Wa1XSVlcoU7cTGaj<1vqMQy$l#x`~01! zy4tR`Ud-)GTnz0rFRDA0bHcuBPd&Bo($%Z`=Brz(<^7@H?#(Dri?Tu|UNd~7$xs1Ef_<&Y2bx%sSc{@cm%{qX9=kA# zAe~5d2O%ZSk+4n05k0MlLMVt+uIbb0P*ESkn!u?B<6fJg@x`Rm4&(oDjmG~nXo(?E ziQVIakiOmxnTg#`Kl9A)d?>VgV8i6(?gOV! zpEWZ|i1nBwj4NW^*X?m})Ww=phmGh00VGtSO9p!5l^& z1*2VkSlH-Lpea>_Cp`AqF5_2HkE4l|r2L`7wcgZJZeDp-#PxipfUBWQ*}M zAFotwRyo;vNC9BlW|fou)s<82s%{wCtAo9KZKUGa&3jwRxx8VQm&SP~mf};4LL}-<^Kss?sNd_(j#(LyyuIciLjF8wI!!ZKr*E|vmy3m8LzPHA++l?dG zh8BIuG31nLLx}aNq@zEN&Y}7Ad{0=2FQ!bWlj(MPqAhLEmj26Y57?Nukn$4U#aTpa zs)x6+$;)M+6kmiE2{Q1#{Od10_u{E7GaDy5ubw)^)2x`kc;yNYN=yFSg$ul$PVX!ys8NW zSlhJ1(=IqKbv<+X32dz~E(~IUAqF?vm2RH1;bwjbhj)5#a2{uOzGG@?9_M#{+$duh zFppzAA093^AR3%!$9R4SRr5SM#Pbgv;zqD;x|^FGHl1ix%dA~Yft1B*#B6F7*XILd zXEw_5(Q)iC0~{cnGt|NQ>^)&|5X{WzSpUsIiww4L3sdo!EYYH8~2BU=Xe7!w|LQoYkl(0z7gRv$oy zug`{kBi$fXNa5ttvK|8Q37Bv)qhU$H1YXn`WG#`A+iSGjrfT&Tj#?~-nVjZylh8wV z4B`^~#{ZF+APQn>0HOl!PoKbAG@YZU`;XZA>S8>V&Dd~sj{ywFs!Irn@KFEcWC&o9 z5ZDSr=pcs}GCagE;i1(q;WcYCzh_wR2TGg=svca7?BuaT=>hXl=W2Z>nimzomgzz? z+*B}LL{43Bkp7BFtEJ~)u1!FfO5t8ui}B!FgM(YX&Rp%1Wv7Hlf-lr-+23H>4`Vc_ zDY)?{AKQph*1!U+plkMG2oN|>ng?4B#(U$8@553pdrN=+iANZ3)Pfqi1G1I|R-txd z{yjK*6UcKX9zcQvc@;Q-;p*J=1%CMY1Yf$|!P9^>7P9RJrmP~*f8~UA#qsjbSFNg{ z_g?pc?!?Lv&9o6e>oc_IC>j{e<{lZvhYx;Y<;U^IPJ7w7Xau)zBdsc5AgUI1Uv?&s zPGcKw%It%%bsvxMKsbzR6ku>t5WxR~izXzNYlAL?btE$sB8FUiF`~S-MtlFSIFDaI z-5%sPK>QsBS*YGB#!h|(06UuN=q2egjrsZ^)ajsY|`s;07g;&rS zT-T{R7YtH4ipGx#&Xce#OTmz6NurSE%#x5`>RSsk8Wd0^Pa@^5$jti03>(V}nGjij zw8e}KsGHV!c(*GC>eI9fqJJPHj4T-BOs&|K6r!!Ilpb9{ZJW|v5wmsjgjm{9LWML& z@X$B`5jqsnA2n=W!nCdO=L1VQev+mwZ60a zI-n(O-F&J&!IQ~Idp?EfED?P|hqNnVxEtNwAhAFN6Z!5M4Y)M|g(|^l?J>+mL=9nv z=N3S0Fc|BBY!*fZ9lEPR_t$XT$fL^Aud&qcd=Ay-9USx-wx(Wq_R=-%-=wg6lNz1W zC%d{*z(u6o;z)5~BE>dwQt@mgTPUPx8AnJ7&GxEATV|`;2kf}ktyk|BH^tZ$TFWbP zTOVWAh|EZsNPA{|_S*%cg^EJaL{-Sy2`W5?$$kJyB(duOeeWWags`l-F=eD?)@Z;D z6Ja$mUPue2P7u^*K-vyPa7bk1x90#}%Ina&3PXt&${UB<@sfR#Nb6;}e~;PT%32eu z+Vefei#Jhd_JmZm2Zd%2D$E{MS@yII6^BMgdsuDR^FVFs8K`b1cF4$b{xqj{1Fqns z^Uho2o~*^r<}k~4=GJGfv)N!PX9#&N1g1J#A0UF#n155+loO4G6LAoPC>Wq)Og5Me z2a)bBQni?bpKSfpKzT!`d1;@ubHv_o(|;$e-J_G!Xu;A77maQq0nS) z-DdduP`#8PDO+auc;jfw@DY4&(ChFw5h;(B@x9b|iZwT$ywD6~JNhc!)$9%ZZzNKA z&Xz-=?8OCo$tiLVL%}Z)95fP>+M<64+|>EqZMvT76;2l#uURV z#3ei41Z!$eYu6+JGP9B{jfU`rF8Q=78S`$tAnvNc`9vl@orvtfYV zjrQu|7KBWsNLv`%#DtVT#X*=!2)P0#KlqKRyBrLfSiWEQp#VB3cI^7>0nqOA_?7jQKI^6w;*rAJ}Xs1y-Ov;03rIxD~h^cs=kz z0GQGv%DZo#%lAARdoFdweAYd%YjRR~{@gj`#&gdpSD$@WIeGc=l`G1zLkAALti0SD zkYVdu=39GTw?6fI*`$^%&)V%ZOE6zxCh<&KgGV*lG(IH7sekBy%J-jWWOOLDzQcY+ zaYMZ@jGTm+RUe<}lM-UKrISmKE29xEm*N5Egou}kL7yNSvCTnFlayG9$H$SN1$|Qp zuLpaAVaPLmMZ0j7EctIBKPYHXwU5_yC5UUbU(>~4Fs{7@w}K2HZi#|ph`oHYJz@mcCrGI$Xz;>mq6FC0C3y?1c%I(C$FdEw7`hrL;H} zZ!|BMm141>s1)_bc_4mVSDiBj(K%qDc)hG|6*1?AuH6>JLFLmc^VnaaGG-UCC8K+2 zf_o!c2q_T($bJtj{P_0!-)$%XLyIxGBdwV<-4!82tAJU$OSB`Va*W#f?b!0fx^7Sr zqw#!#Ps~Io)^13uWPZ<3Q)OU=S27V`(t3b@>y_Jgmlv*2pRX>DpGWtJ2fUvLyq{zYW{6rKQ@z^I#IqEhZMctMQSC&=+;f zqk93{H}7jaiV&o{5w~PqcLrMxw2^`m@iB+VQ7rkg8+VMF8%C zXSfS%{~9x|AG8820W!(id`JxHhFcsn6G}AIme26X$tc!3V}heXk4_R5J!bJvo3+ts zwG=)K9UcjHvazssQ{$u(>%@OU7N()wxa|Ri9GF;-=ih((!jAdd8)k)DfkS}Exwy!Z?Rbll~Q{6BvP!X#B&+ZR-$3#+HyF}@o8d+K}I9>3W<;m zxo|GWX<|^8G;ysB#^1y&{H~zvWJO6wn^KqbP%0u=Ek(n?a(y@y(rk6vH5^%kbbzVw zU!_yeTvkT!{2!0?C7n5 z%e%L1IsDw&vxi~s!#LxIPh7fm`SM}R3JxD#+`s?s;kzr$PPgepL7Fbqn&l*1?a-dn%8IdOL9=O(NmyqF;;iDFy|;P zZ-^;1Sw_U(hGg4FNU|9mHUXib9fGZ4C^m1GObMCSJ8L}KcX4b(CUR#|a<9sg0Iw0G zfh=})N}J>?l5B@lB4V&N;)uA9A;@P$UVTHCo(>|a@v>25@I%wJ(|N#_!d(T$h27R^7iZCR;I<+;@8R0%9;8XAv+Bx*O0L)6%G#X?Q7nasrNu?5bxf-TV@c|gOtM}6B+#Uz zZAl}!0k3QACU3TE0M}GA-WHCi@pM~ziq8%RY71)g(J+?o#83fS=itJ)n8gc37PDDt z?S@6&@l=AAo#rxSUVP@6#l&h` z%}rsLtW9UO-hZYW`5`n^ttlnfkgJTg&8vVtxgU&{VBDD3@M!9ORYq%<`UpT6sE_gM z*XIB?F&fP2VD#pL9JY7lL6?h2-TGW#2uxv-Nb5pS6vDLb&hz2vAogIbc2!g>ijA>D zHbH&@3b>f5YJ7}~sFNu*Bx`!?YvFRMxW!*l9}7c$2h2xm&;n#f7h_@bGTL7t3$u7l z;jv9EDw@j4Vi=pZ5KB)$hgh6-K^LnaUw64FSq1W5L<3HbConEHEGWQzty1eM&VtxL z-tuqA*IjIwjXco#Ms+rC17LD{|Gg3*>Bal{J>DGh zJ%{l+WsRha4mgY)XN{0L~D^133v3z4_@%yH}UhlLW6lNIHGV}+z5ES zv;qTHp(i?`SS6&+UC{Q1k_f0!MC3FeHlFqn|2$4Frc7v(`h4G>O6Js@4+4sU-e&h1Fi|BV1V`^A6%_90; zMMX>|i|BS0`+~tD*V|iUU9VzW4r?k!YI`|FXGL1>8MJQJM(|(tF842GT+E34Y&_+S z5^MK33|?+3q`g!P_xk$G+CDZm7EKt=Fyc8$*p0-f&8;dT(7a_8U}S4-M4_S7T5&sn zl1fda(*+1ib=iu8L1IBtQd<*h$kuUXKqN_5qzEQbvMnjnqgWePIgmD+_y0G{`)zC_ z4El;wq@ZyG_x6im7-W=SpVfoBcCr-S*{C2ZRn=HEGkk(B5;H8fG z3%7bBvu0_SC-lRbWw7akh*)+9G_}?qOxT)&{`xEr%5J+#5IS=L%@i#DDk!kIv;nnr zj)oOVu!N)zxw^zUqE;ks#3%3?40*sGeQu4V*x~dfM6pe&&x|OLGl;t2nG|@@wmS^K zZ!P>U7;S(>OD)LaQJ3lAQw6+Kig?*$dGMdm$+aJJL~a!tv;P+OJ9g6B5WUBtv{FNe zVA?fP8t(0Bk6gTZwIoI&r3+_IpDsa_y>vSeDBYT$FKMaN3on$e-@M6GQcD}IT{~Pl z?7IcK*z4y1>az|{@aG-=IY%Z}Kf;Y8?$_ZER`f?=^_X9-R37jnc*4kN6!xjNQ>m@< zK*yEbhjRTmUO&TGk0^41W#&x!!xC6W?WF0>52w-b(2dv@FuBqOf^L2f4#GxX=0E|I z(BQ(~Fw+H40G1PQqhpVNCf7%FX9#=5y@i2+fswHnW3fyuc94tWU`IQ`s){B3Esh*f z>AL;1c*-&ivkw<`5MOYu$#~VmI7*5oTt$;E>QGHXmBw?iOexAms!5GcxEkm+bQj3! zZ=_QBWKxX9U{8g0&Il8mg#zQs-BK{p91qW;b;fPl6h_x9JQfIq(K!pFl@hM(+!_tgo(H>leJeoiswxDFye{ZwFqlzoY^RK4tgOe-Jdwcwi3Hk- zQ13-aSaz^OMp|uXzueimANxxCL8Z4J|Ni}l&z*bbnf>8F zV1GIo+<$QIu3azef1x@0H(a3p=)n}f_60V|qSy~FVdZws;$D-bzC-SR+AH>$+y>4x zb=qnjxe|*K7Qa5<$VVyw;ex&wg}DoaGra@T8o2gm7Z^2VJC=>34tipeCBr_tx@5Rp z#S$jOK}A1^nod`b8}2Ly#$9Z8X*03}Ycsu+YmnW>!tq~rbaZv`En!K+_G!NbNcChi z3uZA>%($3l$FT-+M>Wu{kGG)17N*z`!xyu0{g-PG@1~F5{6~L&T|q7|{yy5JhOl?y^EqC-0(Lpv04+YuewS!8GjMx~v_h4z(kflU2yRG`oKO?LLk z%hc)UGZ;$kL1U&}SIh;Bv+0`m>wU`F%ZL`umAud0y`FhWM!&_^_sw@Mk9Acs&OUYb^5s*7 zY-e_I^3?5@UOJVG=A)U+DZoWfZQ38%pGchAwrg(JzI~_8+_-V`=BcFn0$<8mbjK3L>5I;QcVG~m5^ZP`3yEO1~}DD;ZQreiWMEh0OX0&EvwaH zf=z<5O$4dCdctrwS&HVZ!A_GOOw&u<51^N+Arf&x!_JRZdleL@A_n-8j+XAI!G*#F z*G%(9)Dc>=TtrA0W0R>9)$C`oA)JV{IZz=LQ*lL;$GW<%=x8gVLty#1Vo8jxz8Bl5 zFk_a8^i+wUFC1qbA1}AiQD?4Xut1k!`p`SCgTCU>^_w>j4Q}n;nn)Z%W^u?=x2VT_Xl~y#tytQfjC!p?WSLcT z3O(%`e*jRA32eAi3mP=%SzkoxOc?P=ymA~)dkb_Kf^Y{6?6@)-Z*CT5wKEh9>``>^ zI5Q5aaz(DL5j*o&1j;EAN$@XJ#$U3vjYG4~4$E|5fJLKxR84FRtA(H(tGcAfnZ-uD zT0ot-Q&hiLdn6zwqyLI(@gHzwtmLqOw#P2zmD^yhP^Jg-<-zW51zZLSZPh7Q3sH0t zm@$QsSt!I}aYMP$Y-m4uXc)AfEBb-Kx3G8U8*kYm#oh;#Nrk1oVDG)Hjd*J3+Ak^B zY1jnH{uEx5G-o$AO6EQugf$v?Nf6^fAwmHj(^3Tc6NWQkbzy=hjy_gW&{*rbpNMO6 zp);k+gQ3@3|->dEq6B|aHZuw4nMTcn5^CG{t3Hz}L&5Y~bw zJpITHH=}Ai@1q=F4!le36$dNPd#`TWaeDLgv*V|SuSlUl?#AiU6~G%S*om%K>2xSm zIePy5g$tGLVt+B0s~pxc#8Jb0rI7>u-=V#A1+rM_A zeFvyr>-665<9ih$<#IlgZT-sjp%sL-Kn);aIz-(A8B*Z&VqkqHu1ri!-~eMYnsd<7 z-HHQlN0cZZ0*U+dDyU$E9pwl$3qD5rZ7h0R~51`~#~k6SjRuCi_N zPD_fgtWtQdW0H)Yk=(X+(*?X*@4q27N1@Y8J>TuXI$lI3{~q?dJ_-CF@C&N;Tlw(gVE=E6o{q^VvAAJ;!8%Ffq_ur4+e&?NUd;`w_cq^jM zJ$v=)=h4qsn6v3puA8=I)cSdDI@hqS*YNRkbI-UVqhxQKRm^PYFjI|JY}9y74PBW` zU26=l;7RbjBQjL^|H~V81DsC#?-r$Bwjm4g=^UV_5ZywE*G<91I5&ulj~7!w3sF_5 z&+@9xiyAiqI+-A^NQ&GF6+*>SW2{3gSe^jTWm7a6lIkWB8@?rB}P_Ks>_i1=_*vkO1HTUZH6ebqcmLy; zfBNg6f9E^zF3p~t-L~!BpZ?Jwz5C;z{N!CIEx!BG?c49(|KSgR^rLs*d*`jU-c>|# z@!c8#ge?3uhn%hr`i|N(h;9Qvd#7}+F()8r0-dOTVff#Iw4nJr8p7Gp#>r=u0dp4m zp{5pN^95A@ed}|mb}eDcB=@^bF=cEPV!r{SBghezI5i2F2q$Q~0qH2Fv55^P8B!i1 zAf19}hJ|oD2Env{oHN+|aS|iwP(>&>M2NSn0Rv2sUn>m(LDAxY^OHq<0c=dN*t?1o zqAD?&%+)G+=3ii03*^Swos;kaY$@8&Ha+l49_m-53uQwc4GI#7u&o!VH^3nSEYVt0{udm+kT>V!*( zeo2!vuFvnD6D>Qhm7zc_OKuPC)Rir0Q6ZCQWx<6uTlb)P-KslJ$(EQ`QC=F!T?v8p zx6NH^Y(o4cc$_4#rbYx^j{qehW9{=c;8F2@8+c){14uP-vt>nWdvq>kNP7`{jHztQ z2G+iEyl5FiKNozk}L390(TdZ&sudMOC#Opo4 z-epv+?1EuI274hz?@PX4)cnKS`x|Xaf7j;|3t|e52-SW{R~2ekV1liyJwZMy2eC@B z2TBI?l2uhTBV>$n5|pfhAUXS12_;BsJjJ|KLdhS4(@8w6I?$^;#5xl(O~cl23!cqT z2;5m|$LUtJn2=8Ko?^Kfy1VwI#Psi{-?1u{dXF^0Scy;k`OLl_U*4QrB8Vd3iA&LW zcV>$_JiKIz4sZ-hfGaNT>JD}r#u5;VOO*raUbU-h=?GU|L_>0kp%<4UdyvIPI+O%y%$w-}1 ziYi}50#`;l0u(x>BUOfNqp(wxiKgBN`y`7q@pbjKCz9<^DJf&TFcJ-86`x3VMa^!p zbO%+5i4W5vG;CdM1RTjam=-LG0&1(Qt7*J1;76`AH#%mzn=s&jrlv2AWic77w#I;? z#ln^n?wMaiBHLoIo=~XAA8cGOqPpau$*nmd9deGQ*rPjr5(uBMu%NV$snHhDJlZ*E zqzUNFs89(vVt`RaAKSUYjwtAY48BL=b0sCszeo1dj*0o^z}5$9otI`N-yZJ~L3lL3 zY10AXIhxzHjnNzp%+4}FnQ~`Ki|hKjGKG!~#&~o<$meg@b!AwhQ}Y%7)@e9T{R{rZ zLtz956#l}32Ng89HITH>Fs$TF!x+#4Gj-}@`{AT^`w;$hq?W(dE}`{BlnQ5eqDGbx zR!m7yk8rBM%P2aK;h3mG6{jbZ$CU#HXGI2`cUbMg%XW6RoG{t2{4pHiM`(SbvpI}C z6fC>BCNyM_LTRQp>f&n2j>hx(|Cn23-*Z~VT!J)a)Yjo^$e7o%$51zZjiZeA&Z#l5)aW5!*CJRG2AhZ<0}Me z6EUD15IPJB5~EmWQ~0dm_5!+0xEtfZ8bihZ1S~vqXe~OVgC`WhDH4jR;Z!s(L_yr$ zh0aHNI%;tmnB_yqp$JA$ImH04j*#j_sDS!50!lA@M*ugp_4sS4b(aZP4EszBlP)q; z;)q=c901GYSulIQ4V2~mz;^;a4PYMjI`YL#st%QB{O{G;V;!(248Hr2z{fUq0$4HKA`M`Jz#n3x^9rEZWh3_#P( zoaF?N43OW%F>Te0axVvpgP@#Lw@68y_$u;R9=VWZ8UOwX?jhUvtHy-26MeTi?BA@M zzJD+?_tEColbFBn-?e?`C@PnzR6i$K)pL@|;2c&A<77F2 zQO!wK1f5(_1o>GC{K@mPhPSP}q5Q9U*$iD!jeLgYu=L6na_UW!`i!03QWUEo84^PR zOYLQ1ZNO#xJTw%4XRYBGGrgY?t@g?X%uX`zvujo8cHC-UkreLM*Y3tg@lU{KD*z-Nrst`WQZ1m5D^T>r|Zcu`=!ml($T9_Dx7 z3jBze$bWF5|9kg8eZf7Zr`~zth5K*5{r3G=-+1Hx?n65c9Xoda>dP;`^2+^KDs}(T zGfzK#A3=%9q*fZluB@5gW@>PltWv zU000@4et=V_Bz!y$-suW-S5h^n#NBF(9!dC&eLlV?Dli{0?0a+*oS34+4v*rSuwjuq=QeXaD_-wO3ww_0^%y{y+tktwWd3pFNuy$~50t2pCNfRYSP9$d9~M z3H*j_+cw&+O;Lo39;$J?)W>^^V1hEqyV#g()vhz&!5aR#K1X^Q+Om1vNs0<0qM}wr zkJidVJOpgYEr=sUyh_;gDHhQw6EtA>L5mMeDaRwrz=E|9L~Vlh9ml<}M#uSON>#KB z(&4kBiun&5R)6Y(^6YbJ>O@S*1SJP^VbCLqRs?H+w&tV{J0=$oVJSb3kts$}hHdeY zhzTLTtR%q$uRnp`5Nh!Ef&UlP(G=J~_h1Ha8rz_h<$MeKBtH)P31vEe{5=2jKYZ(g zc7{K7L#z6Mg&4aHn%&L|V7f!YRa0cZ#CXNQMIwO7D2Tfvh%Nu1YK>7j z3zP{Tb}?uOflmX{NEkwbZ$<5sML|FpI9SmMJ_aTLPYCBL1Ce3G1tY;{p`t+D(=~i6>DYl2u1VlZEf>0Vrt{JPt~e2I0p+V zO)&`3=Yf_D>%rjLSVTgG!+vB0sSUdlL04Q4Tg-3Sx6{S9KJOX~bD1dUL*tsNq|xL> zo|^2T_o|6S0-H!A(vW7DE(wN^@O z26engxlWy=x>1RlEMumvw+wXES`nWpTRzO#+Nh3y7n{p(&TRaoExq*ddk1#y-1f@V zt4q_HdwQ1cy!`Ug(56jG3NkQb>G>C5ToQ}n@Y2~^x1M`$sija@I(_Q+@ug%odvEEU zAElUE)Z@|vF0;~k*tf!Wye3ZVhKt2mu}*d`S87wm=H5+(q=W019=i@1J~1M(W?^%P z@`}3k-D}TsW~;-CIo&x4yKmrC+#Z}gq}V&L8P(3yjGI;@>;YD&MU_PLI8aFncvSaB zD7C_J`&tv_zbtF2s;DB-%p0Jla4X=IF@;DZ6$<@1GGj!=enE6FMnmZZPDe!=Rg?>v z%<*X4;?T|RwZLr+`R@45C-4>0!Ph4?!rzqabUf z>9sFnp~nBV^?6VakxXPeIglsMUlV5qAJydml7f@L2)V8$rN4pEA&f8<4tU>+d;`U0b zHkdHPAMiGEG3~Rsiwjr4+z#y@OfQW{(1j+p5$1UdLPh$!PvA`!?kz&b{u6F6i$xz# z34UetfiHbB@$tR)h7NAoogHp%9UHs1&{x9!au1>C-qz0TK+D`iFuK>#wq?sb#G!iz zVh#&K_aeG}kHXMB@Q|)roH3WFU0?J;lS9=W(tGxYW!eo_U>)Py_6>E4Jmfs0k9S*9 z700eA?+rYUIUZ@q`3{L_Rm0+~&x@wRSZ5(kxX_lT4XjviX7OeVa1sj%t{ZA?pnlDQ z{ah$ez{4bMpTT6gbO4taL2Nnv^ zbb3j1Fg;5uR$2oWT6`W-c8PvP;~|%FFNGdh@`mx867a{;LB$xB3q}effo3x0bgYIIyfH63d(B z=9V!>U7ntqSq9){*=lJC1eO;d^E$Om>Jf;_Sn%}}@YChEbp7~MTaXj~F z>hzEUpltW*HFiPyL+@HoM{aa;Y9(276oW1q{j68@J@BKfdqkI@m#o*oAo%OZ{hG(4 zRjk+!41{F4g}KWBHF_Y1ftzfvVUKgDGQvVk&jM(P)K|3U*t|0&E5ujKnS<=xfzbyk zqT$SloWso&Ky{ku+VH9W*$Hh0(Pc!4Xe}UTC-M#p+)7c$iP`oh0o$6An@68V6eHdE zhfrVV66$);>GM#V0}@|%7Vy2Ui@n-S;Oh{3!ObYhvA&4+%^&w7O>&H$Ou+~mIV418 zxCAC!lMh7!%@BDV@*V+17253mH&pCl9|twC-S=O4#RUw)MWXC}^MeoE5_sJQH*9b*{d6Ha=RWt=Tlem{H?Cf~wCpZ7-%yQY zxY-j{JoeknUj5a=*GyZxkWhS)19*W2scyr@_5DsC2+HPB_22>9;zmQ(9Dm?b)p+so z153?88bPVN1N5cn|0sG(v|UIP2--{Bm*}%Z3viYYW>%aL?E_H8rH-=^iOgD{5k@33 z^r&D${6QM@SbRiNO$Hq&EP4Fn{#^5+#vq`WaUq9+daW<`pA58qcw{(k9@MG*x-JY+ zwhQ>du-R@BSRw*KRWTSzhAH6zjsjJFFBWj|4&0ftos95q540>}vP$eex)F`>ZY5$| zeN^P(EUX@d;u%*wmB?sIclLXuCsYh+!4VA1cEOtDmp%D2gtAw5f*~|1p{H^rbRj);bd8Z9cEYMzTd+SPt4qqfhL?2t}`*Weiw)Vm4Z zi~&6yjX8WY?G~)5N{mk)jLQifxGpLD@ zvAlg`?Y`zsGD!K!27-%}x~izm=2uKI?gc&$yf-uZ;mP0!?_4^#cVTumh)G6p>-O!z zi7i`#7-m43HygwhBRJIGAFK=x2H7+t7|G>=Y9L^mK{m(;t{7xAg|UW@eZ@6L!Hqed z=XV}uK{VnQY4xDx-BT=P)u!uT|0&9k09U6JeO>WOn*whEI=&FeJq!gkRAMYMGUn$e zuuK?{kSpo2*f2g{WfL=0ZDR-3v0iSxTlg09p5vyw832q&d(W?3gGV<<6pfIu&+Vq| z60zi9JAJIbzgu;QRfsU7Vi4?$w~a0nii~2$k`-xy-HLsp6htrkk^AbaMWvcfO*>-J z0o3lq3R#=Me}o-|PiD4#Z|?l(-@@emydBJyf|bg7jNZ>%n3|r){QW#6-p)f7<2(f3 z&L25`{5%`PpP$;+x2>b&Jk8_JZ{56c;|J$IXbw)yIqKnQ#WmODEp->FW!B7HpyuZ} zLOtK{QXvm9>{ako#p9J)+vpvxL~Jx>U-&sVNo7KYro#iSeKR;k_MOHhlZu zy%WfaPJI07rzbkH*%MqM5>eF?xam#=;&wQE;_iFzz5o7+r;eW8d+6+i3nyND?#7KD zocO^C2ZHl>?%}yo-BoIzZgL~U7yL)V4nK>IdjZ7HeHnU(jZT}eJ;b4cs|?=ZWy|Cz zBO}mIV(*&fZN7_9SIN6F>lY{Uz4&@u>7<1b>Sjunp{jex*6oaP9Izk2dqE&~jJT?d zP6_(GmTI0>0xU-8j${gz6;zuP^drs!|#9g z-B%aptnR_SwLiaP$LodtN2k6l-E%rB`nz03pRu- zFeb6rdbZTa$}6DtVRI3>BFQy9p8HYUb?fo6J1}^QQX*b86Ff{18n6sq(aCQnRI3yh z`!O_$@nLm}Zn&{LigHC&6SEOwo(5*M+Q9`uoD(D}C+NQm%0bbPWLf-hZ2{~}h=I6R zhaWHzyYO3)%0XO26q%H%oee22%00uxpxm~HV-bs!Wv7GmDbPg<|4Ne#1*#RY zY6GGV7AFpAe7Lf9FS8ks&wpn-I26-pvu{7Tl;`1LzYP2-wle+#dl`R6wcr2tw}11+ zTi4vDPaQq5dtvj2FY^8FmtTDG*{^={o6r8;pZ(cqoa=t}{a^m_PyXbyNFeZ;5)Oa% z`KKR${8yj-)e85j#i~XStAEBDz4_fpiei38a+Or5F)~An4)2JKjN&cJgy4p?%sdWh zgp$wZfnv>TWH-mNhQHB|Gyq0u3$}Om4Y2+Rq^BiXkHp2W?5yp+mx%q6y&`0eKJ_nZZ4-q|q*rGJgzj^WIbu>19 z^phX`_{Z+cZ+`aXr=PmxhY!2eu`zdGc-TdI4$P+Rt{H5gxsgP|WmKZ>3MnlXC;hnj zkaO2-QT7#fpVOyS{2_0r3~rU{l{H4=a7nl!oYd=ip{VrRqfLE~TAm0;rdaHELHwVf zo|b{3?tC>W}EdLy(2AbT!GxfcTGL%wp$} z^NpA}!ea^{b*~JB9N*Hfb@bEA26#Sr(eM-dE#R~@DJ!G$v-%^Fszv#g7LIsW@y0?n}uLD-3^H^&T1QTVlN3??-b7u?~;V}5iz)Nv+8z!6X6nlv8<)b z$znv8Ox4ERSz`XhhofN#d<%NP&H$vzB%V^SQdkC#8$EmMA)ytLFj0LNKrILk@!C3~ z=A6}a8GkqSrvxcfFcnwVc+453l%~odJ355PHOSMgl1hT8k{wmF5cIq}Z1+F<=moFB zxCFiEn}HVspQ3~IgTNnPPx{LMI`zN4@T*_GaPz5a*X$qNzi)3idUW@0dvV|Nz9UEM z@BQ$H_Q5TC_u8L*_q%rI$cTOK(@($sZ99&o{CwWV#3R5}Ik1ZK@lUegMQJy9jLJakVT2ah`QQ6#?5M(HCn%GT`8HUHL>9^e=4D_f_`OWBokrqBS za5SvMMMy4V;0zIKPS!Yx^GZCLFW6wisG5_puEquBDZ@yF;ttYNjM1?PQ#SDeWX&*y z@6ngbazUVoAv{$oam6B6cz*4{&}BC|^>Pi&iu$1|MjihHP?>uv@G5j!-@(TI_kkMz z^T2E8MZ}WeQ0jOq^z!S5xT6B}qIELvW_2 zu0#M^w>GkV@aE0KT8Mge5mkiTh9GLf%Pa2eM?2ze!3i1?^botFZrscFth+c8vIQ#X&)m}nBQ#n(ow;Rp$L`iC>Sf1qFd-lu>MUfftJ zU3_Zu=8KaXHe3W_^hLl4FOCmYCnhc)TReL7BIf89gE=?HaThbi;zb55yqHL*FA}Km zVjS%V^TUfD)*P7mZo`4=kH}H|WYznY`iHeo*WUZR8!C4EU8zxT#7S4{NTn7W5eN|( zAp(N{>D5c4Rr~AGU*nGw}cva+h|Ln8%LVmTy)SUjhf zh^yOxgK-4_ZBzxjIBLdq-7ehmm|mG&2KX^a>C>z*mhK!+I^?kFZa@RDm3itE%Pyzr zCGTgKSs~4^VS;%V)%qB(==LZ`4RPUWTW~eob{l7(jzYiyKAMy5h#s{0c>$RPmiuVG zFX&oOEkf_a!X0l5^d(^2=xZzGfWSZYm7W+unvAc;kS~&_k^UZ`d3wQULUU1%nfMdz zRD2)#;?D!W3H;g2;=h0OoU8xYAAhj4Y17kB>$i^29DnL5{f8fXpkF_96X<4r+rDf2 z78mvJ{@@3C|Jaz`($=Pb`}5EBslGnFE1T8d`s9;OKh?339T1T?>aV|i=gt@U7d2NS zhoK+bbX{(^!34>Hu9g50OW+k3XbD5pn6Af&p&$bFpooqhG~~f#^GFs# z7$P{LWx>HjRI__*^n(Zm0-mD7CWn$-1II3qB4=3m^vCp%;gtUl9EKn-1YTM)EE9P#iWS1R1MB#*y9vS0 ztmsANqvxBVrFh`6d{hWHn92SNcGEN1KpqIR%{bld4iM6g!v_PYREaM&yAfTWbaRr0 zU_h3zHBHP%Xuch1Qt7xtYlT3$68^OlJrk1WKsU@b3lcwN>PHg*g?5c_!yT$K zkw+~lD7p5(v7;$VH{}6P44hd~6Pt2sG%SqiO2}`$5dwW44DM|TaOFCW6SDXJ44Tr|R#M?oo5K2x*p#D+6PN`Kn zEB>9MBm>V>mg;4Fxe^235YDyDa4U+*Z^1t=Ch{boa>)#BP>ddkcyiY6QGiTaTe+@` z$hj38*Bj8HZVFAAZxKcA=c*#vW@<}|5=GfyhLxOdNz-mbzI<+8u7XJ|7;2j=o(v)5 zgw|Em#J{}-)#(3&f4hs=GKuV~YbLyT3b#zIgw@lYTmk5g;oNZZzuZ6FWWfsh`t{B# zkx@P3pN-6>CM4JNFYmU35KN03?(h)bKaN@|E^MYMGZ9VhLlU^w#(J_v;mA|kK?!}BA8}_ zMlKR!cK@&VxBr&0xy+(FK0T9Jm`iF=IhssXx>{PGZWV!qW2FOoXj7G`<|mTa>saABhW_6m5$oEe@^`p=FLQUE=b*|T#N&rT($ z3T|5uZqid>3y}q$q2bxF;2Hlna&z*GapW~P6*Ch(o?E!4rmf~1wWo!hZ%Q($3s8SD z{O6&DUs-whM`hnTRy+-J?fixax-%_AI6Z4Ro&Cr}<3TQi53gJ9jARU8*vwgbM-{i+ z%J-#Y-syBm8XW>OV`eaIiV2&#C$3j7sPH3@AFZRY;mj-aJe4g8ggTxqe zr53o#sGGn++9@Z-5OX4}8(NM;Y_Ql$dIT(Y67v*dPE^?LC$UfLrsrz=>_|LRveb4l zFw&jNjf}K+mP@7S_UW&GuBf5O01W2Sez7*xX1?Jk!{T0*$%Lz|C8BSN^f z!-*$sA>4U-g-`is>fC}nQBLc4q9%(+V;0u)B_ry^o8L2}Z3gFQF0hy4&5kV@GogVM zth2XJ7#r)1haIQ08%X|*og15E85oUmzIl8^DsoT;Iy2a;kaQGlf*OmSG^5z!L?JV)!{cKnYyCm7l<)BGaZl zX6iF7d`>b&TtOK=Wb*W!Et*cQ15cGJ(1zR@Gc=~EJs7A#7iU1VORaoI7Kpk`oXK8= zLw^m>)4Ne28v-fXv1C_YmQQuJW4#u_Wi_WVLb%2ZX#-tjXSc~iok>#&m!=8_qY)Jq zw4TQJf}St(s^6lA(vB#-7dzK@zSP6}<|cZ2=H^B~=rV#P_Q=@qzyNmio1Lmw1hRNV z&le@uq|!|1kM=mc+>CYFk?^-Ql<*fnD-VxM8d;}X8R+_XR6h7i;S!@_8 zy09Hrn;S%X9jfTMGb$O~8jxt#)&bdWZDaWkGIKvY^(f;;D#>Mwh4}+6Td{MA7~q zvA0gF-b;ZkGx>@9@kKG-ZnukKe#5}P{CqxJN|h>=JdyeC$?s`?B5S3N=X-wm$MZ?G z4BFB)_d`|eWlNp|HZrFnJoJ6>t1ib?GRDiCnd;&DL_L_GW?@)LlC)wkO_epfibW;L zkzJ8du3yldNy+S02}-YfDt4Hs#d@Dpz7r%_6Jb z64)0Qn2EVvJGZ7{L8!tPi{s;6Br!hIHPifD)($XkPr{Vo)OvikbX8IzS0t=8OS9v? z8`h8W19{bIZnzgf4?QMCct9OfqNB!&{f3j}h@%5Hgn@HwIa9LUL;5$?)S+ z@`s^BhW#!z?a;01_27StTQhuR?oYdErgU%7&PK4hKr{2}PE>Vzd(SS?@s0Un9SmX#9RWF|xWG(r$; z78c|>xO75@+Cg0*HBY48(Rt77!1St~v*2|`H#J(w>#S0nKu%|N1Gt4O)k*!2Rw9w& zBg4@&W<~&_=AGXN*_pvAP|D>pcBcTEnaE-FPL4Et-iqgzE@pV%kt9?}FsF>8qVuvh z(&1B3({%x3cL4aQ(V5hAfB(S)v2By1f#GfVGk&bi6nCqCFwTt!`c4i}gJUQ(K902l zJfK&+p{VFhv(Vr5`lxtb$r0(ZSk?ajXnXH3NzUs^Fe4(v`;5p)Zz?NIdGD)DwW)U1 z4(+{nXoChC-g`q3geM4*A^-xQ2!I4djU-AW#j_)EL{cINQrdrD&+M*7E6t2%=E(fA zd$jj`5m}X0T>#k-)L>UtXPIus_r7QDyYIf{^JeYcPw`xPJ*-sn0R~iS*l~;M)zZhz zJdgcXrZo}Q1dOvn?S)TO;wP_ruq^$@gEh)Mbenm*8#|Mc;W@cK(uHg;$vXqZo;03o zoBx&gCfkhTHLz>>HVflvvIX6s#6nTfEScns2+c!evo4CoLrLiIL1;BO|6Id;?O~)@m0iXFHW)gtmRJ2dJogOr90nNHLj+?VHcx#^AR+Po7Oo!lk4Os5ACS~YM6wbZrnIIJw7rr8S}jDliQ=KAEIk5 zSx(f0z@tLY#%xo2IHSv!b*F*=&NBoh-~rGT^%2NFg@t+>(1&+zjgz^!AbQX&OJW{? zOV~uGJE*u;Qm}GKE`1gcG!cfIGge|sHhWp`6i?Ksbg^i|>=RGa&i<)}jjRc1J*tM! z%Th)71D?|^&=4eFaw@#UI+(e<5iLxN#aT7|q z5;uNNY;LB#&)u9&5;^z^P>>xnsf zaQ(qWPp(;?;A%(lNRpRML&ys^o~F_x(}WjYa0I{RF)kO;_efxVfLTX-M}sQw79mWN z3}@$xwv(&CM%N)Ssd)=u1byhzQ8LpwD`zf5@d<+t6raqtF0Ko~UhBciYLKYB+@A?X z0tK81*gro|6uhaz7VxkH$l+M)6@8HGHLlf3q(avdMYS2ESmNGH0Px7W3UC57v!99(JqAqDvlnRv6?wE*D;Xa;B{h8n2Sh$T%sAL}NvtDhKUJlRzuPE*(JwVHMqC z(}E^AGD^j7^O+)85Q^;<8`fkQXM5=O2-uX6C&xDyJid_H;L@)yN0?uFL%Jf)5TK`TS!iYQmye zMo$*cH1xZaB76oY*w!*_IzrFY>*BL*Y8f`YR>i1{J;2Rm3`MOIb99^T^nnB4%=nwR z7qjglg%a6%83ky=!jD4km3qZPvY_iuA{PiQ*64xRHsPe87)TlI-{EXLMD+k_PBM;?|)Aqk^jN8wD^|Drd{yWnF= z%V6XmD;~g-hp_rW2PyI@&0zSO;Euh01sFC&L5Cc}S%atBNt-N_R#+JHS==eIWRbR6 zogptxP%M(%jc_7VF#w)7JHv`0XKx-K-vBT)*U+3tXsEl*|_m!`Q*ns5azn+0ps~byGNFKjL5DRQNK`%vFVUTix-F46UX3_ zW8!koe2(MWFj@#x$D_u4PMpxp5rH;_3}TM}?T!{u+@5u0OnnCG2KLON$`3AxwLgdYyk%Z4sAEK%dK}!>@dR$ zOif5Td?tT&@hynzI?9m?X#F-;R8BkifzXNeQ1yoR)&Bx=T#R+bMlrwoaBTNX<7Q=` z>#l3}-itk8`!{V;9=dY>mD_H^^ezM%m7BJ2$Jz@)s42D9!&z|cbSC6*LZ?HxGR%LW zoq!aX<;wH+KGG=hO*9=@U^J76vPDYOQKq!Ie&mHX)OuJOhChb__wdj-zHSs}Sc$4_ z{0+>fv8l0d#i7xz?$MnYkdCWtb`*O`$Ii*Yap$RZJY-F@^SFi|=9{E4ov7hZDR0Hbr%hyx3ilXZtmGC(I{D zTMu`KBy~%`azwR|D)9y+s)istfE!_T(E+gquH6KB`y!Xd%jb}yD|(b%j;Xxa(Z<)x zk^!It>>DW={0QsQ3^2VlI~dFg=5%2noL3UDR~m+li7RKuh0)Qj+&t!?%tO29H_L;a zC14)46>SHB2w{j%O)<=a_GX1#hG{(2bJ(BvU~KhFVLyM*wbi|2StORcoz3!xw{Jgt zmOr?6*RIR_<_&1D3TQM4#>4Dr zjOjQwBlUct*$m!Gppl%P`5xr4T+AcyW(_Wq6i~Q`I=oJFP33ZMqW6n zO-gT9SrgpGba7u`(Mf4}7G=UaKpp)~^uA7madID_Q+tG)Z#gwH+g7l1IpM(E+^JIn zExEc=xbymBn&-#E_L~o!k|CxO-$Kt!vBEXlX)`Wi^n$+Xy4&*W^V8)bN&#?ax8=y# zL|2j|wvU zu5P=URB~K&Z55E#vX;ZC@ix!JI1V&n94s={O;~}5DZ)U5RbWj`u^>1dD;#~}vhjs* z!zQ+csX~nF7)h38QPvvnDeC}#_h9Ty>{hDOwp==X_Q3e@=>yx>tT}Mtcmwjg$G2{p zojnfds|AIbk0N2DU!1!#u!SlGiDCr31&uaJW!qEu?0hg`Q3MC|DN?J^KxE1$Sk7qo zOPEyhy7PQjF31R)9AG^(7KWRNHBP%@;U7W-MZ3`8YXf=$@^Mx|qLk}|?T!Lo2tiul zik$_%y@b-CGwg5Xj9-zC4q`}RHI_jFNE6GQhLG(Q7aXjz?wk91DoI)KbSiu&O z<5{P>c?`rJ0Cgn98@4Ee-6chEs;k=eCv92OB;aJobzN3F{1OqOFrVuln(1HP?eBg+ z$K~vb)X|Y;>8{8Xk?i`F?1tj-aB)Mn;!6_;x4kvNO*kcr7)M+3-Dc2;;s*YB6dy7W zk^(RR-$cwqQ-S`7;5|A*%%%o@H@Wf6&~YQ#ZpvI~IvtRxg36i=g_`3)TpRT@bsa(7 z)K}mQ<~{J-k66y6sQ0q3BiIp5gl@o&P`07uN^(*^f~atxs!NrutWD`i5~SO*8PuZh zPf22`(^vXlZ9Zfwk@1CLMS*zH1a4RMh>ny=Q_^9=(>7&{_c2k^KE(jg`} zo-&1o@DnnOpDx9(iOb7*pj%xv-Cg5)y2urQm)PYQ&NOruCJYftUnd-?L(n5M0z{l>Siy?yxy9kcs}@=h-9!9(L% z>Ub5K=4~ZwDLU^bbo^OBvQH1+G6xsp!YPZjDz9sBbg{S~*}*pzEAC<-A}9$LvMz*D zb-<+=h+X(?N!~3ZItNL-de()qh5-^Th*_9gQmaL1;5I;2;<44*)vh%UalV;Jb$CmJ z*oz3kXic~^ge*~n_$B<(8dTsn$L^$lW_-u37e~(Ae01f=$d26`HXJ>=qoGwb%i3|% zwk=!6cZ|25AGx2FJ2RhYjgHZQ;39+_xP@rI&W{~ycxR*(eI4t$huxWF=-#7ThR2(7a3QJI3A7f=~tyT;vjHn;7Wq6@Wuk!rSEID~_4Y2;hCj zhS@Nrn3WD5C?BtNp(F%n!O46F0H1^mjptFKs|IE>AcN%>OeImTr}$z`Q1kp(GeWxo z_3fdyo`jHSZ)1rt%c%&WUgXViE?ot>Tq{ZkKu*J+ay@}gJ>4$Cn|{S2#?*Z6zGkMl zwSdwceyh+wJzW6!RA7aBfmQ5uwqXYEmn4Z3y3X2Yx6r=Ct!;#kXZB0Xu1Ig@^XE26^CoLNJEP=OC3P7m(9h z52gBi1!#$xO~|ghuBRv4yd;a*e{%r5S%SNweQ(;4L7UJD(7cQIU6kLp1MjAe!CB-{ z55%_3RQHYe_T9J5u3kAwJp#MXhLJ2?w-0UGcIJ#tJDM-qms)Sj;xmD(ixOW7+l$7K zm``ioAb&Wj{*r8gNmzw2^5|HDz!Tgu5~PcY_wgIYQVuE-ALqdjjt|og#;Rs(Dzw-O z>ops!*??^xIB2-Ts?HUHB(^Ae{#GHtj3iR7+zq(6=d`qg1zvHp2SrB!{u00$J$*W{fA`LvmO+jQ&2NP6v7&CaYmic%XgeiknPc+(=EG5#rk}o zPDJtG^Zb&~W)UfLERnf_6M`r<{&2!_i7wN0Z$_=o6Fu1O1iXu+%=KT>kW|||wla4> zUs6svP(czUWd(-P9QeEf9zRt7Bpsqkx{~0>+EP3k^=h8uXEN&x3Ycs-LLig6yux*r z3#T`RcsenWc4etMjBE{+iNfN}Kf}Kb&2LAf&8v6Cj?DDi?d_M0#>|QpmBgNn8;?zl zjI5p>PY>_fKKH*(bB)BY>EXG#;pt4ZKB+aX9)aSL2Jd#Ox|!O%h)=GR#UQ; zF*2+0n*}2V7N0VmF&tLZ7*(uF2WyOK4F*q2iDU{Lj=VD1krS$2Kqe*GpGcApUppB4 zS{vdF>)IKK`JxXhF=%*^Zny1}xA9r!sTJDQ|$ z$`o2)nI=-%`ciam@P~NvxJuV;HV#tr55IZQFo&6xBDj(+V??G31K4~#i!d4)Ws!v2 zhz2Ni?nygRah1c` zKb6zmpz86-N!0rlB_$u&tt3~bAO}oehRJ!%|LSsA8+egUWpGePK*SXk1G+~krw2ENo+E)RNTEiA1jv7h`^Ne3CT1{a`ht4N~YaMk^)w>G1c;NfZUC^QTUmZFu=3)>9ivR| zH;Gkh)LEoX80`j2w?{smS z2fEDjvDkUDYhbf<@V;B9&%W3d63I0hJAe~plvmaz3$GWuV(^Lc=Qf^7E&k&?+h+cN zSpUEhFz|=lgS&-k=}&fv%jAS@UOmwRpa5rOg4i*Dx8xPErR>56(^-ov1%VvAJz}`) zvF66X4ozK?IZP=5BWoze&6IMmPR~Kh8Byd;hVHB#R5`s`=E?;S7po>CfM(P`uGP3& zEuM8{?A^4Xp9Fo#62!D+(J!Mlq-_FHJqQV9T(mUc{S>ls&d{+_CzZ!WG;)_jjKGvV zO2CL$vPB*wAk?WMr%16pQLiYdrA*vKs)$qbwbYK8+79K`i?xaFLR)vOri=~s_eVRO zSzV=2L3KtsvrLK@-8s5=%q51|dsqf9yk)0_BZwB;(Lv51=2FM^X*oUNzUBY`gb&PT zwQR1ov7X8@TsppFTp+Y(w}ItyMmH{;!+FCv%Ve0p1ARln5u$IKM^vMh;j=&|oDM=K z1TkyAltZtlRL!gMKpIMZenL_e{TW_bw@RK}uWa3`BUBs$fd~AFHEcKCHE87TpXoecRqnlgt|YOyrx$MRSN6I_1QhKw{4B z5#bY*UM!GQhuImWntaTb4?+lOEXw8QBVO2ci&B;4$6y9MULiGTxiH4XRo;`NoZ)uZ z*u3KF&M{7R1T2HHx^%A7)Hj>5ZRfZ|&M~D#qR1u7F4|=2F0R~*J}Dq3f>;k*&X}n8 zgzSq!*{bFFDlv;XiJ6H-FUhZ?r->e@Asg79j+ti(Q$s>v=St_QlKe9#jvl?+zx(4ZS~C-A_K7I( zfL54PsRLI+-q(7L6{x?2YR(9Nl-7?Sdt`2rK<_Z=msX0oan&1 zX^v)pWiejku*C#ArzJ?uY32;3NBK&@aBPTpcxaT$6(p6=mUn?Xfjg-CB0ME7EJW7> zMXrjw$!UgUF$BO#N$X;)`Sn8>I4E-ML_??no5hKG{%~L4F&{Ecl9bRioGPd}(8zH_ z`yFpmQGsblG8pk*2bOmkXp@yDpnPk#X9S3XQ9+~1E!9+me;lc|A;g<#O;mive{+AhUDqeUXbMwua2MX~i>6RCE zJZ{~>IWCsPI+wq z#ENWejFYWVNFc=7y_NhTpL21tHa1|>$XqAgaH3@rk>Y^m49a?^%r=kqDNb94FXScO zZbzj^u(ER(M(hJ{BY4aV>dq=oH&;Qf8Eb0+|F6QJJ4BwK53Xktd?o`65)B8*EXFVB z$nYs}0`h1Pmu$>7Yc`Z_G_#+KCFI2G+4-i*W(f=;>JLw~?u`(vf$gBSX zvjY|M97)re6hMy7^xQcYIIq1JJ9KtO$MlX^%sF@l&0*)>%a>87NRExMf@IlcO0bc!a4!yME{jiltbr@j`Vz*?5yhkJ zvxo^)${;@m>z1tQ##5?xO~Zr+%@$#^pG>_1O?PT|Meqzj9g$eBnxp~-j6rOQAobk1 zl%gQ+)A1kI-44=mPVgx=fzevi6Nw~q(1amqb%N&1nSLOY?I}K2K=-#DOK9LM66Vp3 zc89YWYTlrzssUtS+>{Fb2H;T@+aurR)SFyOgH|Rs1L|3ycdB{N?P&3-q^gCWpp<5F zGMMYS3%-W52mgflL%AHIq>?dU3tgs3&%*@jKu-xR=sM=WQjk5sSYZ}BOyD{GZ_G9Q zH6p^|z1D;%+%hv&>g~NWIgsz{sdcnf2~+R|p$wjdvsFHB`(7nd|zHKey+(HVO%CE<0sVtk(3&Y3vCGAIH%EwwlsW zh+?Uyu%a55p1m!Zade@vH3!rkEGNPWBzB{bTa)`onS}9j>C%O*@*oXXIk?gLd`|+c zSg~@z`snMr^4v2|?rDEr zdGbl+_4YmDnrFZH<{J3*;r`}H%{y^?fY-^HGyX@D#u_?h=CqpuyDg}3qNmZ2nb#L#~tf(E`F2ka8M=CiJ3gBm{^brR|<}R z;skZREr-<`A}x;X#u>^jC$KGsK3 z&9k~8gOHAwKz#<75A{5Vm11+nF)}3B7V0qM5zX0IB>cTd5#bFg7&0cjUeA~@9d`7$ zY|7CBD=T1HQ7eE0?*;eqL1>KLKC|kfmD8ZMR|dE4-o4Wo&mTH;n}c~S+dg~p*duxD z>){?5P(J?7~!foSy#ltPe+F-vRugYZ3FyeNHW z#YCdJ&&DpIPym}_)m&Jnk#~r4%LT{KpkjjA9NBOEQzVpka3-fo*~0T;&w&w;vzJ(55gc;2pcFegx0awat36roq;W@`V^}j z)=`jnt%}wgLW}Qy&(A|yQS_@e9V=u%J?|ZCv+9TDYyc`UR(D#mJmO+Fc3&#B%6E7( zYZ{o75otq&cNRKhC?#McY?d$;9)GqajU4PkFd&%c|KZ?9~>7_!K5kO30ML3Fa^;VI6$dqa7Z@)Y~@WSR`aQx-(LQgc1Bi zM%A*eW8`>Q$)($0V?v1`G0>KmaO3!W2G;ulV9s29QMH*fM3iI_|PcBt{t z^dv(RVDQ!Ex_;HJK0yI}OMY zL*8rqqyn)4T5GQNqaBjK?j%&9jt?~=I6zf~N*(r6Xvk_IDl4fgF4kG0i)UB8W8*v+^UT#HK>FL-5 zGaGi!t$1MLmbDw&f|0?F;j;%0T+Np?Y#%v&{K)^j|!8;4kdCca5r!(i|SIuq^0N`c@Y+M z=A8>`;)Z@^{xi)?Bp~y;@#Mo?&4GM{J%??YeazG^aprdT6l+d3Pis&&WHIy9W{^3Fmh*?A zBLnJ1G(p2KUBYm*-y?$dl-mUWQdB#C79*C*2S`9v8KgeKN4Vw=nW2gLzt zEVH(#V4)QmKmmbp62oQZPi>S3dm(z`)F%PzC7?$v=>h5tm7#k72qob*V6&arc{a%O z^`DNt5_@oF#ZczT^UoYxH@54**s)_*)~uYGy3*C#d!=u1@JgjtyHfA$ymH%_Gxy(r z#m!53p1*SS(uE6Gaw*?`?8>6G3lZAa>Suub&7%?wes6^WiHnCRJ%D|IR2dx^hie#K zQcb|CM2h%LW&Gv)A<2Md_J^>|vz_HP(c9#&F@)vPmAj=bqrrn70r)h|bI za^}h&)yPB3Iwx^v9h?`qDaZX>azL5Dre7W_(o79R8O=%IU=yMwVZXT~J(WS<1vEdL zII?0x8gpf=16Ia+QL_w=E3z}TrH3+%G=qWdU_QibL55M(1+!yiWp4&bZJ@kDcS6TZ zCheg5Ylha7vh-mf6=%_Txr)xq8!>3*ujTh2*`42UWXo{Jk?#B>w?BCM-FNd>&Od(s z*=PCFM=u>ccaDGYODDf{e_=6#A|t9VNvWIy2rQ$iw8H`vOEkt);}NX5yqQE?tg%!x!^O{q(IG}r8Pog- zWe)vqp&_v(JKW+)wi>0slv?9!DB0Nrm0eS{s+iU2_i!$j)zQYagKeo}>!mLXE)--W z_iLOrO?^2?^-xX<9>Qo`gWCBNz9MMn^1fLn_H zMmFOD$PLJ;T-k*|iaJ_*`GkmVEYT#vUm0O8whNsFAL|P6%{#Fv_^Z%){;ioU zkFPVmci-42Vc_z}?YEye;a%N-ZU5oJ-lbi)?Ao`_yJ_3Si{AO^Y47yNh`0LOIj`r` zDevj~?tAGa&uIjuD%O>IPd@t4L$7;_HVrL7K3d%leY}jxHI1x^i!5Y7(VSJ7`Glsx zIuZ=R4$~DJK5J7jP>q}zn`vMS31*;VK`lnh{@6f}YWCq_V_|3b#tW)BTapPJR{|tF z5ZMJlVKpGPYjV_Y(yaUd5~-gb`NWK~np1s4U;AfY40hxf^Xmk<0{Ii&$nZ z$-q&7p$qC}BdwD#X(6t}^R@<&zIY#0^uKXPGkB-28l0oMP~yY?0;EK5`uMdD+duKY zAkb+*Kg?{v-_(hfEMLTcMSl;vRbFkfLO?oEoslM!k{$K-Kf>(MPN3)qNV7{kuzUUP zMkC!jy=!{^{&b*eR@#ajQD_KFQ=s^Rc1B9Bg9OvgWRMYpi2q7g8x?V?L2jnCB}_9y zq5ok%A}V%RjU3g?ICSDB{{wXSBq3dVfOE=%2c;_K9-4K~t?|`4O?4Y-Twgm?vPzR! z31t{|3I!)rhp-zeUJ@WA&kGajbS>S1!~t8sheys_Y3s@H$)2uVBx!9Z=W-oJ!T`Nn z#71bZ?8y}YO?XSRftm7EJhzf9s=aXlVZ{V?exGSH8X*_r@6mVo3-sJw=(tY8+mo{9 zx|!01Fpx@Ia`zfNvPd1fvg1%)M|Ba0A!&oAg#JCuLek@HvL=w4>wtmhnWZMZ+-bDq5@4emGxSHm(^>%_{5{)0*OkG# z4AJUc&0!Wgu+hu79b$E!g@tH%)|qxLW$76s&Fb__H7*K)puk+?Yf`9^>x@*C&YPLB zdL~oL{ElO*HYUzZ&xyyAan%?ZD>RaVmoE+GhzHqQs>mr4H3U3ghO<$r zTtnnQ1H1z+_}S=2KxQ9kI>#3rPLa^~L>SRgbJ!WlP+cgx(UriO_`V{j-kit{OeeW5 zm~|IW>CnZxf^i)kc$s44u;wt?z|=_v(*IBdE~8M^9J%1hY7MPb4n;5(wc))GWv}K) zB^(X(a5$lPFIMjFs<~Vz=jFtBs=IRjbhSIpr&e6b!kdST@BfDL`zf-F1JM6E0iFq_ zBp$j;yZ_v=L%oOAt-F8o-h+FO9=+e?E0y~VtmwS|fos<;-`||AYe@)LYS6qt%}fBD z(D`n47{nRUF;1Jgafil;F@nQbbXPvZWBUV1!452%dAFfUZWqA$<#8k(W?zrzaKUiPATNeJrn(Fz19{s}nJ*8D8ei0=Zt%?d%AU}JGn4u2&rCvY z`1eeGKmZ?nJL-*n$O+N$zI=qs=k+~1+jmY*>YjpuRDJc_j=9~tbt{q3uU)usNV#bte?ZAl%2^ zs_u3*x>bJbrMh)uVn?bwul99fW+BydP=E6~;s+=N5Xy7Milu-k@~(-^ojUA8W(;Vek}9q9DW- zpup(#A?`p>J;~Nmr1i2&y0iUck4a({@R);3Jmy}^krjOtx|{g>C6x5y zL=rnG;seeG9lI8FF{8>-H;508&dc%B<+5{wr`}t)xsN$@g=y7M1k{iT=Aj3&1$XkX z*i)p*vaY`})nTWn686?79)04>nW=j&UVQxVDfAYm){Kr$fkGS3SJLUS-}Cn{s@gwB z?P{UEqKE|>7$V3AA4ORRCE?AR)l5>5pN!Mlry>s0C&tDmZ@qcp@qIlB5y}ZXBGHUy zuS9X;WAi+S1x8PauU9xj?8E?#FDbu+*90%IOG=~#kb3NG1k|AT-9kIU1zVITH1Z`h z57iu&B%wzwB{{bu0(ma_yM5$*$boNRc|m(26m$He0XnLL5x!)NGO!YyfuSowB6&8*&?^FCxkY zt{v>V5?T)(d+K$jLh|>qf5Ax(W5OofX!BYOoV_nh^^6QZc;{{FZ##5o_{8N~FW+&; zuv)JV3;n32dWK*5+~*!2e!S)CMtOb9m8IOinNfy#2QDt%&t=+*p|B3l6emiM$=FEC zuzusSy17eT?+?KB=+fK`oX`QhTv5=7CCFdLU=$cyXvMgS)S;FHfN+MYmH@Mmwp?7Y z4>YeZR%hUe@_C1o#TNIR4wD{z(16w)mmEij4yilWvp%_z2lB6iWp8&tvxq%i&q`)Zg(Qzo$Otd2pQ-$ zQ%oh_EkMVr7yaf_=oLLlb0SZ4K5!X37&_0K7(TIib0?x|=Z?e251&5W`Pe=8Typuh)9Q(2j9cmJ2zPhwTz@)HqO_99gyFFZZe^IW6Dx%=v+RhRbc zdG64;i|1~+<+)5O_8f^OKlg>lAAj(<2N#{=auqtIw2bw$xUC=FQeafkjSg?_IN?~~ zm?{!pa=Am0g#Qd`lRmz&Bx`yLg(4&LK>G#@6;1F0#h zuyBXTC5Olie0Rvv3Xe3r++m@EvgWh6!7_@_rC0d9?lrkCpj@h|C3L43d%ch#cT*G1 z#x+y>(pKk^gZ)iQ(8U+{^w`*b2pnUsm8)w`4MB1kiw^)(&R7aa8j!!7xuJ7hxxcsS za9vB%=BX=T4NB@?RD=EkxXmcME+J`Opt$>-`NSQUFHB#!=_b=nCe8h)&!4_@$#f8N zO#xlqXCHawKC{^vVW-Aw81^R2ros=S^Fx|MrxspMXb6VYXn?vOuuX%#JW9D#Fh5X) zKYS)vcA1m>4_E{VRqJioXKz|uA5_p3vn!J}dB1FdD5EIY+XoC9`&ZO;vMtKyg->^| z{nLv)^N)D+y&SNJyqa+&2^L=+=@E||4jB;toF0dGHk!E&92<*^yW$NVayNhmI%G+> zu4q+p#{V67>CcGQh0R2?7a~MVUy7Za>3cEv%&5|z1Jx&YPY9akOveEM(8wJ=f9d?y zt2t7;QgY8f@x(*9hgv-KqQZ5-2EuHMWn3Z83sDtV1L2+QH*PHp$Mez+jDSH}1205UkW{T9r-#5GwD*5Bay z_f$Xj{PoCJ{{?(CSpaE;(ncy`>RyUH8@nq?)Ky(+*f( z7P|Bn77bJMpzOSbqxqRQ0_l2O@#~DFy*|ae*sx?y2Qp*QIsKf~NycF9ga;`0eCpf3 z*a*G{LKFVy`=@iJp=nwj0;O2mqI=FZHw6Ngc!oHfsZ`4Rv?q^Ezl*~(V_=2;{g*iR zDt3^~fy?;__}TAJcKzkqnMWs9z7~HpR(j!_;u-nb$u(%iEBfq-)Ea&tn~GL@P*GE`P{W@AMDw=(=_n$>AuuNj{3YwviY(-u;ro}<7M8`tHs#X+Z zHV%}-f&~HV3Xt_2!W?f)c#zbPhFnkEs{ zTw4&VPbN3qJP(S$63(~6(-+lXr+m9T1)z9{q%dgUMl2=dNa_yG8?s|2V zX}&tOa^$;ns0`1#L2`RbD`meb5wt}~jZ=`=Hz#a;-kD|F6SPP^zWqgb^d5hHAT zsG0J9`o1VkjoRDGgtnJ)>?6d-Fei#8FeT0G;oD5ztnxXmn1s?cY8XS^ue&pfG>S%P zTs8f|#KgpHP1A^arJsyI1QVDLfhH{1xjxf^K&bX(ZiS8BLq1j(P71u$(G>`OXCWbY z8AIh0jQod{!)AQI#(2;d8Sk_Eh7H4KwX2X`3>zZ1p}L0V&VGt)b^_Z~w7FM6IDw;1%3Fg+pjllh-5%@*m^7RzjLA1S0t-(vR)Rqy3fa?YtY@}RFTG5f zn7+LMi|B;3&RJ^^>cEd$gFd(**aARop3k9P20o&yy675N$xtA#sbk{6*CENSijb^< zS}@j+=R94^$I-UUYC3PVLB&S3vzpWY4Zt1(xa68xv=!3Zgb1WV5ef>0kQC5;J|8@o zEvme=VtmWxo~qAhHymn54kgazMvcn4_VyiE&5!`K3=#ua@Y|t?Yeeu>1YQwM)|ij? zNLt5D?Wkc$^O^k0FIuwV!!zAqj&fl>Gd?~t!i#h1xv42WOpJLA({eTjH7P;nTNC7_ zGg$~V?3H;}LM*MYoy*2nquJGkXtFpv9%BGC66eUALdGW920L4XqkpFq=8rj7%qk*e zSrm*WQ9me)iA3ml*&6Z)$Zw}|m{f(7TYxbS=qG4BSUV1i1two%E@pay({z)MV~{MQ zVdO0|6_YyAFwkD2g>(iQzoIdqYkHXrdaGeezkfw$Bd;+QhP6($@1IF1^16Uml0akh zcn7AKQy6D*3~bjCHK;AcO{iYdG!ovVKs>JokaW>_*u0s(QHn+rIT7Q2-=fZhg{~rL zzx^}Qk;q|JcrT(4DS}*%{dVlF7;I(7;8-P}*|J5s_{LY>cF$eMMx{@tErP3tqG@S}IDJv;1339LpBbgA*?^HrOMez?=NG?`dMb3>ooy3LiO+g7)HAKHq~)9aQWkx1e=-){;Sa zgYcvVwwf=t+c^xTn4$@Yhj)|hs$i`e+qq|K6h!2?vjI7gP2Igl+id7WOxUpuUGAnI zSxdY(6o+vbJP1DIM;bfHk6_Wqzy1TT@V~@fpc?k2?S;DUv$5yF6#hM$f&R{Wi4R}j zzkA#6iHQ$ieD3&jci#Eo`c?Z@?b`L>{ZD`X=@(x3FmT%1KK%B(@4oTj8!g#M({r@i z#(XSlW+p)@DJ4Sy6&?eT2Yz2_EZ9dojZrr3<$4ZWXkPf9d2d4Tf=Z;u{40o1pCKpc zPlLRb_FXXE`~(^zTNP8aix@&jFN~Lb%YvMeDHHg{*Ybj5W@$yY5pW3^3*2O^fXfIX zVps5~OQpq_%nO*w2AXZ_m`AXa5bJ<|LXbh1JT4*hqzuQq8-TC?y=gSg5KRIMR3wng zm{>pv3ox-O952aOISsL%8%}IOz-~Eam;sCWTbA+aP+%y)^K>!9?f|$(_aeLbX6){n z$;*?6+DloCl*+N^?|%Px-hcl2$$XSGwukQs}7IBbwbq(+`$v)j&~$lBlI)%m8xl{K{Vnwzttt z(-JakE%_*+P&LKhQqK$gaX}k6 zHhQG63c5YhTk9!EF~+a;nl&z8ydNG*QMm;ET|hEHtGD@1SzIHvk;76%FcK>;*KSE= zi4Wny)bsfZFlI)f7rZI9mGRD>#6<2FV&9_N`J3r?UfHs1*SdA-4cj+wzv-s*=bt|G z^sTq1XQ#GpOW*a_Q;$9SY`TA_qa*$Pn{WPB`nNvTZMBx;p}jRLaF*bNX>jPj81OrW zh!YGBN?X<>Bb}zV^Nb}JEtb`d&doxT*)y~Ek?=JyCyYXa#^#o`J{;~ z2jkU%BxPTOSW6CW5xcJ;i_f(sAmsyN;RgMhF4%1juPW+SyzT_jZwVQrDy{_noJtW2 zok|Vgkh?-NxSC+iU`zwFfXrz{#f&%eR{s?HbJkfH0Q-9aQ<>CZ`fBWJu&3K*#!esZ zPrUcW+xxR``1{8;ZcJdpEphqH-+uFnClaf+Z5td+y!yWFw1Ic$b`NMVGjn# zYPKjMGK+&rl6%5Wg8O0aY1x9TS<*#67*9ORpQ6U~;+m`_Mo)7F2Q3G=jb{FDq{c8 zxZA!4{z=9TM>ISo%BZ9`20T!jv6L!~=xTs6t;T!9jA{+0iUo`xo4|XBW$-WPT-v~= zYe1;S(8Jh-9P0=;La$(!{425V6PEbB-#c7A_4@G-Z`%6M`c12+#$F%(u;=yqzTkD| zL;WG)!>|3;7cYGAp@*tZy!h&iufJaXqYpo>z8Cg?kR10q@7S6vM zV$`r17#DikEE8*~=$V~`uuzNj$@qHoNXFPZWb4!zAsbnEh0HVhw(x5se@8y?-;#_i zMHnCR3YdUayfou-VVGp=Is{o(p3AnlGZRagb`K**C1gWrFk(~ z#9T4d0w-aL*cT10Twv^SFYoawX;MwXN)=TR(Qt)!g|Dwx0ip7sZ2V5uVBew-2reIp z?hSdrmHV4D;xd$Qniiz)db7J~g8?-FG>SF@H+v`#&#e3~|MlJ5uFY*2`(oHQ$*-Io z8^ikezI@m_$(yPuc68*S7OccehLJDEvZ+*_x+wWYU6imcfN4g4FZ?qMH1dSaKZjPj zz@H%(N0~iqfP@Wrf-hM*MrA{2V+^mVpo2#<$e|4~uLm#_rbx_G%JG`6?%!yaG)k3R zglpEBXZ=H?X6aaey9Evo4ogw@VAju)FnVsRlA+hzkK`<&Va89}tJ;t z;scZtf)Ky`Is-(Se?2j>$+7CM(@dZ+xFQ=yTU|p0pOvidqgzjXk$k?}Y*%ETgDKfQ zpe4`5G@yyyQ!|3nK{L)hU|7kDa_n>KigMVq9S!D*=&vzn_qZt_+`E zc{7W#&{AO)!B3(dzKx1t5Il~pvHh$jcn@**-kGVZ)x*2DO^(p2&+6SDeB*-`UZ{5W z_gBfbf}r~5D|fx}{`=KNo`dL+qEzcKc);qFlPAwr&$W2LXvnl_Vt5}$*cKBDjf{L@ zSQSK>Skt~zi^i8142kTF3=Rg?^nObXjrq8yeK9B$vvv`odX*3c-roebsDxN(bJng2 zTdW2JO~ZdWXG|0S*`T1iTeE9WOguQFm?Ng1O^euvsU$LxL&YbzYj!VGfxTXz&<(7f zc~|5_!F73VR&otJ9grtZPTl@q8M8GP|anM{ez ztG4lm?4pw*xkXdPGDpq9nzNNKteqv#;58joBx#gho>Z`_P8xtBH0Zge!>5Y|Zw;-P z+fnSOL&&Svc{5fUnBuV!uMN?5r!I32W|}G5Lh{GrJ7kH1t-#AH)&ji{!(xCz%J;-um38_3I}m-+J`Hoe!Qn_twmcjVsoz zdrR(Ljr9j_UB2gmdmee@Eu&U@OX%!;3(EU%C3ya=6xwxfwYKY;ZmRh{vaV&{u{g_O zEOk%tdzifm%Yb?HzXj*jjxU+75h4>LkqzeZqWAx{B4HTgpGn~Gi@jD@t-fz}I!@Mc zwxd3esLZ2MTO#d1ySnh+6b?I-N{! z>=)9OR#qgm=~UZBfOH|h;rqe~W7Md>qeU}@JpT8j^)LLWX}?a z6d0+B>E(aM^l}+YP>OnYz-kB|{Ux+oF3k*o;g$!!d)Kdat=>A@@!iU=^m3svd*Y63 z*Jj`NtB?NbyWgGt@%O*_{a^iRcGKD(IIUUm`Jb45qSYCN-e;+OM5O?|%>D~8)6qI) z-Wa#=`k_SxvzE|>tZN~Rh4~i?chHGL*B7IV3!hCkQL^im1jiTsOy;d_tWF4rvZ+qM zKW_{^ajCy*2lNF+$SjA69^Brz9?uB?*cDan#?m*+&IAzH+AVg0NNz3SR9PHmTsd2$of51xPta z9DsYT5C}#IjHf)x=A!2GX{1bsz2Z+NEM2llybN>UBB(cJBPY21j-b#_p#)IrsX&`u zonEzNM|rx!=ZEhgseN%^V8pAeMx`O4H^nATkXbX|7Zw^o`UHa~_{g+?%*Pt=vuY>%z z|N6V{z5A_i`EJTeah(5)AN}Zu{trLFdYRdVw!5gZ2%{*_+GGXD2iarT`H9T2#a3HB zWM4)(+8Fu+EUxO9loHyHgbbEyH~&G@!{Hd0R#%rYi_73&*GpejbXWC{-AZ~_ZYeRYUc9C*18 zGE`)XZU9NnJddERVf!fv7%~*m(H6swXDqtO)_BYut8rVg8n8S8DWS0iy#~y^$@&cr z%pB;hhdvkMO`Ocfy-hAen^7CJQ@Dppa}6rsEB?w_9uh~{$Tj`Pab|`-^|X~)*Y31zVf9@UwY(` z;b68>8D6t~{qR#SzxMK%zdVe##qhvb?^rB0{Jr1(-S>yzzurtKi;Pl(@WXlE8d+~t zpHLf&Rj&crDR7#was`}6yA!C^MdAql1jXP*c>qde2>&(VLAef7hPAhN&(wltFE&*f zjGY#KMp$u2QNG!#2vbuaNBCzkVG)duA;n$9`}h&86M7JF5sG*^+TU1nB5AaLL9u}M zS-hJDGYkP=N=OoxH%+TXkE&o{biIU%*cJSEiiu3afHruT-9s*5oq=JJdWcSoReA3E z%u`=vmt|&`b^`)Qw`A^?_ulnsj`N^NW_+s^m`|f+F+B)+P8C#TfMlLbxkAdOQ!cT=^u%1{0 z_QFh0g6R+&8YToDYs7knSQoiEqCdk&hTqWqIwlb&jZ4=#(D29jGJY_WXkfeaqnmU5 zGF8V&MH?u1KBj3F+Ty$#O=OMXm7s5{Gs-lajnI{L$YkVHJTId+28;7c;P}MBBjWqx zJe@Q;Y$Fiu(SgEckX@2DLBq5l*gB7Zjpm!=Y*Hmu&~T9CF9lV~V^EGh$=Sk_f|=kq za%x&|bk1B0NjOZF`*=<5wi$%lce!|kZMtz z$3?eOHEcB6yo72&$H~sxf>Qt`Knf0}(1gR6V0cTzj4Z()*l7+GY)By{%0reW`W8ez zpraiJ+X;Cu*(E3{8Qy7(THrPYwtA7*`o|C7)G^$~rzdYm&Z$c$#(cE0GxxT)-$XV} z*8%w@TE$!^^l|#2!^k>tn1$wfYQe#sD4n}N8X#uLe}irQ6u9;@JFySI zxc+7Am6?qN{-f<@H(BdmT4_z39kKr4PyXbigJ;iv^sV>qfA6K2K5{MVBP_Z5=u7W> za5u=5n|r6> zY5&a-BbDp2#LBWoe)Y++W`JI#`hsE<&=Nu2q#}jsX;-WaHr^m_F`+!Jdb;8nU2wsw zkaojtRU39OB!G$wOBq~jjy3_(Ak2&4DwP#9-2_dAcea!K6;5RdK-gm;KFbn?1!&IM zdfXU90#M{qeRXV=gIHtF>KwP3SJ19T2XTXJ{ZKY@idDc}QVYD2153eL^yi}igj zS}E`_(HT_roP}$NS2WY{efVomNou&7sINppR`OcH5Q}Iu>#ffA*NWM!KG;(SWkJcv?C9R&=|f=VUD)N}eY}xK|G}9UJJ^irTnl_j!uh0j^EM z)vT>1yriJ{oEDUVH7WY_M}q6DH&TKP9pBYxHG(ltqs8Q{VS$jmELh6Z<3L=b_Mp6Rw2Koa~AxLIHt&kiDK!Wv`P!NE`UP$plFBog| zunpb>w_H`)k>Kz~O|5wNwKkDRBd16vM|i7$@W|29c$QC0-pklrb3G-m!euj{N9;u6 zWFr|TRa#^~TnF59%_a8?$tFOe(Mza3mT zb0+wY-~DcIa8LW5si|OQ`|j-r4g|iYoe$2pS}+W8!A7q$-_}pUW*Ouq;k=pL0J4ZM zy$G!UwiCI|P`8>P>Jb4fXtf>^K@0N}W|jj|;|crl8BahP#-MM9N}uOIJPbrK4F;|lCH+M`1;E}*sa<_}5GJjB4`s1pd(xB2 zIwW)iC{uDe;C~7Ia?m_5t%jAYI_{0hY#3|+4lD40uUU7f*iNWse7$E3Bm7Rew}2WV z-eDw-g6oLT=?1Y|!`%`w0z@&d$-K&?&-_(*`eV~xuofqylp%eL#IUj*S~{*_;YkiW>MMp&iF@GbY~&E z@B3#8+3cB92M_K(v%BSLvwPjVv}EhJb<}>He@nM4EIkALBUkFL;8|b@H z&f+fOGNxENBGjYAwgUXT@R|H4F2$w59W$kI0ZTN|q%0|r*j0l(6b00^imlo8act;@ zeD~c62@9nxfMz{z^yCBfqB5|TPWwC@6_2nS>-E} zjUr#D!*aYl(jf;c#L$H5?66CfKpmYwXn_F znHziXW1k_H?rb2fgA#&0iWzOvB?c{h00_ROVi>72Lw4&Oq-}o;92#Q zr^AVH-u6nR0PhElh5*o-;bbd0zSNO!KvBJ`cBoqM#X9E&XjDL|6^7iyGeg#ZK9I7; z->}|-!q`il=%=2E4bB9!hgZx^lvmWvV1=Wa=8AO_6Dv>wE{KuM=c6!WmXU_AK-4*B z^;7r?nJ9A!a2*t}@x~7yY?Dg6im!(*()R;~JS^)=I)b={x`WqpvrreqHfhvE_%o+< zm$>mHuN!q8%jzWciwJ0Nr94&#&9%W#q%kpQZN>na+?7By^@)2C7a?0EWE{;Cd|mrl zA^|a3Zy0c7bhi6=BM!Kou{mLX&g)wv+Aibkz-W^m{DWI{-eY#D)+82CEl zozIw3Az8p=iDo5&&KzIv@yp0Bi;Q#scd+*+A0mNFjrIY|LHQ4we`gLU*x>QnAUVMfX#8&zSc{>O6X2Fq6?{H0%1g}pEG-K5e$1j+RK&R z+Y^$mSR#62$WY8|=(hvWEC=0H=C|Woyl*VEt|UObAK;2?{ZXhvkW6lIEgmA(5F}wM z-CcWKDu--CI-?^iPl2+k3#Byj6;zOkpq%GRjdYc-o1OIq@9kotL#C^IX7^kl-?19r z8%D3sqZ-%Gli!9K5YrIPT-d*HZT|{$ynoR2`fanlzyC!xL;hkoJpLjLkH7f*lTSYU z;-cb?1<+*mIhoQy z8P-z|d~8ffbyG;;C2nFexe!t=V!{z2RO)sxvYSQOkEj!uyhaf?tyls96tfD7un|09 zf?RD4xhk+Y)!$ExlG(Oo@8e@ntt~+8p`eYVuh>~w6tts!=wD)g1>Wxk%)UTd;?X;g zZ{H}_YL&{$nMrA~qhsal+O;dUY}~l=>4zS=d*yQKA>{X>YCMcVQ8A1Az%J4}I{Is; zGUFp-9V}dI2@NCzK zOQ&o5FWpqzdTB$^s$IC}>^%=WFnjmymoCi?)@tS1a*H#aFIC|}7p`fTmC@<392QwD z^|u%M$Pm%?n^0YpY&0=#0t`Q4f|jynIA)o(a4YM}0#TL|jz2yqC7iC!XAB3!wf{eBZyFxgd7TN?UFz<8)xEd&1wd5+D4?)c0R%t- z1owR>!JQN(N~9!`+80Wqc2Sf>Nw(zJacn1YI!?N0oJ=}#CQgqhnW$%yPHZRrXO^d* z`ImH(9wqMX^z+Q0$-L*@szL#z6)pfp0K!J{p6{IRocFxvJ+fKju~Z|fVTT=NOKdEb zgCs--`z~7gP=A8GO0AtrgnC?#d`L=QZ=XL@^LFKLLd$r=hMSvrZ`-|Z-_1?ayLR2I z0Cv9lK4hV8E^m?vfEE+9ia z2yKOru%~nCp+_IRv3)~*biO)7?9sk_9C#rwJ^A*bW5;r-i2tMcpUkuKLw(ZQzW=t= zH#9F~_HLQF@pPuSlCQP>aVXfv*9-#Gs}0@_Uxn`@#ci6gMIUWeY=IXy!hS;w*lZ@j z!JBYf5>5*NwLU=y@cpHHi>l;0t`2;B>4U-7lq+FU9Kcx!K)x4V-8g4dg-?vnTm2@G z6$2xyItWcz!HWg1x&Wq#z5q_SF#(q7an%@OV~p!a43;OwY#EeLcQUxdK~CA=0Hy(p z09UL5?i4aK(e&9k{La$XfFuRE-5{05dhQt}f$o>j{4O}5<=|z?>9&ass@jlGkE)&~ z$Rft3IV}5}v;~aFLS(GYDH`YLYzA322fl%3J)YH6kg0f8%_4IHZz>kAB-uir-BUxW zO1xxc)jrlP0|rP{y3XvYH9XcCA6*aJK0xlN=2pPr>&HykK_K>@M81#N3NT4Nx_aTA z{11-*R`NIA`9^Z|_&~CJyqLUvk@62JF?>lpk2BEA^FwDzm$3guwVnhQ%D)EPs|vi>5uSO;}*J;4Zgq9X+K=qxq9o*c}%`z?BN? zq&PuIsFT90roB%BjnjZEaJy3@F8vkuX&PGRAb$YO%PHn0hA5c0i!B1G+|Obx+Km(J z#7h7rak%E|lrxGg<+ff*lwH0KsBley_`=T-O-|Mql6*(htY8fYNPud3}1*RW}cRdU6{`<#{C#CsG98s zc}T&_vLK&Ovp<}ira1KHsFrQiZ`-l`<`Vkz-#{Oet2B z+35G)d;RsR-@Dq%G=lOh?7j!@hLCu0>x=CjQLPE{aMOJDCq?@*89i~H;T`aFl! zl8V3-3oSHMBKaivPM)P#*t`=HeiM?2rlW61q(MFd`(SmJsaFuZ;U~Cq@J>4e5o;Xu=9-raP5_+_x*`Gw4tm+hHAMma zV&n-v+IG~i2(E?TJDMCJoCn-lLHZaZDD*?R@H3jB%0m!ozWTja%h??FdI??7zySevk>zDNnyy2>F`&)8+@><^S%!; zav}WAmO-1zWk6vFZA&Mh)1d7M^bksbHQOU8__9|2Hb4i+^5K1ht0=U8_~+114*#|j z0!opkKHFbOm>g#dNv?uJu@U%yEuv&MJtD<&0__{JYy@FPb`=yBoPa%y7VXvG*?f{U zFfHn+NuEg9Qi^nWFi(zQBnNyNtbY0(%1{X`)fyT|Er=C7_6nIs+w>i!zeCxpbg-d02fW0khTWh1{o`uUK$QtBIhVr zEsi}!$YCWTkrIoHmc;zuz}%z*aZ`Uyt%^-wgTt)UFG1p`TT)P9H9R_J8zlXbmYN8} zIO?d9l;4LkIe`+!gL%A^a(KCrfgmHqA%G`ZQ3N3qMN83(a~@Qs`q1j)ql#z&FR2pJ z8crbmC1%+l!Oih!k-ulg!QL+Z^ox&f^yIwX_=V5j`Q)Fp(7gvl2%RAK6Z2~bsjpLX!LAXMiL)ih95&?a;>A^JpD@nhuX5iSKZkk))2(e zcBsO4#skl4jcJMaD+G7u($B}gtI-OKt-l5S@~!jU{xr$hRhIp0TMmHZzw)0;|J1)F z0jZdR*#fjaS#)gyRB}uvg+q?@da})`_yP&gJOivl6f7KaKpvtcBbr3}WR)A;!! zc)#ML=;*;u#eOpuWC3JgMh|}A0$RF^jTv|czUir0)CJha;l-4Kzcgy`_$ad;Uv?S; zva)PJV3e+7LFqDy#vYZ2v3~*orerM1#Vsb3?UTC@X|eU)5kZtgJs2&}-3ftEuy>2TlSm+Qwhy@|++4_0Fl`KND5wTvmNN<&b<(fEk_RT@pbPjjFor4->vu3OUQsK} zJ7ahR#TwFf@*?sB93sl!mK=|Kf%;KDtBu9B!61)7+f~XqaW&&rRmzdHN~uKjY?m+2 z&-I|nGQ>KU?Xvi^6T<^jR4X+(B}`=VV$j2(uJyl1_Ti#7nh3Nqu$^&XO(e6`lbG>w zXKk$O6AwHA&Uc5vY26)G%gOgx~;mn(v>R7+HR_)-O#MicA`@0=jH43g5O zo0TgS{GdIH-(vbk?6{n6bRpfINXF}HEy#Ex4Zw2nnJCy^=3#6GXUxTTK9v@2S=Eee zjQZkQJs(>Klp9ILT>9LK8X&1aTMZSiY82gK|EC>h9$Nn ziK^}jTG7~%Og5F%-asx!eV35qJvNuwSexI_lbrkiHZb4c@S_cXzk#c5n48;BFC#KiAAdK45>HB-s5?iy^h>Bd>b-g3qM4yW!l zecXIP+HhoP*cMIJh9|=p)QtFcI$gw55V4P%7;itt#={~`#(s3Gk3sbUeb)wJ9?#y@!ENPXjh1512|;DiJ@&Jsczbo)l}6bu&sU;xnw=k`_>a>VC{AZ)L!_e06zzf*N>-weS*wr{wt{63~}SU zf_+kazK?-Awmp=@n0?7`Twz|a)`KxZ$IghYU%$T2WYru^vP$VP7S?l7rEe2!9ALKM z>XKr#h?Prf7Yw1%En9?}laZd&4j zq`_LGt9vsl95*@n7}lwp!Z($eYsV1VtY15x7%%)^Xx-{a3*!~YH>}aeHLANs)fg}{ zU=(3=#9&P%SQtqbQnJm9n-eJA4Zu+l{10N^-(oB6PvPU;P@f7n(~iyg{d;?&hwwc1 z9X!|#?q)abCA7NX;LBB|S|Kp-a(sChuxXN8L?m04=XfKnr!-YQraNP}!SiFwo?fDO zhffc8oBFG?p!2t)K*#0JS*_!t854K)(Aqb~PjO$AaVEo9Otjj1N*Nw>qBB!%jUR}CosN@6d|4X=CbE@$EQwV zWoP~NzUh9K&2K-AT?W0i#*p}@_jl&xfBG3}e5x|*k@@C^07v8q5kci|Od2CZ7ywj6KAcU*)Jin9Gn98u^NP4ND`3q(eT_m0b zj>cEx8ATc1x%6bcF3!*0;feeVwO-Ve9B_Bn^QI*qP|Y0F=~Ui0hD$Dbw)KchX*Myb z-knns<4tx(@1_w!70^v?|X2`>4;7$miBT$z0xp1>kwj{?^j-y_CN-H=x~9Qc z+fE?+cFj4{dZhOfDM{s=kf|RBc>wLNBlUzu%wyuI8oL)4)~p*J%bxPrZ8&vmY;Iv; z?2&cr#xS0LZtUEOGu(=q^h8^n21*+Pe1Y0vhzCR)?8pZi^l)2AWspO4TuH5~e|Z`i zHO0~&9TM^rF@-td7C^BxeSF2E6bUk_^+e4)qjk}l1E0hoA?=k*#^1IF@tzK4x< zVY&;G4uB{WXLfeB2Mi!5ZBs@d_otaOvPOw9W_#IQxC1d_&0XnDNi8b**b=y~HN{yY z>&nAk4y8X2yvaPq2(c3CC`Ie`8W6LZ$c$1w09er)2(JG=q^PQC<8D+zAlGA~WgzR5 zn7Y+K+IkkU8sTQ}zYaF3SHK+%mF-Sq;%j0q@nn8#aqrf-jcca1J^uLArmb729^AN5 zpVC)aAbj$zNP-7e`K~~UwgGUF$)Ei9`1e4q0*WJbh7?8zJ>T0_}xq>c6 zE4^K^#d(~ISU-nWfh3jktkKr#E2=Gal|L&VrnIsM0eAeA})%trVrwPpEB8OoCTeM%Vhg7q*a0D z7w6ct&Dx$eG$s~zJq@Ds@h+^Racj9U#8Ml%F={?h4`3kZKvt0wf|ajmI?}PETI1!N zdY&jKy_zUAEG`l53Hyg2M{WceGU->oM3Z;imfg>6-I6Sow!C=s=#~++PxZVl&%W@& zmM5NhW=lgDN0xYT%f)uoSqe6Uz$}kFK_$@!V~J}{z-;(T+l-&FfboMo1i_y^jjy5@ zRapW#ZZX}RCv@Lqe5I({>r&Vw#ONs#rcb^()>!Ad;_gMvOb+78OHmYc83G>3>siQ4yD#GwSz`44nIf54N2VZ$c zZLCOKAgR#K_7b7)k9Zt&$&=!Y} zo;k zRBJabiCO}$rjqfBDCFW{R-NqP5`{awg}(?Q`+45HB*mn-#+#5#fwu}ppwz()C1?w$EV^Q5vubM zxYuoLNSIK&oF?8Tey2Bv5;cJwhX zB$rxGFvg)eH%)=Z+AEto;!ro>xTu~zbm&mtlB`0JrXJ1*SS9)$Z+dJ_obFzyKY`7Jk6*c>*J9OJcenn? zV~^2d!m?iO@E0=93ZH3NM`&4xLXIEa2*|XW%CjD8Hi{U8~~`OV?|Jz&2@9xBxmBTD0X;JnFC!6So0k~0iScar#Y_Ay0hk^ZVH11 ziV@x9>ru>tM48Nnu^JczL%3>A>tU7KpG6omS6&uh4h_IQVI2D@y7pnE7J3uxb1W{^ zXHPWh2NxHit$v_>cK7Z&9IC$Y#EClglc(yb752H+fr2hRrMYUWI6<0AE*RcF==3*Hm_IhAjW~~463Lj9fj!%`IFm?zCSyb`Riv>CrjnSkz!>PdLiHptXgMEs*zE`ytbVdVb`@w;n$E3C^YE`q1!X;KR zM&@Tn<7{GlJgY~0W|G{WLHG-_AH$;jZdw}!8zPFPnmy;)&<>1dHBAzcivu$^gw$n# zF&;{>r6xRPF%=Po*G$@W|97 zw>|dl+nF$SdYG+#{!)-{U)DjPjmY1u>zb%K-31-r*Sdkjx~|-|4{qV5YHsQ7UMobw zf+8N6it%aRLp)aHL#nj~0%)LiX#Hh2Q*Q1T2@c>lkCQ#P+i&u+0hCycW>&X*GcxbJ)aaiqH+TF-(4PGQq{y)i*M- z*Mn?I(#lS)$a?Ey(-7OBeePyCsIf5?9aBsOzvcQfU&ut_`K z3&F)q0Urf5+8HoVpqlc}1pGTM75=TcR*Q2ErnUrmN{$JdGhj1*nvWK9T-KG@gv5C{ z^B$q4bG5X~rZ(srivVsJU5_iq_~^tiRKuz$OQHj?$$cTDlo|aj@QMulg0@~g7;IZd zMSX1DLsOI8sqCa;+ZVTOoAje`NU2Pozi?sl>_ZPt@{v@^m^5zZ9nBOeKv0(~vUF$C zdmS|!-tPdQRwpz)4-kLaRjuK??mUe2bghb412%ZJ=ttqON6k4&yqDg{M|x~VwRh_= zPTtMQGu*tVf(an&DPU4dIRC6xUr{dqGZ~NsJN#|rKjS9g&;cEY%mUpAcPgW1?%Qy2 z?W}$&G0Rk|vzK@8p2e`)?4y@1&7Qw_F*mysxNavv9o~QxWknkaZs6g%CX$KUYEp%P zW_9l8Pp3)EDQ$>BducX{guI)_(j^1DZ?hp=GGk1yySF=H%j|3&>rJy@Dyj%hSfvtY zr#-{-W1rYNEKE8GvvE1){N#Ra3*rEU>_9wT%)f^DDCSn`Cx&xXZ77Gu^SQJ0^Eu?A zIZ4xUiziOx5-1qrxmJO_3}RYo6uLFSiXluR$tCdki5>{c)a$?)R^x{LO~_Kr>duxf z-I?z)ob|Y{W!>d$pILuz&;Ea5^`ssfM2rJqs>{CfMmo;An;{{3AFaXW^yS~*mN2^lHNWA)Dulr`}pTvXGjcd~5Uwe>j! zX5*;jJeToMVP#weq*@RU1aB%4Hq!NH@6B?LCW3@P5EBn5W;TIUSW!dw4bID)@_hVd|2KvvqVSa+hM%%*Eh;9vZGYApfIoC7B z4@Tq^r0EAvtzA0+p7_AAlP3ob9X&dL$=U%k64^b_N$+g?5hY-)-+_%`;btL5sZ?vK z+-+Vpt7EmVVP(en_&j3`%gC{ui^#dsqxWWx?@vrj@dh8yL7y`KjS zFADi1e}O0Mz>jEyC2d}QB=T}(|6FD0?Bf1yyEjA*T)MPSNhB8b?BBmoD&}$vFYeyG zz}WTzh*D22JarpiT6)q;X)oni^t_kf9q^NS1CTg!+u(-B(+{E?;UMEQM-lXvT*||O zYW#KyaPwAbvy>X%Z8PA3p;;)FREfu|4>2}|#;aJy4QUh@Wv6O2WWFEm2~@y}|2_(b zs%@c#nke&$F2N6kBcD7vL+1uyVdGiwGP@k zM({Ay7=0d74?{>o9q4DNHiUt&v?PwjO6nhRXm5aiA*2mV2Af})N4ib85MIU1T zw!M|6Qk9H_p`oGe*x4w`8&q9NVRaS9TStXH%~OT>5)|xX)rI;MEFsmSPeDKu^8~E) z)F1xujHYRJRCO`Pgqifa>~y#KvVR##fK5QNZ5QELuSMRXI95p8&p!V8-dDDdZ+c~0 z;*I0S?Q5^UZa@6WD|YYrxE)U<&e&&e<61!sYu-@-08cD7peV4-XxLY3-b$1pgdb@7 zN4TrJgNNXfcL5cqDu+OO_+W>7wd)z&ZA)b&(5scb+)6Ww9xgFcIowGAQfM)wgasM> zb?7vf1zWN#SIZH1la+B()Nr%r=YiZNhcia5TwrU{LKND{l=P zq=(cmDtLJefgo?LCz*kr$BrHQP~yS@aCekAZ`}*1}p(9va~)FZ!5z zo-|F@#LYr;YNY4+7uZu^gOk*mb+4PtQqtYKdtf$yse6`}E>hmz%(?AZd!;F$`wx=m^>g_eyQeh8+hQg&wgI%%t^~^eR5V%U z5_z^ua2x;wUEH~qmll6VXz*U!fxdO0{G>jrqQ*^_|0g4xRq`#ZX4JBrH)AhCL)OB! zFmc`TyX-D`Ph^|F0b@73%aY4%15_Bc$>YijiXk!zt}ZHuW@ElTiyb8Wv;8X#)XEiF zZ(*(5-eAN6#?|F}l!{Z43Mg|mIc8ri3?lkvWP*ANE)?>Hbaf!3EucI-4cAaqCVzaT zaqf(@_t5b0R&_0={Ba+_dDIIKNqIBMYQK(a3i$=rB&*V&EH}#C1;7w1AheQ0$7?5Y z^cRBohv=8sc_6ZDV8%3eUORPaCo?s*^Xe?+|ybF&%?&Z^# z#e28F%@pT4yojP6Jc(vLpzzdEkqoQYupK}i6|@A%kH~V~#Kh_t>fd0-Ee)XzGnobi zXSxs-g52($W=|$z9q6wzru^#9wa*}<4~NNxNHdU44(xzrY#1IMzL*1)U_WtKHg}t1 zAA|tisW^s6Ko%oW;OHJ)Xeg6dM%upECU|Dq#Izm+It(-zgJuTvuT54gI7!$voW>A_ zxFr#T+#j)G6N$hse}`=EC(HVhsCngeXiTp2`}&H-bx-WwyAG|%by00V^SpIvP3G5i z=6szNX=mtxRhrC{@D05VA)c}JyB+Kmv9dZwc@xP(w)q>$Ul-nG^qmrh-Ce0GEt=(@ zYmhG`B|p*yymKVgRa1qt;U*z6 zy=064`Ux#UzJuEa$yt~k1Zdro-hf{zBbN)O0mJ0scB$PmVn2P^(!4`R+5ZrrLN|UR z3GQQzZiAt1Rqw@^WF|GlmI_#wY}uNDF94;!C;Q!~lnB}5iDZs*vyj+swv21oxqWL| zJ}4O*M@B}z7muk?-$o*i&M~IPa|tCRFgwZ+!aRYfN2`|0eSpA*>)TF1OOjW#BLbKa zsx@RNRvi}W#=bGR>R3#sCwfB^($rDrrIc6XT&Nqgj0APB+O0IXVQ$@&Eyr~!-=CGhsu)6@V`8ipl%)~P8Bq*&cJ`I~32?Nb=x@<+{tHw;7V6k8 zVB54~>$%9)$Tf;`efyr@u|4-v(r{l&2nMtL{?%5Y91 z#};)X!R7Rd>tQwti*{0z4wJ|v2iaOo)1h)37hDn3hlTui;N)T0^W7dUnZ-C^Gwi{m znh8Va&`dL7_%jgsbc}PQj5uc*ro(1)f^M0huV#ONk<~)V=29tVl&Ly}oDRX!uIQgL z8m2@<-7e+0bVFU?T!WTO1WV}YwZ>_-bdJ*m)$3me)vFCVF846>DSF^v>g0tPwGT?2 z@G&*p+pEIER1j2Dcv(_S-p-I6o<-IqONMPz3T_ku0pK+)x&r#6#dxceK>RnGwUdfF z2$qtEwKC?7bQ3lC1Wn>)o8U%~3I%IxJ|2vd?C#XDynhXzSQ*qUvQtgdNDYGp* z>hs<(<}R?kw-Q(G+iv7f#6e4g>wge@PQv!yjQ|T;CmlTg`k{mV+s?tEHERyObN>9n zH{O2x;481cZX9g2z}vx)e5n14Y9q=FnlN6d{Q+Aw7o!DX5w~`WKGKQmiC|%dH1ySi zhyci%T9Fd+bcrjtT{_ycxajq3h&VQiy_J1huqziC*SFdz2|_hZTs*ZVI) z$0>zL+RnTXkuia^P^N^CsZ@fba4-^~jBq}UMA62m`MmmNk+EsrX8*(WU|Fhqms0IG zYFvVi2u145OIB-e>0cxgB6AqYhqVXW6649CG1VNA)GGd+p8q3r|cPytX^PacXOR^4e(Lx|S(LuSH609(%0x>eN)}+_h_^-hBRK z>E!K<)poxnM-0&Q@J4H=AT$@<-4$pu(cUhki%r@PB_l9lS-@gpd=$A0JyMV;u2HqA=Vu(XY$rF*@He{1O~RzS;WSx*t1H-q4g}SwM!EmjZ}LlHtw%Vk@Cp zoh;^8y*bne(7ZuMMv^g2BF7jk<UC~g0eg57&^~sr;8;P%YQqomb5St9) zmsILZ^6FQA<648110`qPL*}{TejF8@NG-rZ{<7KaqMrQ~U?GppjXt8-Pal15?EICZ zdk<|NIJRw@efa26d;ZWNyEs%D8W^zC^?V(oI7vIv|$CY!C=7XrMrKM*dXiT^Z5`n@p%CMU(Kbof6a*WC2r-C}9jE z2k|Bavg*;O7=uO%v}$^35neLplP+T%3i4kBwcjXgx;C;E7Nt3ewXo;1 z4_zMHcx7E~_DUlcEk&y1$BtE>7#pkZyK-BOww(N~um4fD2*xf|bZCNsix690o5p60ob1ZVF;MBmVLByqxHLLzG zdM{u|ge+sf3et(1)ScrZf5?izoSb6^^8GO7?x;wDTH7GzgfN!YrIUyAQf0zq2WHLY zrcSp`f(zCGY6TdFNB6+dA$)^0idP28K)15ulZU&6Xs!l15gyo$Sp$wdto~V4(y)LQ zqAC)QHcJO(H0APE8XZgkWihNrQEb!uj$s^6;Z8tyjQ~rkSlR<|5$b6hDZG;LxuObr z9pKyuu5s+8!N#M!WsNfU(V8r2E;h>WVm=-!@`kz=E|}(7V2FW)Z!ZRG$*ajuf}=-Md#~^t}UYjfb=lxapZ8#a2>-NsI9+ zo}X5GF_sq-qd5WhhG1fIqFq3@AL5jgB_{ul31#bV7_lF+w)Qk@!`#7lpPgJ{4eRs4L7}Pj5*qJiWOG z|EiuB78iTalYhJ7ekanYJIni1e#jSG01GX2T}9oX}INqc6}* zK7)`6gOI)a;G?Tj&wpjjW)u+avbLm$lHu;3kP<|A14W5)^*sLdxc zrR2T2+M21U{mz00UPp8SnUVf|Z1+it4jeTHo@#%+f#YPAgBMMj8E3ML? zXU6$nj}Hhs**Qj=D$(UCyXXPXVWFuu}v($|h5*T+c+LT3}A z4q|6#sGVqr+EyG6&q@~^iRRet9`Jt?iaCM_ds!c>G2JzFIG$u|k9S0fTi731>zNSvM^N$DJGNGp*w)_=`KU(1RFmJ)t(H+K8$5S zYTnWz>7`@;8;41D1XVqX8j%Cjkx|)LA`Tc{mJwkQa3!6GoP*eHa0$uer9Gy|>Ak51 z(6MYgBS6918V)PkN~btH!fKpbwrCfbW4(RZ+`wp#fFOy;!q?NbF@dsoBQhzqknAErW5boym{j78#fkC zEUfVVz`pI!9R~2$YuKCeno1p2MyqE9Ba+_>m2!mwIei|Mt+$h@R=Lu2SvWjC2@j@X zV?}JIAKD5bciz7GLM#-<*vgD_8ok{>?q4p&1niCEm9iO)LkUDnC9wzkrQJ~T3| z>_zXvwWmKiw|2L;ZSAMeJhS%WPd-`u{zo6Jov%$-r#(+wt1VsK%l*B>(Zk*rSq;}R zDLRK{#H2FrX~KsBl361N*TG5%bo#?{LLv$7SUWn9@NA`hbnfy1;7@gLz1#mz5Cm*T z#}a$AFmtwLqn#--Nsmp~fhG)eo28-(<5#eR*3R)Dib+X8^`2&r(JB^fZwX*U?U|M4 z@1zF|5AYI~#J(BC=5f;hYql~^YkHzf>tWR{=n4)w2J866u8PUKTOh0iW|~~Lv4|H9 zI=PBXClXW+qS2AHz9uYaPQmNZwqg4&)P)@Ir8*mFD;k^w2HM#^smE$^N^Hpm>TD<% zh)EHO|HRI%0v#N~%*Zq%!XZqJybiqLM&!x4hJE6V!}7j24zcsdfTkvr6S&f@Km0KJ z<~#4OBZHHJ3>p+JZ9RT)yhkoA;@D~4nZE=YybT@qqInH08rNNf8^ zS;THxWbVsNe|JPv>w3z4`IS?z+aaDal+?f@1=qnsIqW$p|s@=xS*d>AvQ@ZfBFZ zD%+RF&>a9)4=bR=VPuPDypTU@=#Dnl2Mu-@T}(cDZ&v>n0}WMI!L$m=u|)Y8(+yZs z)efdI*ehi|$VzG&lFN45^c~D54?}DfT?RhmWw`CW7EjHZ8ivRuEjfEX2Z7E3O(*{t z^&25qrDgqe>}5nVoiC20;&Anmk)Wjx@$rpMHHTv$0k$#1^AB%)_;!b(>GaDF2C@Ol z+*&VfLWD3%|IsI%a?RgzlV{u-Ke2>$FhVShHq>3r%h6+~{Ly zR*BH$PUx{m;olfzz87!)0S1>Z#QS`#o{J8uNaELyjcre0w;#q2_59q34+z@ASOq74 zem{l_x;rhbL|n!eKQ>oA@ZzqKtuO8z0att^ij@IfT_d22kAN;d(mNHI;`x!tzM0@;RioA*mU7*K@U*5ZC`n7d?s-p7tt4pL3w+$d z%%P-r-ITm;NTH;wBY8Hl)>fCBb!C3_<&p!f`ue94e_5S{X%4Eh%o}1*Tdm*Px3#-F zD6MAdbLi<&g;hS$sfyL%m92N_Eq+mLg<6V&B~s>2%nPLuj5`qwall!_$$>D{4vZaY znBgSgu5G*N>UijHxGv{IpTiLiCrPR`yqw4ux!hixacq&+=3t}%s~obRVWOcY$39SQ$J1~Wm zN^A${a zKolF;Vc>vR&8*Q8r!kI747FY*jsarbIl87dh7o)}Lz=a5Gmb?^SQeeg6`B0pGPBS+B28MYIotg_Q%xHf`Fpxx$o1 zjCy-;OtZIsZ${pReS3C6VJz1Jqet5bL4``jTpTgcr5D{H50l+s{}z(T4-C%5iUMhi zp^Bbj-Mk;;Qg$46bwgzZ6P42L$kBkw{YC`4u@AkpC-T~vGrMym>5++v-7mlT>TX>w z%EQCEpMUA4-3)enNYZY;5{bli$C?HXuI3KMzRkP%&{C#F<|Bn%%DCzs@w+_<2GvmlzqT6Ts!UOka+TU)k zklMTsxcsJx9G4&Ebt>DARwOVx5Fqk7e2bmf2X}n9&X%h=y9lQP^oDmBi zdl|iiEn%=}7d{|jusbM(u!L*~EN~2aGifHJ3hXGC%Wyf5r8s_0bH06VcK)@jstUep zYpRq_iqO=QbBZD)k_whjN{T(8U;thiO`;aZG(c}6IbgE>SU>61ox3lKQyxZM{1=GL z527#mYUH!XuSNc41e-B7zx3T_N1piZGb6wL&O0N&`n~UseCNC0T|csZWh`!*kzy~f z%yuWT0oMysud;~TE7(Q|kh6_th-ha3-VSoJFZ%-e*5yBQb&ULVj)(R!$N`D~UF0o- z&?8_mo0@d;w6`wGxK$0(%IO63TcdhGVtqX;5cpvld0JiWHq_y zR1OF3mQR*Zo#BjieshzCMc;}8h%ab;CzuS)BJM7a*u?E&v>$*3CG3Idwgvt8IHJQa zcCKL)Ef%b?$gi;6)E&0~vQrBk!;6w4$FcMcVoOFW!FiVAtiwh^S|f(f>JqP@l}REo zl3hgYtr!OtC^(G+b`ve%Hf<9E3q5B$&RhXAlS{)xkTMzUi%Og;iX@Ctqm~DioZEB8m=>9S6vcGdSK4NXIe# zw6AGE2-*q9%9Mlh%4HvG#kY`I7Tz~>+yZJ@2M$M={8*5OEc*DH7HkYti{8qra2=Sn_Su7#Yy;R8G|ng2>i|{*8O+f{yOsi;3jgGO$7q68^%;1 zyZQO;Qg(DyN@OxpccCC*G*H55po9rC3FCpJ%Q-HM|8tS08C@v#pa|0@+#`{I{kjAZ zw88d-Z71^6&Lo5KVYND~zvqu@DGb^|Iv^^KfHz}!oS-5NP|VU!6b;bS#;YQ>UtowG znWdf(4t4nWU9?mm8_A|vcLA+2aLa7FNDch5V)Y}3fGRz9cWuM|MODtvfiZ9D3{ z^iHXl{x^Z%IfvUK4u7qI?@3b@A(IAM*w-Aqx?9?Ib(fm1q7T_4G;_oUAsY5Gm+RiB3HDJ?6TUJFyKtUZ*AH9)q4wO*3Rz*)qhX5;wUs73t zwXcqwel&I9h-Mu@*=K6#fFW*cfMaQ=38#-Dz=9^FU_kv5Sl0tGTMvZ9rl9O`FR=P_ zqj3R~)8o+gLOau5gB7H-*Ca7oOlYjGqr~UrXOojA!R})*DQ^7becD(4r*I1jhrJJ* zF~PgL*(0a^*w=~8{r2FwiyuEYZZLb*z1i%!uRZh3xt&`hTlefa_mxjSJvY0sWnssT zb02*C@wxutHI?D<@#MMIJm}Bqh?0eySpvCkSUQjg!`8UR!?FRoie7We9m@V&u^wuv zk`FT+sW_Db=BX$>w6Dm)tL*rK0p{ zv2m%}wAX>*h!xqA4=v?^gqD~|>|S{o#1_!^rIWy0ayeI$=FnX!N{o|;JDkesWnQ%B zK-o^i-F;ijXimHcTI;Om@sKc&>VlQ3XYtaV%dMy&+u7kAt=WUW6OSgG@OHsACIz`O z&~_&d&8HFQB1}De^X!=&n|i;JI^%prJtN$VocZdLPoDYkD_=Qtw(FAR1)DrkqNQ=6IKb_`;cb@3>PY8 z)=go}E+@#RaxM=s3x>^THkQw4xJ-VV#3&i4W1+khve=pc(mmrOySZW($Pj}WV_uX2 zW86y&_(1~fI82rcS?q*Wz@rlt$0`onDkd>(+lmUhk%y9x(Vc|E28jPwj%Kiw!2z$7 zbU0^VC{ci}nMgco{nh&k4-(juA#*O#MErK4MxaeehzmLY;?qOhp4pIG^UPXx`0QE# z*`XnS@tJ4*Y7#qzqER1}j9>2W_lu>HAGhuOe&5VT*B`vW>e%0)RBP7tn(+YHw&>&gbFY>AMLlUBh`d6Y4T61Sy*SMz1O+RS+U z1_Sb}VX8qF1Z5Fd;KpCB2`lp4MoZc9J4RRNx1Eh72bCX!s3>4`oUHit# z_n-?9Ph?3pTAxcWiBv(kdh&lBHUZOO@iEp8%Z9FOii)YKi}0`7mTbmUd#7cghof{! zShc10=o;@JV;3QsM;p%{hq97l^U+Pvw!@AFup&XXf>^J^%SqBOGSwm^>cUOrga%Cj z3uad=@CQdmHbIPLQ}4jQrtV5*Q?9EkwyA~btu$6=fTu7H zZ>GyQa8MBrO8h4>!bFf@0|8oQsL*6o)2&XF{!a>&{q%wzXVN)YFL47HUsPl%&zMuH zbqK2$c8n|L&NtAHNRBz$llS9#0c$mkzMGbH)lij>o}j)O@f9{AEqQ>PmzzEauc?7F=hH}mJF z2`Pu_h`G&M52;gdS+;g`2g!24KlaALtcn72gT9(d<#y%;d(x%3I%fSLx{l>IcIl*5 ztV_V!Xtt*)XW_il0(Lq|0-7BQ25cQqW;DjZ;Bl>+9mu89tn`>@TJbpaK!Ks<3KMMa zobc+sS^aZXG!wL0L{3^x%Hph1`&Ady1wdU{bmB2}0(Pk=Vn`_p7EDg#?L3^^DQcK~ z0MZKO#ze~EjfVc({hWjrN8%^wnRj-~vE!{~97E4so?Te8uzB+_w9Jp8RelUT@?*A8 zC<~FuF$)OM#IdCzB7(KZ_{}1!^|pB)LNugFAPo-z(j&4znyH{7Pk2i-(*WZ_@0&cE z5n!r3ij-RvDtc^A?Dl_orSq4?a_t%-K& zGezl6`z4dNx?DtignK;}>xP=#mvWB3oDdLM> zBlk9+^45OYidvYq*^eCt90r0oC97pO;di#ITJr!zi#QhRvvia)bdnnA=H*mtDg#iR z(O;n>0`c#t;>PJ(Xz!&Xz`VC(hiNs~VcIY0M5g&1^N0*aQ_{Q|MZpx6tdkyIGA>@y z3Dx#>k>;rrQ6WC43pgM#Q;XWF?PB1tSChU$r^FU@vn$W0r=*qiWF5OrEl9Pa$q2>h z7ByYtLNZNQVgC%Q)LfvSM*Eo$fuDRW=+vH{8@V!g{MEzLg;?y+Ti31~nwyw7^xB(m z9#WFYeE!h0ufBR{X5G3&xo8@V+C$~(>B&Qr9Tj)Sfe0eRE%Aaf_S;OZb>8okw-f!` z3orXN_lA~>P`Dt-CP*G`xj_h|Yr%B@b%MNNDaTx(bI;FkPM$#r75xdcU1TYXId=!0H-_P& zJq%P7j6!fky6|#+7;MIxjE;#G9fjhjBl**gfU%S2VK_t z*CQj1;o*&}8WkmhRibiy&}U=NvyF!M z{MD{gb3Tb>=F~_mV^>LVe4nr&QkgKbu zdyD)>%mqbqEtN^CMs&miZE6#EGpW?93c%dzA!0JX@*;Qbe!@I3GMX<9F|t8q?KEk& zKiDMwDo`@?J3jp2?U(nyursmch3$#?7dBL)FGLcrJpX*{#g|{MU4G$(nwCh^l>SQP zNbN{F*;{e1FIlejUbrW*MWsOSrOUl_e+L#4nk}c+{U4wp?V(cK^DsT!*AL(1*+6Ak z46F6d5&rhKEa{)L&q+wIE4K#upHdV+P7EtmqGAC((0E^t$&|Hj?DCU2bSgy*7^N*L z-3};bpCM``Q{~Kz;+GjG7x%E6(ts94nn8KT=}M}|l+X9EH4f86sXSAvTb7cZ%h*h5 z)QNlieu3ss58!2*DYz-cl)IBIEdo&I&qX0~7?o52_HgB5m%{H?;AS#kGyqOOs)I5nHqF+*zWt}bx8MKuD?DKDB_0wYP{7L*HmAIR;F&4V10G-Bvz zVxa&)xL#e4L9!Q<%%*NI7-jQo4~ti%?f1FNsV#kJ$`TQ{Tm|Rhb9Q*gq*d4szkHU zQE+76v{}W8YT#U88D^SsFm=XumAPt$x`s!EDzxCmV=N+J^=P`QX zo_9OWL_4@QZ+4u9W*;TE)aie5HYkDbLjS#qzv2IaSwzb6gG!L9zkpO1;ym?6cuQ04 z2u@D$mcAH6jd7AUYt-u%9Ff-i86BuP9g*c1J+ApCjpDY~{Qp>zbTlSoNqD0KMsq5b z-e<&F2fb2%0#jj#B03{sI|M|WV>}C(Q|4`qm9Q*Yn=0OOFw4YZV=oh*!LknxR0@`j z#>@go%4G0j(7ISw61y->oMP~8EMMk>6d>4&ODVv=20`N21y*_-ObGK?Q00}k?5d_Q zv3SB{Y;@swr{&B69qOTLb!>%3Siv#Y##L;KmL+2^E7l!mV@3pFLxQ5(4Gz36oF~c2 zmyiRh4d}>#C2D-ADGKYG5=5HfV0>tl6=*_dRzUbbs1Z(ELkL^HhLZK((ac%;gE*hd>V!F=hrXxs$irLSw zSZp~aW}N>{;!R)&$o(WYp5|f+hR3mx879gLMP!C9gb$E6^1Vpr7z5Ih`15-3@`7)$ z$$c`B>vK}{IZVNQQX;NQ6ay8U{7p&g^}D(-)>J_~V8>!ua#og=m||HF62)4SKY_p! zRwkp-t=a==HZ`r)v4sO5y(WC9N(yT#xKhA}aj~*gJ`tvfirh*OLj>?=h!+OXB5&E8 zBG}a!Q;gL{M^9rs@iaygPw!sW*LNE8iKpYbe%gw~PV=U@`E+X!eCr6b-nP#~D_*p6 zKt%m8-*4aQls>e&>tt>+I*0C@fH%pNzyyhXYgVQ zP*SE0KWeJzs0tZDu*9ljE`U@A)E#ma&^+D%em%>pCX-=&Gs^az!e4ip=<=Oi7njsI zDBo$({uoBt)}z2mBz6F%azLi^L+&H>yM>z1+Wff5~i?cf}d>YWr@Crl$MZf`p&2mZ`n1uao5_lX=I3LWQgfnv5G!wI>DMQD+tr+PFi+o-?oK=|Al>< zK|d@SLX@}}uw8182EjbEF6#Jzo=u-_gFgO>4+%l=Z_sH7KC?QO|2IJ4RBO`AVydyn zRN{SX(V`8zHH2$da%E!xun)li8-Vp_s#U@N4l+4xs&=7;F4KCDjo3sGb%YzqsJvG9XVuEEruJr>DmSV8lT$|9AraZ)5%$nMjh8r*oiF;p;}AkK4!=btCj2|@e0L8TE zGr`;Cj=wr)|Br&@CG!sB7qHTh9b{-^Nq$tfcZzBzx+|@v*W>pd8ovni!`5RK^EmueJZ;l5l%!(N0q zW~H`blIFocY2s$&!MWiLN8K~;9E&)8eMjGa^wFb+Z6Ce<-g`$=x_Pv3qrvPpmbW-66S0N3*;PXt%^L8~|mxdUA|t)uuy`jxA_%S3I~RVCC99FOry z4BaTYI1VhiS?%>@*vzzicY!@%(*HxyzYVju$z`+6z=58GJ5TI*c~5N$30n<*T|?4V z!(?*}iCYamU8|1tVzz3wHrq6Krzf`z+bmvUhwi zz>7%a6z?_bxmNyn=Q2Y;^sI@1<3g&L0}vfmk;*Y{iOT~VSLF$?r!WLPE*E0&UexUK zx>~q5kCwctIHly{K=h;?K=g9CDMk{LUJ>Gd#e&OW(?&RNqk>1zUISn9-?uCqws7y# zvXqy70n7db7;X=4?c>n7eF4nKUyA&41PHzJjCbX7^>F#JaG1G_g$0+t{q?V3{>5*7 z>+;6M^@~G8mp}Z*H!deV@A8iQTlXJ6{O;vq;$KmLOC8$>o5Y+!ut_)1~f@*;r(B?VvH@GJ7snL*4hbsYhL(sNqvN~E* zw5t;e0OACJgjz;8s%=I|x9d^~i7C(4t5$+3f+j|hibg%Z-oRR|6birwb@|36^P`n< zqTSZR>{YFdwq9H$c^j7NYqs@*wNy3MM~-MQMjsfGoUI5wviVpAS4$D$qio1>0hwch zMs>_2qo=g~zP@9@YUTC)=m~3LYyk5r`q!6-jxk_CP)SyeCV|#OcQ2fB5#(gMyVsm@ zVU?k=7@M9woRy%X2=EGA1KG@EdRWP4C6ARXRl(SY9*rrcr$|a%jOaKue;ss*JjsU@#6I0|Eo@2#^3c z6d?d2MG_zh5(Jhc2zu`&?rK9J=_K9C0X#`mNIG7eE~L{+r`^-;N_%^85xnnZR#sQ{ z%z$t`)2_O@XFBu!&wTHD-%GnC7mT36g(OOssqvYSnfdwSQ^&VDpti|e-E!zF_|pkF z+V0Zg^)@)k z0*P0>Kxigf0`Cf%$w6D$!FDwXtQQIWCwLjbMU@E~z)j~(2-GBH%--Pp~+ zp1Yer`Orf*f9(0^Zw~j|-TdL_p1XO_?z3HY{^t3u78I15mwTJQXg1|oD2hcvtVwMO z!X6`o2Eyu}2T&}N@?zH#$Mi1<(lyIkGm#UOmW`Sj)eXyGF!f#w5EM3EP) zq;609iaA`=ott3?vs9Ay6Cep%H-_$&8LWxf340Y06E(;{$u1zA6*L~iK{hlB zf+{@`9W0nh=sO69Y#Y&L5)1}DCEgi_^0FxHRIO_bpRu8H^jj%ve;06b z%3~8l<}~){e6Yk=VEaq0sV16QI^R2!&DNN>+`=qK9cw+(*b5K`E={?P;tuO_Vx;8X z1M~}4Y~Ap7jD|W~{}e>4JlHEu;FcrcmY;*Z<|AM@eKz(A`Il!OeCh7;?JwPxKRkNs zb91Ak`Iq1KzWl%W+~@K`{c3+Qng7&FFXb!szWTrbX44vv?OYjS%3^WBn`w7?(K7!#)h!u=vPN3q&v{AGux`{#v#H4=PKOXD zidIm*MFpF3ctN^Mk?)PUn%{+vmoSyYq^~`m;;i8&dR4o8a3%Je4)7$ayhnE{700T4 z#OMR{=9t3OQfgdd#zd7tBOIg3m_Iji4%qdo`tsYgAnJb+|7i-gL%s5&TX=HtJS!l| z4HiBn-Fp1+;kC6}_wPQo`_Q3)E4OcM*RFsmM-;i{$l&0PTO$Hg$7I6jw9S4xb`#dm z@FtVwOK_9j?d>X{ps)s5OqkRL@FzSGKD)f`?oNT;8Ebiv!%Eu(Yl^ax%%Go%wc(WN zvPJedG~qD6on+H#E(HRcEKQ?t!iw*LG3^b&@q=ZpOs|*TnwPm4*9Ne1#^f=pE>1!P zo`qfo?2+d)_)x%HRHoi48k~illT?sTIFEP>U`*@6qAk1DHNglPDW1Ieb}S^E6enK% z+7{j{dgl{h&E}yrl>lWn(YrLiw7#AIb2j0bEpv4>0Rn9TnsJFzK0lq9Zo8Dok%U&! zF_Or|wCy6aiguRL&RRp^p>R?>m}a4H6qGCoRxq4Uu^o3E9g{{gOl4d@z*FB5faPJZ z;VcY?d!lRS^eXauIbUOSuWlJMTy+k1A$+}v5H*aYJ-B;&mYa^4V{>p#1tN!}er zqK`XXA<9dl%tR0;;2+QzZEM$T<`!XKfbR%RA@B*2Ckd0=u7nm3yfa?mAIwa4yt>Gr zH{}3#QJcB~q63f-_w!zltPrNm!@M{Q1 zan2BWQK|q|O$Zv2QAu?{+0Z?vSU9oAlamniJ&pNfNXBtORW^G-y`}Lr{f@We2-*lM z_0C4H;cXR4{@oUVIPpZC#-jT7t}ibx?pd2yTI!epZvWYV+(<5+K3nN2f^fa_>^6`! zasZJj;5{+|Ke6Yy@QOo8)%1QJcKXwVyIAco_K3EaIb*A zKkz&U(sDpBzKPbEaj+}pRqC3@%~XlPxxUOSvx0%z6)^LL zR=NrF-2ov83PDWh+PyK;K}p@`;^{(jHjL%*+>x~+?Jv6-30!JVK% z2^f_T2AGu<0fRC^Efy0{0tj-k=r~it)h8f3Mg!yM0GeB)JvrydN-D_arm8d=8!mR8 z8uPaajD#^h^zR+)%54IBfcOjw$tXWS=-7f%y|ww6XQ#>lD4P;c1!y>(VN?$6NL~c| zgb{OdJZOQqDcu~eYZg)HmkF>M_Z-~>*$shPyB$&`dfXD;zv(zI)#?}DSlxJYsni^^ zFf@TF9crOc|Ambks(y`L#W0o5XH-!xsW$#{GWav4_)`if-khR25~G5ll}W`Tr&7;z zsTt+X!I^}P|6O1&VUM*QYsChT4RrIX!J8bvrEy&X9Gde(ea&XAb{-6x^I*`NAMDLG z8t2h{J&(@od30TOoR6x-ZXdGEv$Q`YgF!6V>H?x(>s3lYiWD$_cDIgD1>l~6TWMDe z?~DtfVTv6Aq(GdxN2duJ9gO`6pe;jb+BE_1M*zR**pjh)#?EQ-iQy1>~#BF=CMhg2TFMRru zM=l&YS;oTA3(vps!iE0Eg1k{(IC}KLv!D3Hg+u%1_YDnQ*tK$SW$)e#>l4e%?uCeH z9k>gMBa{wyp-}Wm$CY$_NY4rWz)~U~0;DNydUOSwc1_TUJ0yI%&4y^1aPV;Zy^r@* zyuLFg^9P7HoML2EYiCWf77=s`u!@B&-elXPDz}RA!Q3Afms<5mgF z3vY0={=AMwU|?Gp6)UUSo-W%U(c&-aN%VZ-x>>>8fi9RP)Ge7WE~oI4_wllqFodT% z7E|QX)9RZOvI%iY!VrvLW9cwg<}Lg8A7((BiD3s`qMkgI+S(|`}5BB2vD5MR0~$Dmk1rg^!S*%o%l z@dTC-bvg)k2rAU*fj7?FxSugksP=s)4Ch|SyvS&Mn7cC?k}==6j9xwXZ6c#OP8uI$ zWCtJH_J?2r7K%+?@{-`@WVZ0_uHF>;R11tsY>kkO7tj&KFkK=|nFLoTJgMxU1ca~a zqN(j@G-l;-FzU5b+`Jb8mhWgK|--9bQ8hY(KP5P6RvRA87Z$ z9$(z~{`$rHQg>eD2Vxgb?%H+e*#2W18y7$M?6Vh-&K@{$5nZs06Uk{P*j#-2x#unp zWyb(3U97Zq%0tnN4qGJ(iR(0ht0(KH2e1iFb~-ns2v)aMAh9bIq3$sh70 z^c_?5l`*{1!!VG|u1N5+DeDk|>5ia|B{bu8XdO=_WColKF0OMf7O7Gf8zS~`mdCp$ zQSULPqsEiGp(G7w9nwguGsDG)H0NNP9|0B##M*ffPudxWCXFRw6CCa}TaK5wM=`qT zLm!j)`Cx2xVe>;|DS`pGvslchW^z$6{l~SY$yII)X^k zMj_gtZ;w9Fvo5zJcm*Q*1r=&1{)GO8TubMpu-zH}n`AlN5EVj9=zf9^BH14Cvbgis z64>Ya=def$I{-1_>ofpp7J?e4l+o-dtX!U~>CXMIm~|6xhJ!sB;TkFn`udPg#P_Xk zMjy<0yXEf8b+9)MGKfsgevTW$EoaPj!tzQgH3xm~+;SGH2(bzwDat|$cH-f_L#P@3 zG@m-HJ_x{gi)Dx{SxT{@0i+Yc+(IH9g`Y~9^%kzk4YX-HC5F7SQZ(cpiJhXO8nV7$ z1D~S;E$)!re6+(TBa zrt1%V^5vHwI(Kck{E(ZKoouzb_o2O4vzyRBE(=5CZphzsETfG}g_w5mXn;xaFam_BXKjbX>q<}|qx zNp$IIxDY;7N=%s zMbyn=GK+{N*2@W`$k^UgQfjqbVl+zB@k(J3>x8n)?2BAiC%8qmQeYB#6F5kSqEr{-!a(vbGe`Z*4&Jaok^;90*xIg|hCv3nsQe%%I)7v2$rRwPaT% z^UUtuyCD;y=b<^(1jq@FBPXP9+w?&on|5=PUspNoDHCgTEkh9uSc@gfyhA?6VT(v| z{f85Y{wWi_MzZ!OsHIuQN!j+YqF~>63Nn%+ns9=W{%+)m-b&>ZvCC*9z%=xTme8xe z0h7rOc4>ZtU3MQdzh~~bedFkLr%r8bJWcA~yUrarfBL|YBZ2()XsPtHlt=_J;Ilmc z^uo~4)9IO+ryKM0?|S-OZKrf4>*#*$vJxsZ9r90Mn8Ml*ucQA-ZTcW<_OSz`^GVyL zyhtgO+*V*wq0vRA*F`RZ>G@<=FsTMiD{AvMK~oG2tK*a2dOH0Iqh)CE3J*y}OpRs@ zMhEqMAFpD|x#0yqCBrC59y@TEdos<;ULZOZm?BsjaP!XHu){vQ4ph#x6k9T_%$br7 zt_UY+iHop(JIuS?t)gbciN9Rnq|J%{VM3Moq{J|aE@APWTBxFI*A`Tz1QAJ?B8ULs zJTVxd*Jdb4-ezD;kPdZlC?r``%A~4LOR84S-t7 za+(gF(_ST{fgfo?{e(uOz3u$SpraE`LrL&ndjfXsCgXZuNkyRXZ`VlQcy} z*p*y$Rq(-A=}TRI$R;D76A;(J^t;1mgnhxDgz(YJ^C_~q&56pZ6>><$0T%|b^sTwH zU&g32CF|O>!eY;qhW)LJq^6OBs)nI52^3JaW|Nzn4_ZSS85uDkT@zxJ$i>0eXN=jP z-d|XF0Vsw=K)WZ+6AOGYh*`9ix{m92Y#^#z$RVas`X%Hl|GmHR}5(Q?eTBkTBZFyTSNQCk zgp`q+>p&C#dsikk8ZeM9z-B%WD0QJ%^;}{4qfZ^X_^I1^ZaQ|M=lJ{IKmEe7W7Cg( z>QmG8o}TG)tv2m3e1a*JrWfb>`=`-ozJL1uu0R-;b&=h)tGmb%ZMqsHPh=-3-GLaQ zUIU35UIqD2$Tx|QV+vrw>lDe{5~eJMegippl!12#vZ)3=ofI7+F_(^;2@MC|*WA|7 zoFbP-+1I8fE=AY7XaX~vWpY}U2ICV7ba9mwEM{8NCnyK6&BdX_AjO9%0Z%Y?Tx)@< zDoNNqN(4yT#q#(DCKx*-7O%PFIni#TY%|1n8 z;E7yKL&h!fk_pWS!1v9n6Ca=IYKSGAGKY!auN~E95?8K7IiCOpH$jQ+`N- zaOXpN1KajWK;)LV)^SDejMMotvL4!tiIQjuCe$K9H{5GZpmjOtMOxv*N!P6^=A5n` zf*=6l(NmIfXwHRpB$k3_b>||!Wdv*WIE&{y66=zm!W1xQl3fz(SNA~Q!CGs<0wPTw z2&26_49Ekbsb;IPiHwO&(icE%kVICra-eAIY$mhUM=>WSC^u3xoi#8)&i{VkhXl=O zW!Tj88FQAfAv?zKl2}9T z$W}V#8vKsG*{JH~I);|i7@q*i%?p5Q@;GEUo)7Ern)I0fPtiq<3DsY`Nw}wA2R1p9 z%byjbJ6oUBl_nVJdF(C?K z5N9%rz*l9F9J35aG7G$Di8imH8Bfga!K?u0rJ^RQ9FeCHz8Izs2a?dTNL`Yg4Ii^2 zu$H8%33>{oB^msn1}CDWo`wQUl5<1|RUB{vNg7U_fW#3(U|ioR^0rIUYhp5y=UktO z8$3qa2#Qe3ya-`5`o}m9U<0J<>JkJ|v>v?pkbAZjPW7y+*YLSS4FHu1AXA=Nz(o4+ zjIKFZGvS!v6Kg_^(JJ4>t^&&W9Y&TgF3&=T3$pS8FcW0u22;^B5KAG2%7D8MHB=VL zxcJosfwx!}f_CuGXxk{xq=IrqwUSXCz9`^tmt_51g;=ME#~ zXR)-5onBnrxs%1}GPb9X&9cjDJ9e;GVz$L?9%Cbgd9v~?ZZizQT`{-qHruJ%FZ7%u z){Roiw&_>{*LWpI8~9nz7n;=y)>a6i!P56qSQi4KIryPbMbWY6$iUxt=jN+$pimnh zD{J-*6oY9-B_a9k23}k?vS}vSV2|Tzf^6imI%o*bs9-X47R(_vV?$~K>uQThT1I@M zW??_50_XSqX72BmE|XKZYAW}A1G0)x+HxshLn?P;9B)iKrbELX!aF*|77dJB%4VKi zZGn@Hc?zpD#%M7Q7I7YHrd7L7(Y;ro`sj$74V4}LP3Lpr+~vQmvjASMU1VeO1TRtAZP=9y@jT)Y-GuFMi+y)tA5Uh3eqsWc8)beXcq; zFi>rjO0K)Rx;yfwSB=73ylN*3Z@MsYlH>(_nzU~ZH36!Ktf?Z1l%s76!M@-l-1MdOuYKZ%Yu9%! z@A$N}T)J)7)YRQ8>+5$9E-&Bx{IO%7{`B34o;?bp!QJ~lbP&?scR%&M558~j-n$>T z
    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󷶾^Is}LKuQZei;4SC3t6EQh4 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≦@Snx;5BdR3Bo61ANPKLi~K&_)GmAK~^mDHy6UWV6@I+SuEy(AGP*g6yzT zsl1g=V;w~nK%D`FCeo78<@2@(J$FulR&@b$;e5U?mD-QSHimWd89?rbpkx^ZQ2-i= zV056>a!eR+9~fOoaG>!#>%ah&b=kNA(hHl-e*gRVpZfWq&tHH0z4z|k z&1Xt}si!CZ=-qeommWS`&41o;*&cY>r-)7y`-kO{9f$zM8X634)eP;FF-$4g3~_a8 z3bi9UQ3XEGAYiYkv|beir_aVA93sTIEhOn#afrdYpN&Irr&yy!(4*71{)sAA!Spyl z0(gS5VK-uBODt%B5o}2MXan+;<&;!C>tUBK7L3_>?8%C!Qy4Z{LXH(| zJj)nq`=3cFL(c~UeXxhd<#;QJu^3tJDu5W%H8f~DoM3-D$ z0AJ4#b7ldBYvBaMCelS5r8%&dx;1+)2LuZ0)n={^eQH&=%b2T4x#l8%WQ|jJkYIpd z1u^X?O^{MdONSLt!R><|b9f4A7>CCZ``5H!7DeoLMbt2wsy^@IPdF0?Papgc)^hzc1*1dZoX0j|xT)TO5R2=OLaP6}cM6vCE?TCW( z?N-)2K{~zUx|k~>nS+kQ5%LDN+Qi6@!=bmv_Mc<1?{5oj{~hP$-h!m@2#wvkdmY!_ zW`iQZ%mUWg+lP=FJ6zf^*K9LIWMDH5pOXHCR@S469#UAjeL`AZD9C!KRB9E)zk$(X zLDrF!qoar%7oxqk1QlRC$NT;d6DQEKh6HvnGN&B7wm}_}v?)V|3bL}L(&5&*fX|C@ zv1gtO8co5uU|A30A}y~&2so)7{0ZhhO)v$Br@sL{4k04njQl**4uEcc{b!a&5A|94 zZTX!~fA(kBruXbw`}TLgyEaujbZG5^Z+&YG#kOUwz4heD?b~awzw^!-HfXI~c<^A~ z+OxE^Lr>E_6zxx1DbJQqp`e75z!0q}Y3Q(mhbk(BB#EU#6~v$b11FYF7{=)2;M-Jo z(ePdyG-KyWLKaj-?)3TD&ws}ec^xCBClyGMnjF+DFmX=2;+g?conmB>DklYf5sA_N z$J(1l$yr``p7Fl1yb*7_TkLD@OXR+9%3VulYDq010TL2I0t5mHfj|ow0Rn^pBO7lR z7cOIL?6RxdRbJY)7?;bgQ`Os_(o9IqTH%+TTLx!F=LMibkcK(8!d3r(51c6s!H^%HX z(=$;(h%~o^(GCdOox{0c=UnhJQIcyzGh^|sbyG4!XU3T4W>jE zWGb9ol$jRkq^x60=cuV(P&L(8Ma$rG*A6#t-?hYQXlRAaU%7t0dEZoEYIe5yi|@YM zynA%-=;UPci(mLc^9YTV=8Mli|M0`j?WMkw<1|10+;h$MKJ`?jInwB98p4vYqq;HG zB2>c{h~ugLsbX&6ZT0jB>#CAglzr9GY_TuwM=VicG4+Q^y*)z$tvKlaqr%izOC=Y) zDb$(Fvf@e?BqW5hz~I9@;dDG1iuK3sEtWgznr@F9b1Qk%+m?o$iME7pu#L9#mAVmy zlQ18kbrNy_aapX^Nvv?pe}~$u(s`+fmjr zy_R_5E4EAhW!k-bU#YZP%mymi3_Hwn?R{E*LS&X7qi)}nt79#kp6j_ma>g{V<;Ed3{xY_x9Leu5erPtde z(I6uze>+=|@FMTc#oc*bFU8#{JveN7yA9|jZeK}l4n%tZHf?LL#};*!0eU598|X-c zsZNa3MS;Z*S`!-d0Y#hg3w7jE>KtuPn8DSC`@gka=qu7v>+P~w&mwH>c)~&|H*J~T zh^V2A1dZl`-X|L6t*``z?AAAOWw zSY1s&g+$8b%juc1j{f0}N+td3XFkJiiKU--<(0kZy*HSL9J|z2)$^~Lhcbt%St#!z zX$PmBP!lBer#os>b zeM38BcorDlJ(?gVdJB>h#0WhYZ$VrK@x4x~Wa*@~&CtM`fPm*zE;FA7glikn((Pzk z7&O*snT3Kz#K|Xr5BH)*n*<9+HUQ9{Ipu~B<eX1L8}j>dEK_}5IS zwc>^tQ%Xy)1|0k^>V!w?r523=q<5f;t3i#%qzBy{VIhm6LmF$EWUfuN^*qL&mkU+p z9e6u$zIZURw(awu{&Z$&TGp{<(A~)l_D)S@F1`JB=H7G9Jahbb=JE6A)uN@lPM@C7 z%-_P8YNjN1RX3t)ZB@&C#g;IT23rE0tHzfKX$%OkV$jutkC>BGSYXCf@6+{}(_58F zpKLN?YI~e;veeJy=e{L217`!90V`%|ttC(019dqLx4+^zwA~X^me=ao-f3|rUFBj~ zcMDPWCS)-#h>Fc0C?kQAh335i|1=bA8ahKw7>Nyrm_|3Y3K0JU8D~Y}P+%@oY-Sl^ zG%B$lE_ATnAOS;1Z?Td?B+0R%p`l#`HyAIwZrq|z1+C~Qc3k3+A~Q63q0E9mi$%DR z4U3py_EOSdffA+1ThD@PJ>I_!3}FZNfCNj2=-t5Yf#fi`^QE^QSntYz?F(O6fA9VG z*I)h0SJvlNR@UQMOUwGFUV7>D>Gg{*zPR2W2&^ByaA9nH?3Pxb9828*>YhZ(XVu4V zsC@zMlo#0mZ#eFZ9CeLhxAB>pTaoya%_%Xsjl|@4jx(xjaMP^8t2t!abfi957z<5` z{E{(KE3FriorwlJg0cbSkmUj6UE+oIRZ- zZE7+Y&F}ED?&Mk`r@R(z=cP3hU^kT1WgYAV-eHF#DP~^0RbSa9GQF|bh9U++W@SFcjm``@+TRV z3yh3pzW$>hWkQu5m7O~?@BZHJz4lsWVXLvVyE`-KY-yX1Z&_Z>eEzFnWgp!{er6_f z>794ZX3jR4V}lKDq)D|8D)X$pv&mj1qY~ezd|ed@l+sHKPwMcR^HaSD(TgK#@(oy? zNmolXv~GN>dZUITMQk!^B=-4bU%p$R5#kobE;6YOP(OQjNufU#&! zbJ+?LEkSY7qi#X7o66$0?3Ge!rOB?orrkusjPCFhNFCQ{l+8ewiN^}rkf6c^yLD2V z$fjOK+y~H_UKLYXz{u-T@uOj?<*JAx(ms3^W65hqx|)73+eJIfK!B{nOF9wPf<8gQ zgl?R}DhwG;WuL7XIg;X~C{kkMBB$KR{tDB}%Kp5lMTwbA#iOoGpbZyUYm$k)Q1g$- z)#Xt6l4jw)4`%--*k)lCyK#6@n(z*L1dKH-A{5ns?5J&;I8 zhlomKC0l8FL>LI;9A>PmLl-K>G}POf%YIm5Ujc zWExg0+$+|S$C~9+2ktiku*t*FSJw1s#LlM?iQ1vf=$3g>nVz)Wq(K|mPlrz6CM{bx zJ!#N3f=xe$J11raT&)%{9!1PR)3bWifv@dFopg8-hd+=fU@_I?}45}Z=>-et2@jgNUu&Cp+?7W{&$ z1^+nk*7CM*zkhDw```N3!XsM0mdPx9@1Otkg%d{}KEkGkFMapB3-_)*@W8_Px8Hf^ z`R5ndTRa)wv18%WpZnax+1FoRh=%4YYv01Ys^i-*89#}uzVE-O$K(cUt39pdc4~4= zx*+1ms{9XW-PbV%!3nCA%4)YxvT+<2W~01eM2t*$`+|ET-zGcj_z2%etDmRB5~zN? zd|a8?Cv@hjx!w&g9MG&(mc$=^h;;UYbEavxBrPJX-sVEaR0{?1c*D`y z4vC&JWnV~U!?O(17|sGsU_@2llo~)No=n8Wtx$yK$xSr?o=r3`64l6iccJh&;wHSD zVF_WhprdFJ7YT5NYpf_#e)c?ra_TLethnn)Kn;s@$1oL(Cp&r)kdkmreLJG;S3{=J zh-ONK!j`xc22v_2bV|0mQvZgci3V~JeL3L;)QUw^GHQvRUmFNQK8ybEMLH$FANVlv zCxM>^elEG*i;wJBy!g}ukDh(t>|ri{JXwKV2LR1Qy@_;Da~c zT+9ul#=7|K*T25Fb#CpzJ!^aREWYsNFP~mK-56Z4n+@;C=H))i-Pa8Mm;wPYA2Gc5Gjy zz64sp%0eKL1wiQ7qcLYN8?=mOFsdl^25yU9h^G}p5xAX3YE&O^COYtWB~ULrh9rvv zd5t~QJ9*!Ux!tZ`sz1FzS(G<8|6pUG(W*Y>lQ0!st{CVqBLKs zp;cmHmJW^2O`$ClF=_xrWgOd8)YnGv-H*>TJM=q*4Xxs;&%DVG)+SwURgm1;3qDEP zS8_BKRCvL7EX!HOTau-mr}ec{Q99uzRN@YH#WI5bMr07OOU87zVsO2AP>fPS zvstrBVI#BI*;K6G);^6pv{;;jJH%fFjXfF?Ba-MrP!X0(5ekfh=m=|Fnf=r(R*(Of z@&UG!`J<>*8)SGZHlB;+WQh>7;7=wJxm4=0R6Le3Aw3X%CF(K(7tA#Ww?v^q>|_XE zJfe}RM7n!t#q6NR&7fuC=^p%S!aXF4#{7;?A5Ab*$A#Qn|0Y$ZP}nX-W{TUXf%`y9 z#=y>YVu7L?)QHA@b9vua%+S7LyFNI4*Imbsg~-4D{kIuA96QOD?nAM>B6ePzmW ztD4giosS1VZC_Vf>Eii*AbH={9(m~akz><4zPHwTFWiMc`skzZUH9A*{=@HoKa41B zcxca_@Rz^$z3}zVfBsXS3RgPdGQ9E5J5Y7BL?Zm;r$7Cj@OK()?Ix#pORK6`nr~aA zeKq?c#Z!a^b@ufp&oqFp-x83vBAyOlg{-Y^fPM}*IjuZhE+=VYruN{MCOLkv0tvfs z1^NDy;_$0l9~gZ!G6)3^YWIU`a3f-%fzF~9w!6o?KD3i!O?fl}vB3pLbEzRc8MVno zoZ$s|Ni;XX_H|+{tg=OBB$@iUA9!8%pC(i%QUQKc7>$8sEs`?QLE}Ez(F_HG z9I=A#v~GFEJe{kENKILByOU`$hddET(494sG6jtLi;+!AU$g`Qv!u@itwr@R>tK3P z&KQ5BJRzk?otu1%7Wrnw{D~!#`^mVnNGA7P5jYK*3`y9eeNi653>F))P}*Z~Irv0+ z+LOtZF*{;_WXIBUOiizUJQ2+IMz?q#OR2C^h^t%_EIfL)W}VtCed^emGvj~p;~$SN96r2z z_xPXx>}TT#4&8TXet!Jm*8Tg(Kl-yj8!vTtkALkO-+1e-@#vPsmXVS1uYB;qcn|}+ z^6tCiuwHK#jSvg;?Xcz-d88jeR?ES28sG@_Rb@flQTveRi(7D=D2ntE<(w83pnpgH;f;!8!dq+9h~g()<* zT*~iWTGCc_?b6EGtTsI{q4iHqX#|5#?M5xU#uzM-wl)J%%g^f2Er%-R9wMHhJ^5X9JolY6n&+Bj%fLQ%m^sFyUNciKb~tZ`<3?|}d^Dem(A`Y5 zCx9>XHUu6cfjk_C{{*@(xR&S&$mRvKIE$;x%e~VpE4?wJnZ0 z|DIm28a22|o73Kns35`JZLy^ZC2)Msi`l zXpur`HP=r@JExn?yJc%v4C`bV$WE2>`F(=L6zB({Il>yTF0A*`-LR$YJSx#!kls;=LA|NZNVsrthD3$^IF`M1>Irs}38 zp6C-esp4(wFkMxXRA~TD-%ud%bsPCw)kul7HLGLc(%4i@kGNd`xvY_73RKU8BKf$t z7yTNy1ri>;QxgBSZA7|l_Is;#@LT5~AF$!#|hW8v{&A1yCK90R>IQa zi63`$1)J?~v~q8Y*10;;pR(f40|(mmo}Iy1(KaKwm>a^F%v>@X1idAGOO$N+n_erBr>1O&a9!AVjhIE>PEiH6>9Q@V)M@QTVBst?* zyp`ykKCQHD*{9p}$_phpd(> zD_?nw`~81#vV;P6Yt%imef#zySqKqlS3MEAB{UkWunC!ki3ncyShn%KQFabxB2kE& zdsuzvD9(f3!CH>m2~$(C#$y2@OXC6miyn3$M+|QQF#|i8&6YEnE$x+r8R=oKRW6vF zoov?IhZ(k|BkiIgxJo5OYrJ~N;et|_M_95}J>CPfiU5Z!Io@S>=kYM}R_uZ?<&txz z7N;w?cMO(PC!D*(C|+Dd;pVed1pIFT|3(n-wHLm6>FsB~e)iSJhK{`2I+S_U`>Of2 z@%6x~|LT{&eD(0sJxlxdzxrqY@?XCCtsnj9)$XC8S3mgbS6_YS>tBEMjh9|}`|Z16 zi&sbEZhPLf+bwTz@kcB`dL5DOX-esOAwppsiE!!^%yQUMG7MSmjMVGnX$tXL@m&=~ zYUGPo_7$k$zE6p2zN zSj>uWrXF-+N$3wL%Si;g^=v$>9W;`5GGyITRl_Z_@Qf_39ilm|*)D2nD;n-f&gz4SD{p71bGR&e>G}CSBT_e?oPOyPLtyOwcux3=AA8~ zzzhzAn?YG8?y{^A4-?nS#K$he8F;F2rWxmf_lQ|j%*VSa#;B~ed@$46dH~DU3VJR@ zf{G-0a+2;J9CT8lfh6?4XeeZlZeg>}XfXCp3}OVF=D5Z@X9t*2ONW7sT0DeYQ=%Ph z8R%hVGvv`YsV{rqgC_qycELiyh*TXF$-;i z3}c51z73tc9n5y#2Xb_YdA)bkl*22_i-W;qAHM(ov5DEy*~P_UU--s1j$L{C?PDE< z!m)ey??3k3GtV6J+S`w<9y)aF@ynNwwV39ylZOwVI(1BIZtgwSsN-@&4tA^TqWZDA zWs41O4jeb6T@pvcsYyJ$(?s9qAEFAI-!YQaXb-or&o|tDmTYRyFhL$tC{OL2t+fnq z%N1pcZy?x{5|zX)_`V*~T`qSqP9AfsUr6eb`=2GWWiUC@CA4`?nek4@6PR4noHHvw z5FJwu=?`qqMlS@sTt&8jE4)59VjOy`Ym`vM`n(9LeP-)Ip)gk{>>AHTa$|j^U@L56 z6K%by=}j1+SngGWtuJT|qfZfUFBFDc93t!PVL@O>WHo6M!;ZvTba9E;=eivgg=pQ} zbs}2WMgPzWGQP1**+>tV#2xoW#AuPGaAHn^<3TlLwP*W&LKQUC(y&|L<9SgL-?v z?OEenw5}~IEV6Zng1GZDqoeSKz+`Fq~hqqjubHaNA#S>@FI7jyGb!JP`=;J%t zBGRdujKfd8%c%!}8-7`}cN^Tk+!P3C@;eY}EI$3FUzd1%zrU`4`G#MxG?l8qzS_?q zaEN2CC5M^F2Hd4khW{O1f~GF5bNq*z%esdHLosJ%B4|YB$8;#rFfxQfHjvV;C0WTuz22nH zvyqFgA$2=?^$CL>R8(gZGTeGHb-FbnSomxR*+(PK3|gf^Qj3$LMGL3$EvR_MT3XOc zm-=bg(-N6P3ZL)Ib2>J;xY+F^oUs)YGSumW=Xal7O>E098uy$yF@N_X`_7)7pG=M= zv)Oq&k(iHK);vJZWAl&Q#*{goYJpilA5P~sha$gk-|UIiir*@~cnP-xj`Nf|&|uvP zWt>upnH))WY7+wKe>vaD8qX=)y?elN*ZOR4ZHwcrz$-UWOO#L1G)z@smr!Dq=2$Kw zOJVGyg^5)M3R+d{Ao_xc*y6eim%S(~7yC2`ZZ{L%^ zB2O;w*zx4t(o*8d#I275^sM%WQNm^R8v{cq>RZ;O#_Ei z3C1_wD1bQsLe&3nca<|KgZTS>i%RR`oPqeO`r z0c@#+@*d)kx;CpF_V3te%-P8j`<-&fqQRuIjAmOdPEG_clgbxZGoEI+G9LSx7mY^S z^IB?3o58$tDuJeUqAx;@i%z7Gia{D@xR&IC$#It4 z4WqNM2qI(<>8LYJ|x9yg-WI7hyYYY!+1O1^1 z^glIs3!9$CqxQ}b(^_4KyKAwiX*$cHxSlip+nOH5B63l6z78-|o1Pz}50p+fX@xFC zmJ7v-)-m>g9;0~<%iMF)w7ps8;)X0E6hv7&+f3-Mv<3H%F(E>#3pLF_B!bF@f0S%Y z;!Hs-5g$k-5d&RI1mld`#mfaq9dR>c<(m>bf%uV^8){Pp$u`txrSf?S&&j^Y&O>MN zkB&Sv`9Qamj;HhaLkC9>KwLaDFfwuo9^;|*?(X2B8+Qr#XQxhY)8TPj?~v6AW%?6b zYW>(%E>Ssr%xloq%{XSs)KPUdv)a!Ok~uemdE=kBqXvuh&i>|Qe6 zogfp@)DD@1R_CLKvLl8WOUGpS+b<-@wIjf2!OBTN$L>ryk*20@tz&e8=6!2le>zmG z0E8Q{aM(#t$TFA2i&I%{St9C4h@)Xb=5G;4Q3oU%0+EMcH^{`;ex{bJkl75Cf@29< zg(iZe9Sz2dpraDcM1j@kAUvk-*lU6F%TqI_16PM%*l~H+Gqc6WKyz@QxA%0$8Y#p^ z`uk6N!^5W^TX_U;dKzzf8gF`<;nTL$ZMVN{>d-hY|Jc-%>fxzwMXoBw=3}S+Ir)%- zpT7C>#v){(5a$Xh{6FzDH+<}k=eo=i2KGP5BEA95KE>J;$4(8Uob+V6oV8Bz@|x~W zn$F(gn6o-;+N*PMQkO6w-x7Byk4m-#$<&Ym(}e;v9{Y1Nd1I~ORw?|l*`l8BPC%^B z_iDYp`3w?=tVqweAVlG`ok}}tmRg%pu3kJlu*x;f<))_qD&*$L<%62Ss9=ob9X5cv zdJ%lCCs%JL>j+?thN3NH1X(0uC!awwDr~3K&HD##-oJxo@-WE5vtYgZmir#wy7h0L z)}B7Ga$$aXdhYDl)Gt@GUoLCEoYPj8=ccCSmRCad#3Q=>9GfcH3{l?`_rL=W$RYX% zIQ{@{xpoZ!64LIZ3XuMTnr~19OTYItO>T0#gS)lUB%rFyMrK4+zTWV5a%$=&&0Ta! zHbMl&ds27B%tyAzV)yj*?AmX-PFu%2%0?&4#^mCR&}f(@pyM8O2>W20#{VMf3f zP||}|5)L7f*d2n*e zmL4QYdZ?dzsGm|jsoUR0IX1veQ%(S_U|0EzZ1Uq3*@&oGb zlhAqVV8>>1dP*CcmC3C}R`hH{Uyt&OOa!fc#^{1}pSJ^;Mwav2Veqn1vRpC}JVI@X}x`T#Q4DNoHAPr%7fbrz=XR5juCGo%tj= zD_aHzjy)SXH}k~8sUZinB;I6nb{<0m;@HtGhf&fzHZe1EjI8AtbcfbsENt1Ngw+rf ztFCs_33I+u;W0F=3O)8&b3Tn+1UVzQXt&E~&nVeaL-p+sU`=c=Mmw z$u;&ZLX?vA3*J<=5~@sSdqWi%O`1DqI(sCU8I9R%^ODTS+N1@RV;97$Qjn)c;SeHj zr@U$;lWo>h{Rt<601TxdFjkphS(?6!4UV|dilrrTX)aiDu(=}=vZjN_H>WTXD=GHE z#L8eu*1iYLkVgs|+a-x8J+yK@K_N-aQD~KqkfRpl++3pNucXs2aY|H z^Utj#O(ArwrMvrBb1|2@#leM+g>HXv{;k|}ZpytjK&o6!Rde|B6}6(BL+!YoSCy0b zoer*|PV#?c<%Y)u7&_2bg$|c7Mue34b31Wndo*!uyS{Qr_aw&|kJ-DV&R8(rwJ4I~ z@#PqMky!66GZ2}PVBE}v6Y`zh$84*X9fbXs%ayf4C1IN*y;|$oRA(Md7BduP*3=4T zEHj(|e793c(=O)jnv(m6JcAzsDdGiL50iZ&2L$7}esXdFW1(nM6Bm#WXy%F#{ot<` zI5$Dy{}FH6!$i$VrBHZ9?px{k?h8v#cb}PjZ0VtKTK(e@Y7J-_Czp?t){K+ZjFZ-k zlaS`db9Xwno7|~X5#v)*HpmgFM~)#Y4BaZXy!wV4ms5&hw{fkvh=~oZ^|rUpIcVr~ z>+kn6uSP@rqHa8!>X}Jt6P+WI+Td`)YaY|5%OiGt4`WSnLa5xo;i$bsUb%m`RZ_)e zGL5V(>;#b^aW!)xxqd%$qSN$ppo&a| z@-+~^3wF9A6Koj_rc!3YdSD9F(WRQGo+-X1#4-@t`@q$NL&MAPxF$D`11uIPI|1a) zLOH49!$THw!DxGNrvH_CB1q3n>chv_%5z!j!_bAo)AMJyo*sLI`j9|95)A}KQsqM7 z7WJV!a?_$>RT%nNstS@fTt_)s!H_qzAQbMR@)XXywijY*`gV7c|6z3}oAnJGKyaIS zqC;YnyCLDZ>)BVJNIWA$BF?jI`891zww2@f277Nq5hvcH6_b%Kk>%Llye^|H_KBba)JV#=EI7D=0~fRO~xs=4fcK9 zXm$aUAMHzqQs`!Z9fPI8<3@$LJTodazJ;nOe<=#dd_ig=5dD$vp)4e}dK#4f*fz>W zu6EA#B*Q6qDc}RiaNPg?YwqOVswv?6$xLNi02$6R=_h9%UwCBb#LUrwwh}O`709L2 z1NU#aj}SOO2pk{;4iExk1F<_?Nd@9GAUS@T3h1lK329na2ZZD)M^-QWx@#-SZo+PE z;Yfd*tN4}?Nkw-%>A&I^e!6*wzEYav+4tP^JtIwU<3T@K9@gCPxVvuzlxEa)cHv2P z0=`Al+oCZ7pbQQLgIl3;=7He3fG+W`P0RGTlGs2ssJJePO`kSg*)H|LC_yl`P)-Gl zt>Q)L55#n;l$5o93Y`j-$^eV9VTYO_9yX1j#l0g4hT?#4#K7I6niCJjq>e}11TY3v z#=<`*R1CD4nh;bbgNFMlG8gG&KC(Pl>i$&3JhgrMJI`p(JhXOcaoaDqXj>M}P0U<1 zKQ#5LYag!taxHju+b_52-R9c1g_)U!ZEGg$N2VT?8@RDTr&eG1RfZ}sRK3Bqt42N? zYDPS(9|^g68HgXiGAf&4C8z&oIN#gdzFYWIep)?WYA)w@-xPW3sO|0BYJ2u=%hq5LMx8lu=06JOv zn2hPPOl3`@IhjaqpGwNP5+!*gMMX~tiZA&KbFCyffT{_{0_uij1|Ka`Olr&tMw0mi zeMPQf)tCMw`KYP%reqfXHTIj~OP}$U?tA6#^1fGgC5>0Kw#TkrTRM64)X`U7Sz2tG zYies-%9qPasa$T!NhU8XUAn`Cyt(A?rw3Ha*T=DcyAXJD;#obX8-t-gM{rXB&fGcx ze;HwY2HJzs=QWp0xO*t(M?;E?wI~^Xd@*F|X(A$P2T4z06h_2_e(V|wInDLbpU7mI zv{FaH4i}3(TKnMtv^NYp!Fbq7zY&hy74^(wqIW7Y-Zr?XO%0^H;+Q^C?zQ8)oP5rC zP|b^SToWUVpsLtN%0uBusF1>uje?-A;UIORkG0{*lcZZsWwu9hNv&)?Np;DptjrR3 z6~dtri+VxeCGzbUqZWK7Z)e(a!O}2&6~|#gU<@Dpf2nRpFwm>CdM80ypN5frHSqQ2 z6D3OT6-C^)*o~hQVWPT+#-*^~bqUZR4u(v37U4@* z6AWJ0=b|Raz4(E@cH%6n%XC<_+1aAy+7niMsIN3SnoQ>VB2IfSHUQ}nK!>g6kv_VJ z7T6(3k(nG90nAb|dH*nEoE+;-{?2w?T}ZceKFj7mBw^<&(i(feT-XJ0>S^<}s572S8NbtLUlhk2u` zcwt~R8y$f2+iH2NI%l0m4a zc=g18|1X^Bzo*A8JLwOgQu;bNU*uTfiM_|AU%6mB|Hh?D6AbH2Ja+u}#CURqmgNLT zJ3-5Gf|ljAiEFoa>9vDw$g()e+Z>Gi>Km%io1OTL2gA))hh>Ofr6JTH8P`@H@+TVk zSOZBTD=<=>`zaavh~|<5?;VTUYjSAwl&6Ts#^Os*zOzI{`e>g9qucqggF!>K6*_I%!oh9DB-mok0n;UwvMSKVwmevJ~@L#+iS6 zl+;<3s}wkRa6sD#tZ@oqHXD*512v?jyirw6$Y?5gR6d+t4qaw+P(o~kjbvJ2nsSGO znNks6Kn0>{?C?-RcoZqqh|%qXDC|)VX**b8$^DIkOi2H8G%!`IZ$B;Zd;Uz)c};(D z=kt3nEC!3Y;@H@k?t!KOT|e{0uE!8OKC@%z&NEBfx1WKk(|YC(n38znYGqVK4aXF2 z&xQu^xSW*~x3pN)cF}GTY>+X1&TCO`aL?dRcdB+d=>{YDEik6)js9zMsl)KhRIZr? z_rtA&qtoStbe1QV^f5h^41p1IxtAkpC-qP&k#(NeY-!C5MXhZk(fIZS(^-oet~F2X zl8p+CuLsiu1pRDSx-&m@Vu?h%mLy4|O_S5pouK&1G{L@Ucp{O9Kx{j-GIcY=1STuI z*qRy3Cr8Ucx77QpB!i#%HDe3UA^$Ro2Vt9X@cDuI}hHF zhv~bM;x%Oly=_{yrC^UQYg;>)`1HA;qq}$ex!Xw0SsOMjx$__y_`~IJTrU`O#(|_( z!gNIyBJ~%pbVaq~FtZl|6=%EC(3Eh}&0||p z$*U(%ow|1H#EEP79X)#O?tAZ@y*7J?GnOn$-R8|tY8P9bc`a{Z>{8tB_|!B`wVq}9 zOks8L#W`aGGzuEH!7720?HSel>~>)*alg!DG6)T$4GbdU?VJGF8`U36Q?!U0AMlSA3&Cn zbe}192^OpcL(4c;R;ELfH(yF(L*#e`{6PXNOd@^1+L`(c9X@=2=X0577oOVo#Q38N zCr6V_0jntz87=2Cnb8xA50JEtlC+JIw2cC&IHS%T?4@QajSVBg!Tb~VAFH!3HCNFg zbysc2${3q3Z<7~%LM?vdvDXdZn>4=K<$Q%KJ{sD_!TybvIOiP13KA%&*xJ{8Uoa7~ zc1aE(zCg}KQ6vh=$p=HZfrx1oR08nl9$-p`mKt#EP%dB4g(86lT0i`ki2)d8!+mzx z8Cr>^=Iki=3Yt$C+8Cs8STC`$!~Q`UkS!HO0ugFhw!oGOq=qNyw-;6=)WgXw<`NWZ zM$n`fS5;dy58qF^3!+JutttcD3#uudzh{@H&!so|e&IxGtkrRP$}KHD`BJGTlnbQO zw`c)cJ+y9b*CX;BKrMw+exQ2&<&ZgBjt`iHGgQZGa2w?^E9g@dU(>(Kkv5{DJ z?^%i7yq(^{$zEseD7!}oj>yX^a4AgZu8F7(m%k-466GiZ$~ zM|;kM;Sx50r@a){Z%qfei zi1JMNj%Rs;KUav^#%--))=~@CbFmv-x#%y*r+KZtz3r8~$z?YjZ#{_Lc+RtxN@Xh1 z1xZF;yHRh~+|Rk%HpDsXo}QlfHx79;YOkt8j-+CXBf%g4~Fak+M+e#z`-;MFTzi=Uuv3gYPgT~KZ!Z#_w? zAFCX+>QYoc(lN=g%HA0`&U2k^=4W{1?Q|BlOiy`6vD6JWbgHjgR3BsQg;Ui4j9;#w zHbdXeR#K;OSQ2o^rnK^nY*c}49{E|To*F=EC6g@|x)DvMldp9R0I!-6JB>mMazU*Q ze45r^u(h=Z$N{0D`RFeO^YNa!M_uk>Et`t0ht=_j_Hnw06g-rmVQM~+NBvh5`2 zJIVP@a=w!=5{*gY_P4lp+zoD6?k&n>z6)0Q&vfoig9~?{xZ%!jk!aOXuKKaw_~alQ zXc>pjr1WH4G_{?l&3#%I)2i{DKvM5{LvzL*_rQST?t%-ybH+;SinH3( z-Ujcw$l?a+VHAeRvXW8hBK|8omP)m0*$&r^=1A+yT_}B)%57SE-$Bxv@C+5!5>#Nf zCt;VCD9*<#>0qHBs*J@zEBnc#gx$iGQ3aMlky79{qkk|mI98TqiPBl5PP19{G;rFG zk<1A`5(X$~PLgHuM4?~8$B_PTr6GfQYlG{R)~xP$iF#TuRzR$h~2hm;y_=<=bRY|J2j% z-*%Vj0N>mDti+iC<&&R~glce|BYLuZuAaXlX;_;Re7 zA=vtWa!?16i=Yl%U}!!s8(Au<|;VxQJAvNvo;5@=s%;t4jIMM`XlM%=EPl*K*i zAXR(oQz`^Ys~^V;9OZSr54NC)F$b0{(c9n>;&dC*R>@_A{{xtxlH}Ju0NW)~53vT(qjwO>VY#sL;x(Ru1Zq|;L$}9sN*aK@Z z9CFwkMpeUUo^o5kqMdNgrsvUHD11A-x!q6SQ3%8cZz)1J8)rQi-@E3r^E4F6Awgrp ztIKdzg?Zz1!KK?T70wzn7oyQ7>Vf1_zqj+t4}N~<+xNfm;HwAchGt-VAKcoz*gH6Q za4oze+|zTgsjzeB!B!i8~_{H(Gz+t!L?#P+mP#)LMp6Zy-s+#!5qko>G?~4|jCug;( z5zkGQ^i-?vg`;axQJkL|MHW0|Z|#gZb6c#$y|{E3<*|F3d01-ap(E#|+_gd76Z~|< zw82uGwONask9e%RRk!Q(o^1>j`t||UH7#j(KLZ5WY)Q)_`y4Ko2BDl(qA|>aTscVs zO`Yu6L93a%DdGZgdL-}g=;E*l*mnW32lf?uA8cTX4KsQe-O`sOO|wADD6HshQdot9 z7A`?Xc)-M?4EVq?@TtwQ5}T%_2bL=Xu;33oX5I~Y8^4B2`FC`z2T{Db$UfUQ*rdZ| zg3q?TdGOldmv_Bz@Y331>(Jq3Yv6EOPfxboPq$<3;-O~_9X`Ca|KPzjMn~4j$h+3M z?qoHa6SGa$Lc1E9keOF$FjYHDHSM4qy@NEjZ~WTZc?Yq9e}aXqrotdwnK+CPe)%!G z5KN{z4+DN|v6F{)d+EQy44#;_<8Por(S+6%XgQNp#h{mb&379DsSibMpi|5O6x~{8 zm3Tqc!3$S`i(F8HB|r73#@awmY&R;?TgiSlautfbT3^otrYNsKXy+gq9!xp9(>^ui z#f^b@qRB&Bxhc38KqpF&rdw^A44=5|Q+|k0eGy{5DS!!6s*3ZD$RsndUIr^$MQsoh z5qn@bB@`(XBx1yZF6gOrJ$=N@RNKo($lPUPg=`0e_da_%`SReWRxb^npLYl2dyGMC z&lrsNq0!OP=&1}2o_=iY5mNWlq;{uC?M{>0b)4?Fy;=DFqcQ5&45Nyl*H2o(U6m=H zSyapA>kvwf`A#&seWY%I60w zJtuUSws59R6x}UHFJ4N{Cyb&UiIgD0FT~l$79s&}+e2CIIA{AZen~FZpAt?M%rz&z`Z2mjEfEOr}4~#Nzx=-yH_%fIB)RSWeN;q)p)sruSsU8ATJp`tD2u!u((Cv;H_1OBK z+UZuc5moNa$b9v;zrl7uPF)rT*&G5<|8N%BJ!|TiR>{ zimtJT%y4(oNDPsk=R6%H<0M^ABN9u-JGs7A36-V3IS5lix@Tk_nVeuW))Wab0oRSl zv8ZsusyR0(5yK}J3L+2H7gRnDV_QN7(~QW|GE9Y!VCFOwDHo9wi^Jp2&M^NADK!_t*pG5Lk@g$^2LGfra)7% z_~OIo&%b!({^##Me*DFIjvRUMz@bAg?%BUT_TnALYSqebQ^CJsMm02^BO8ZyNF^}I zm6pIiT?5$b5-WU&uc}uNDix8UkR6_U&mG1RZ;m1u$VSmG(Mx3-5^m~G@Evc?zZ?wB zYudovOveaA=qM75j}to+{49~tV|g?wu?p4yWv zmd%h;WK*)4iXp`kw{-)OTPSD5`DZZoZiSgybV4))Edyaz+iG#X-IEHd`~n|C0)jLT z1tb8xP*EW<>Qtb@x7nJ|4JjaF1yw-O#LcRfJAi%$YcUlPB=zGkz4oWn-p9`bP*mFX zbnuPVSNFZt`uvXmp@U92PGa%&Q~S@7R6I>m@ia-r)4+VwPfy=If~efHj`{deL*9C#%`BNL~ap1HcX)L;OiE^ljC?0xQ7EN z8F-pyYfO2b8AP;F%2r}aA;WKNf&^2`6llO|siNn8P{n>&0AHnz?}{OTwF*VG99732 z+6lSEhY5a4uTOXsBQck@d|AtPWIU>lA+3M3v)7K;!{sExR-~0AC}6a#HcDH`r~y7? z#Rq#G!y9tq%ey@*d=G>fR5ZTaFE|jnq|aInhu98kg8ulUsXSGc$aY~K+o5PX5X8Z0P@!lN-z6gRnKMgMDKF}A2Fyv1k=*#MB;=60r|v(i^u4> zoB%I40bXzdyrB6+^PLX;CbZ8#dBVRGeVc1aj&};2$RD=a!1!(xFU0%blrv5>qTNItaNGl#lMeM{O1OJ2z3+p28x!I-^WUVS7N#9)C0 zu}lwEh!-p1KtQ?th+jCU=yl|@RA1V*nLO6ZJ+^HW3cXtQ&}_Lpz&IABB*IFAXiTiI zo{u4$yoMYPD!Hl8^a^M%S6BTN$ew;%P^tqMuR&8ZP9;Nt=H!q@<}=b)4+Z17I-o20 zpiBq+7nLIr-wTQ>Jy;k}d#`*c{kbEbNx!}yLkP^`@vm@pS9)4n(&;NN-2WVo z{tAx%3Xc8?j(*|F!tD=rBNs#_tFc<3o~+7HY#biU3Y7_TPeW}Lf}2Vb#Jh7*E4<;Z z%X{@MJOXsLAK$t2nQwCIjko(A*RFKH^3v)HrTpWvkr17hT=PkYPotDl3_koxP z3;lDCTizpfeEi35@*yo#&RH5=xuoVyKy4ndC>P@P>a6ALq%|7zR>F?nTtyjHs6a9i z@gIK)TPjo1(%o<<^M#_;+=*tFkSY7SakoeTFai{fXG0)Wm2@1%Pw^bQML8f8H05w3 zD00|#suQ7c1I?dkIrvOpMu>5k34hfjo($vZqPat(7zdEhQ5lVGgGXsbgVB7^6|5h% zfhNVNVxNoLdH28n2Rb`{kMfNubj_%Vt(W1*Vj+v?hF*8C?!Mw)UY;seT3gRy$>$K{ zIu~-?b5HJh0;@Q;x_kGztt%_%=9iae&duDxLgdz0Uwu4D5&{3_Z=N_1$Vh4dgL^CY zwfdM-;U5d}7hK3ke}}YDeh@!N)eE<_31a>ZM%j)>p^rO{@baY-9i5daeW0y1J)lh` zUHc-^+DJxdrJNl`qV;i8bJu6nb5hGviy)BA|Vz;(Ts^_IXCd`HztrPIhUj zex^#KcF1>I?67a{?C%{<<#6IwBt2o#6Xt#l1&$y(*9 z=npCz-oX^qOXmIJzy~rqM6n2q&i4;Xa?&XGmBc>?BPW}q55RqwdQsHb{Cd&v%gUC+ zg=)R{c7UzU+s_YnMBmK4w*Tear&h|IcYdzF|2&P^^V74l=b6qtkJ{?_rw=@dhd7Td zoW~ZsUe2O%6x8^n|DBZhve-J`BOK zK5hi?2>D961ZNvWDCy@CMYfyKXikl&{M?BNu9RTmLa0zIYqGKHhlGju{WW znv3ov%SCuuy^MU8$P+>b+2RCHq?y^)Y|!bLNW!UBpE}$pGZ1xeAbcHqKSB6C&>iUs zc}RET3_ME8P^5{HQfA4bc^Rix4JGjfF?_*4swu#Ju!9Z04wHa~uKm90({*-Cn&SgK z9j5}3R=|r}P;~Ow?kG(m*Iq6@e`|k;5`=*o#kpQGRyHMrB!PaaMnuW_iwxCAZV32T zM7FjD(Z{AYG743!-u(3&o`Gw$Q3W)Hi{v;BKz1k$vzr^P6>4PETHShk3L5R@6tg^q zU?SCqWPT+P>}WyhEbeWMLd`HP6ox8?J5M?BEPKcXu@edq*g?pbgNtU~Y_RmC+SOB3OS3iyr1QK#@7)8HI^bAy{q? zcEy5)0&6n+nSvNaLdZm4m@RWIsYy_#%t#;%Jx)qlzSNHfVM1&MLMIp`yZ`{JAo(C; zGt>*r%}`%Ju1;zQX~?W7q<~nAR3wQX0sRb_beTXP$TNPe^2YhVavg`Hrd+-B+37d$ zzBc{x&K|8xD;6&eEoS-`1A$8u)~L0xaLJgSzI5^6GY9Xx@6x`z@4f_Y^Afzxrb|tC zb|7Lnf@Ig;*6c{$VoL%fanz&`-709*Kx#$X6i%0TjvL@==1l#gmv8>(2q@4^y#ttl9Bi{vAtygUTxUP^a!~=QFc;j2gP;?$LHY^538Al_GWg)435#A z^1%mthk%iSN|{War4|7nN^pD-QVC`TNj|e7NjCqIrenHIEB4t)H0GI@>vQ6O)I)mz zFvH=y*gPZ3{dUlGSiX#`q%6}UiD0EyjKAcd$t)(()Rjma?yiOw7N)W<1g5Sf7=s0c zKwwC+Pgh2%7SPp!S(arHIrc!GtH=*Q@W{d*!sMO8&;ENR{6C|##lIW)>hc4*u7i8^ z)z!%M?caWXDH@$if9CPW-+1zaM@~QZ@VoaP|FBDIO>2QCTc6Z_^Q88J(^}wk>uLQr zr+NB|(|>#V*QY~2cvuTOto`cY-#n~$rJp?g@bTjhpMEmk6&XMFb`K)sjUB89&eOr- zmA_TO2!U6ZLKbQ?$M6l73<)5LkQ2FdnnhcejtnL*oV3Kn53(WQ1p> zW!Sv6sM)I)bCCE01S7O^tKL_ZLCQ5FBJ{vPOeYs1y5F?S z)0Vqp($|J7NCUKrcW)z~Nvm-63mcT66{>g_{z8;?Qr#J<&1|kkYZ`qBEG@wT-edvD z$h6B8D@Ht&v_v^6m?|^0ZaX&G5?ZPgcakhXD947NC_qPHEeT5sBVAot!WVMnWU_JL zmWPy@upVQM9o|YvDjw;OlF^{5#lU4cLq~+SnG{S!uy%-MWHbq;J%n?bhqoddSP!Ep zEb8`uz}`zT+DG2q{zvWKefpz|A3QoU(LUUN5pAf82aX(hx39hZ-7la2!ug9A-#z>E z)9*fZ=FGbfJ^JXxXa_h!kj*B}=VZQ#zH? z^5wMA0{c{Ru88`4#wfV)-paoBj%X-WXJSd zk)rEmrCyFZ>%&oNdv#7>CpeR7FVTlZt5h{q5=AhMXeK7iiN6p`y-iDv!FghHj9%)u zt!Pp>Z|!5JG$zP`R5dsw&YJZxz`3R|RI*K)J$S}=C?Ai7^I-%`j8GV@DT}q0-ZGj~ zsRXXevqTukZ8DJ?1%X8&zc=WyHRM7?vL+#3_$Zmmq#<@7=_US-AtJC@kuzBmM@Md* z&m;(ZWY{SNQV{&&ws~Yuf|Ci)B1rsOL-kQAs4oQGmn{0OtDW!7e({0NJ@nQ=t-bx~ zu0Y`G+RmL~genw?2}Qc(@f6HQr2xLfyRC9T^Wt=BQ+~T^IfEI25zC55(+k zvvI~8pjp`qVaU*wU)a_>E3*m;iJ|a<0ITQv=zoafVpBI1IuIDGYa(LXN7*eO!3OBt zd&nZ|YzizQ+JM%1ZwA6F8|P(ufn+F#_$Nsa?#Qy9?_pn{hs{*Y1`S3F&WNZb%TSsd zRY7uDsxRy|3$zEQV4{LU_QaEns=cJ|FBW5<942a^JL~Ao#pRiOS4O{7{@neadGPfE zTj#e-l*7ZrS8(lDS_6SA`9w5YE?;@!=yNpwuh96vLgW7mtBWdE?m)GZ;J3+G8i1O* z#i-NX(1XSK5P&2!)|OhS04c0^pT|QkE=l?XZz-ln43h@(A*vvRc&_FEJZ_E)PU5R#`_Hy70~cbSRP zS~GVg90PF?bmr$ySmq_t(C|pK%X(W^92Zm?*1E^1T$ep8!;BchnGJ;t5jIc3#tVtW z?3^WORFGkcax}3(i@z8*ykb5cnMO&6{3g5tI*tv=LJ8kOsvNN2Db1ep9n*BJ3M7hQ zl$)uV|L3=}1--wiOPqy)W>xsnc;eI1;Dc~GCgLxck)_cyXU;tDo|f$#sba=F!%9-W z{aaIBQlKu{X7MG%)QYTsmo-7@Q7k2+678S6(Oj-sFZ8hlL^slQ1qv zBEtelvT`k=I3XZ&NV!;Th;PN?Wswsez%u9rBQt5lC(hPj9C0LwvI#3px-`%dqz%kG zovR781V5tW3JO4lXt0N3jJXPwCyoUB@IZ0?GxpIE=s;O_5p7-336=Qs^76v2%Ojtg zd+VOp@4vdI4RYAlnVHMwc)Yds^8C`$eLWgN+6;qYF* z!=z1vktnCK;abFk_~Uz&T9}cOu8+*%V{jwLD+fe5T4MVuicI=6Es-M^JH zxiR#d*BA&vX&@z|$rG@N3UP0OeYC5i=zGEoqLar&nmrS2>t?si^f$$exa&eC6Oy1J z2k2f}TEJ9cDuY?(Ql|~cUw(nwU8XZw>ai{QyhXjp69^i#bh_KJ?8<;v(BT>IKOl96 zNtm;S-O{p{>K>xAxOUKR#Hyx3ZN8bAkep?iCT11g>a7eY!*W{se=n!pl}Pcq_a z2QS8$9kM_~8LE4{pDN8Qc0MsZ`5yzn!8WFpWvm7cDTdJR1->O6-}~SEhWY-ZUpe!I zW9w@>md?z~_s^%(Z;r;N<8yOw1|k!{J8!=6*fo;jH%W%yWPk0OhmRfWc=L8_fkwws zcOy6T0~(MXId$Je>h(}}Bj{5dy%Eb1lBkTk``_UQoN9SixqZapI^CEM-!UDQba`s3 zFipDKV!AU0H3eJhu?l$E$fYO^zn4jE_G+=0c(T#n3mF-Qz`8m{yeoz zbcpEJB1<}A5ht+~_HJ3p4eP<}v;i|lnnkvMWgF>qr+^h1mion8GEX8 ztY-r%Rz^h0#kdvm3>{5!o`~uKQ&ma4iKe9q%zAl6CuS@w6vM-8@J@SSne2o!a4m2> z@UG~CZ4G>}^x6C0B1w7W{ulQRm--%z=c2fjeOHb?Pj0dgm$DC+vJaQCvTxLCV>c&;%&B~=BZ7ys|Oj!h;rO-D)kNypIy;1?Rra67ATA{EIUF+w&2^B4|QQI?v= zueJXk=HW_U7nSzg)k^!d<)!1-@BJwE!4vO4_3nwaLx-+!UtPVvXWO>x!?Uy3oAc3j z$d1>YR6Lc-U4Q$`n`fSS>iVNkJaHXX(sfu#cVEBz&W7TQQ5GHO&fviHc5*VI}NVpx2c4%=0kQg&z^(W z{Y4(;WHq(j>2^Av(bY$9vANjU&Gbh{ry0ACQ6bU>!+F?iZHL%&<;s=MxX&y4$rXo9 z(+VvdWGJCOW^a{=K&XpxYYNTzqyWo7ZA(}ao4gi z8#gqX%8*nOLSW`U?K)Z-Ei62R0eOX0Fkz^1aWq>*LGkyQv z>6MlD+*lyBFR*9NdtbTmr3=qJ_uf;_KKtGi=gz%%>hZ@%-y6MyiD5^6^xAkL&l*0q z$u9t}d#aXKdwx6Tb%V)O;b?4Hep+Lm>_;^c z<|-?%X-Cl285J0|^kg(qu~K_l5MN_udB5fq+XjAgInaKej_Nttz z(~j>h%ZuIG+WHphl;X&3z|^wi(%uS&h%=KGXed2|IEBxprV^L&w#)zRO2*JSk7rgipaZ}W?Qor8R;|Ja+VQ!k|=o8>MtFxB%(mJ zomP*JtDIWOazCerN6W;cKevu}8>Kw0QAwK?8LS{}f?es##A=v9ECFI&}wZF7;Vq~Dl9v&VTxDd0f3y`}nP^w?( zNI}xRP-xB~J9pvPgHO}txImZV0$q*^bUEfO%-z8V34`L-ZsFzlAj!4=XH(rS-b%f0 zWZR-cE52^SATf=c_&(spPn?*e^lxx!VqcOSRn03Rj+1wlS#3PQsU1|qtw)YLs=1v* z*v85?2@zO%C+2>f5uG#J5B{enIk>M+EP&C=a26ShNf$_BEGcD(gST)W5 zGskdTw}@&50~;btRp?GwW~toSG_}f<2Sk1z!COXMoDMw~dZ0-Q`OOhgk25?kjEF8Y z>rm8-yuI02DBPHy(*XyeVhSl2QDnT;qN7FVpfcQ?R}2bRoQS9j{W^-jk{nwUhW?(d z)3T9qL9uLJBN~1&@Xqp~@xIZ~siEGku_sMU`}~{97w*6RxyO!Qzk1J+1Bb5d+5f8{ z?U!S}8qT>3?caas$noUZkg@H`-W{{s zXm&JqI~dp5tS^Oes6t*n$~*pF;o|t)%&JlscnO#|-K@2fK#0}wNK~vDjB+DlQ@QHF zH|svf|8@>ZimjUrrVa;gWKojGDI=^*jcR)}yiho@W+Y7ZMtxn6IjAh^Y0bXZaZ<-0 zcM`+>cIsbYG~3tb9kZ{ZHCJXw+X;ptv%Te{kMaye?X4B|2~9cPPNw6c&J=4*U6uoh z6xBR(DSi**W5;T3(Gu-hC)(GNZ_nB0K(99XD8@jWK{Nwh;DC&WG=_%Ig0sJyt<<8O z%v4@Rj0ZicGLpXFGD((JWrC%W1=E?q-_$TkI(R30rvCQhwp1$BzH3{3lm`^!oQN?K`{k z_1+!bJKEbn8eSSe*5;$h*)f!DK00{z|7Y#ZqvJZyGtauWs_w13*IuXsP}mDQLF^z2 zf&lk@6U9X&MN$+gZjwleA}MYXDRGl5QKBqraU|K2Z7G&*#foA(QYML$I6cY4No@DY zIWyhU=k&~+?sR7Jba%S@oc<&8d+)8nCQ???4T=B?D1Z>Y=X=-Zecog5g==cwd-u{i zm#$oS@BGtGzjylFx%VDBb!zW>d+%;ueA{y8bgg1qurh&lDK}B2{V-ePRT}X_!+M6H zKI}?4!=D{+mCaAIZ0YNuleSXTaUxo)!cy>S&n!!Ev+7priwsxLntt#anDxuWi?UB_f?748d4NGgyzzbF(jwMlJj6o>s2tUYvWSpVj z$3eu98!{e$%1)WH0G4?4=V_6D&RD zE<%;93I;dQ0cyI-G_9cg^qC!X;|ajk9=9navumR*#gLKNR#H0WZjVJ7{vcq=qQ9CZ zKeUq>?3HOsRZ_O)aa-8p1zALEYC_a+t}IRpqnFci<;bV(vjX4c z`!EO~O@m|VG^bYyl6keh9Nm~Yx#Jat~j0am3{Bs{5Jx@_mL@9z@i1rY> z7t*l6nP*YwqmEculC;_vQji*G9vo6S2I;DIwSHuElM zP0dMIG3nJ7y4ahPtLjxcdUpd-3JEN3k~IeoLXwK(SW;=CO{UUi4QoIs7IBs8v=gr3 zSw^(62G3bY*m3%=3Cl@JEsEtmF3n$hEUbTl!5YRY5veOxOwq>7jit<_c_Zi-O*&>N z8IYh|BjtC8@`W)Lr=fz)Or<=|TE^vNZk}qXZ`))alc?W^LyJ%o+(&Ketl$~casiSVSr8IxG(CPp9bO0v%ybOi$z8d)VT!n^^D!cNhU z1SeI1YfZ*Lu{sX(n({`R`cL!W0+>^I}kJpkB%Za(}fnUV6h^v(kOFiC~pcQ1!jt>b4 z@8(EnBCKLDC#x2|v741v0gh=P1i6+u{5p@ZfU&gm)KW4thX{G8lCuwQ2 zSuEXS+w_Dx)!LCfo3qV12~tPhj>OTRR_Za9hB4nkkeUz0kl0akp8rxS8u1YBC~1Tf z7%{`skB??SP>EDmc2l=*`Ag_q^Qrm3#a0U5#rdCN8g7z54RV^5vJ? zo9gQF`OC1ui)Lfv5+GB~;njxK|vC6|}n9Y+<|l+iN@E8pP;5m`BB_k4?yxoj0p+GgoePftz|6q@uF@~ zp|F5KvRFCk5@ul}&AAH9RnuMF` z)`nI_mK3w!4BgYsAtPQ->!AiouYx60F718i zGBF7Mt#(u30(BNG%8a38kr*$HRsedStct4_Et!0=*a9Gw~7Kh`FY4qaj0T3c>)h-xks$pa<;e0kUM%| z4T_V2Zw9yMefYQ$y}DINMZ*`L6jSEVE`rjT&~sIU#b&y;p+1#PE4f12?2RaySW#)v z=0b&_eXoz!Yq$L#j_{~NTqIMLI7Sx2x|1dw3Y}XP!(pb8R%OM;aI9QIq*X(co z3_&leSoTu`S#X3h0zCUd=} zqraT+ii6iJG{1zBO<4Wms@lFjrT@{uI(8fGQu({ca8@9^ zq};U1rE_fbYv2UCY4iBIpt zG)j>qOaU#zK)-Z7WkdpkPDc2Cq`66^u>9HkBnV5CXYpj~Q!tO$?OVvzbesfZZ-(&3 z8!yg#E%)-S7xrD>%>Ji~K=WcOmAY8d)pfCdV&Wp;y4cg#cd;p#ySQS`oQoHBpQYM% zk!ssTs%;mkw$)v%`|kj-%9IU3+O)db<~H+FGhsKyAN9ZdZcca>tY#((Qw6uO z!}sy!b3`5(T@8BXGa8{dqoaog1_l;`vVMQT)POv665(9JRt5xQb7S!z1uQQS))uDM znB}8MOR)k$@qKMnT|zrO?K1%Xz=yrk;+bMV}3a5fH2GMX(t*K!WS447?C!Rf>LXf z-nmpV6sjV$qol+^DI+T~Q$%-3+EOgVkoU@&rmz9Kncy2?0%AP06wc0CHX6O@*V}#^ zdS`rH^Y6_2-s#^w|ILTLe)?-ilETUwit!f6|n0wid zzr5E>?qt_>gWYV`U+`Z)2cwM5WX&nPR$@lyf(JA$XH}PBPYA_*)O44L61OqNXinDO z%b}_%zYOQgPX5p$ORQHMN_!Z)ntY2WKTty}p<~xAOI$o#Ga--4KskE;t+jSo2Erg~ zrPX+CodwYhb&2p&+kZ*Y8s~+r0`aH^*yJyS=d?xSxuX@PqHF3Xfje|sH3C6^iakU$ zhrR+;V=5@5u|pU)x~7p#+QZ68IS;J~MWrmK#mP5hKl6VCr@`ELfn0V2-t=nd#n5Y^ zuS?}^$F&7-d9NS%>XDl}dp50Kf337}%rsoH>l|Qhro^ESQzF3tqqI*0khYdd9)VH3TP5Uk zSeq8=3CQmh=na6BXK6hu&Xp$cQ~KRM^^){QJFsPkbdN=>{i%39>RL55h{Y~yj3>I) zE)HHP)+r;!nj<$9XV7sru#lU6mA7KdcGs|A-5O?63lTb57aSP@XI_~rWHi<(b}4B| zexhVs@Nk7fODzi#voM+IIG}bHDW?6G5vTLgr1B+ndHF3W*8Dk(hajZ zILw@w9!_K5UjK@0JohC`&TFgQ>3!p&SC754d$fMuoZgOO+4{KE z>mA#&cI~x|_uO-B$%YNr(8a8;zcy6r?Y(yO&@+dQ9lN&wp@*(9m~)N6oJH3beF3oi zU~C4g#HN*@HHk1kwZ+2uaLM7&{4?g^WDTT$T8@DgY|V*r>lcsOPf1uh6%`@1$$W&i zRewf4c{h|zH)*~T%~sNhN!KZ6uYxxJz2{@S<4I+tGvD8=^bSV4SqLq3XYYdIo)s&0 zI_3>|BU04eIJj(t+8D%U?|v|NKf)G@yVrlY93%`*J>8yM`@+hqO^6M4%bmwF|;Nq(-E)HT#CiP%4lZ7lG#8v zk)WSdq`6g<WYYOEAHH_VpPCn^;weeNY zeDtTuKfL*S$sb)=GqEh$HBm}7O%#*IkDWXB(e}d!_U+lTYu87I9=vDo-j9YRCO(20 zl1zT|{g*y`>8oG;==qyBKf3zdb05*pfBd7z?~XX&CAE{Fi0fBT%B9_DV4HHQ<%q4^ z{}TUNBAslKq_o2S(6q+VFfMlri_(688VOp;8weX)2gqb6%XQ`8&nJw4Qi<^HT<|N{d z(qxG5gG|nVT_%@v^doFhSX)y=_v2s~ zJ`3rH;VP`tA)zEqCV9=G3Qg5TrHMcfm92@Q-J;0q4At;gUja>wVQiuFW|9081=>XL z(hze~EZ~sIBl-_7mu#`2G&$e{NYDuJ1aHfrfQo1t`yDvmuP+-NUAOM_*Pi?;P1@J#hrLce>~;EK`(EGo>tH;I z<+2$C!;>|@z$*)%H|TE(uz;zUu6|H9S(FJJt{AW3T#lr+@|VzXsMUw1Upy>14<9Y6VZCCiiEwn4o-`4A|GHusxX^g9glcNR3gg>nKa z*XX+Cj)49Y+iS7WBXCAiLQemo6OAX51trT&0Ydc|HQVV~&YaGM!6C2{1yDq&uI90R zQPyu2S#BKBGR#0y#(_0Qf2`JL(mA^RAi1a*5mW5JDB#h-4)tJz45GiEK(`a59?2hl@A=d!j
    Uf>`hg?*(@%f=gXf?B_|*??eem7ye*E71?|=OEyYGJd##?Xg z_;|+`ATltil~B>|%}$|l@*!TF+yrB&)9V07z%h6<4U%H={7-_2=}(oapie>Y6X+mh z93C3r>E-u{A#>28r0yv3CC)vtjASN*g4k@9&Ph{HSk$Dz2<*!_O8*zx*)o$aCvOLb z%5R4JpDp--xC&|cetbwP@%DM!%7nvxuue?4BsS~a!hTx)oJ_zZqM0=5f$g$Dq%WGx zM4S}~i)JpzZ8t^f2=^#+V-pd?^aqq)^N7?;vQ3ekVO(lVINtuldcF?The9g1S2q(? zPB>dL#)fq-t}+`QSzxoJ%+I(BiZf!nn*+UOXZa%ASxjY5OTJ|r?X@WIGQiN*LIh&< zcGe8O!jFi;r%W zNH>M6rgKrPl@T&@7@Gq#v7jzk$gr(GWOZn7hIT`)?2PmIV}0yJJ|Kf@FcM7 z0`Dp7><7CgiFR}Rr4`|a5tFYl`sF;Usgh?+-_RELhsx_RGoo@Gg-S6%4Pj=@O8zPN zd$;IBjQg~5z|8ohankfpzEk4)twTf4IMjp&R1^uuoy2cpi;pT}rS_5)YcZ|)&{ld{ zEVoOKWs9Y>GOxySTf)tj8LdJNuG-(^G_=BYg*u|_-6eqDVq;p}Y6GqxEg#O5tU|Fcs3Cqf4W%h&acCkp& zzcY;nx^@)dIWCE)5*oEEb9LQ}sk+tP(%5J%9bdT63IXLwkorgsVrfC9A4pe%kUrVS%M4mT#1XZ*sUi0=%7|Yq7vUq&N7BqJt_LoM>dRf_vafDmKNIi*!}nK+}Xcv$&&H${{0W{efY$Q{*{}T zF)`l1Y2E78ZT)TK+aFx)yZ*ZT7MuTDo1P|2WemZJ7oAigaCO|xJN>B?bYOOlI{g|)eC?hTPx@A;P`}Nz#Ci(T( zpxc<|Zx11m$zNN0NJJq~_qJ)Qkuze`TiOh*n1l7<4l*Fs8?oKh`NZuEw2{C3Gn0ub zj)+EkSg}vcIwQIOGtP|tI{})1?&p;AV1hqDHi=rz@aTP8@42UUv@+FHKBfxDr{j9^1bsUkoE0U9=}fX| zaMnrT%6zldsbidVXjxraMgP=8yUGzY2urM9c-T*y@s*7dB*!zZwJ1+S3x&pARX#XK zj%p!eE25g^UlERujlM-xxoemzVdc0{BPS|H7jx=#-Kn;X(K+d8eojx+YKLZlsfuTy zgVmEXi9$nRobwd&w0W!AeUrYu_E-N*mTUb%im6&D&Ywenox+0Ls4BxN$PJtRIEDpk zz!v>GY68NGZl|X`hCO-+C3YsP&+J~lU}A1ZsUedn%ATwVJEX-6T5avbflZv<#M8$( zyos%Q?}5!V@zjY&9+}v)bNlw8iJ_VI%|FPQ#z{WpdsE+H@!qt%Cn2Ek?c{aEFqJKp z--z*(C*0K3EhXZcc@xX$j#lfWiJNWAzThTK)YE)!Cj#^gm*QdK947-Ww5h#4&IC@K znrUb*rA0_jOBRkPJWp(*lB!8iAr`7MTQrOUhl{pmE&Q5V+gRU;1VXLcOVrVk)%MTa zj%|&*Ml^1*-W2`yY9vyP>TtNax)FIpNLf}5gSd3wBCsSDrLu42JUL$n>dYT`lqgZ; zf5Nwx7|@uD0j*{9N37@6V^K4!M-@>lsO*})hZ&6eZFIAG(hz`jrPC*t2Kh%8HKe%D-z)t!HRf%?_ZbL%QkD`*++EnseCWDel%sOWH=>H9O zcdeqB`G^%q-^Om1H9QT7(Ho6)8x%J|ZG<5mR5Em{NcAB))*DUEt6b!iQk}Jfqm~QH z*$&0*I`M!UwIHBQ5P)+WKqMg+vumtayVdE?cqPb4LRBY6ChjoYXnkCZF{4OSuTn?z z8oCpaOiOfC-g_&J@XBBQ)Iw|j4-*>g{jh4D5qucvkHuVO`>PEfFVh|qTZ=9Jx7=n8 zk0~nH-JJSb=1})D@$iP6{LPcQH*cpyR_d%PK(g6BylnB}?Vhf04@Dx|Uwh`6r=Q+_ z{?MTV2e#k7e&x#chfg12AZPoj#~yuj-S%}euXPy!{>e^@JSu1IAAE4F<$70kR|Z-L zGsD=7%=GM|_Eg1T7?maqT%^p+86f)u_Z3LoFhC5?sAquw&LM1bQYG#mm0&Rq@7&Aa9gty!}xPJmxsU%xAxO6~gE zwQJ8lyUX_hyWafDjT^g8oO=X1)2_3p9)En(u1#MSEPhHQMq<)pl+h9x17Aa7I56I2 z8$sm^w?M!e%!^_jsAV(_q4}i+pOOlLUl1sl9Rl6CS%@jyj-a|5M8W?E7jYJeImK1x zs;oiKjSfq&(4kwVn~Ax})@uJ{A>AOuNfCKfn;xyA4CF=#NhWGdaO{xM#n9ZU1a+7c z__DtDC`WbEfFq$n1vve>TPG2N8EYhKXTTIu%t%~ixPY`rr^${Os+;z_)`-h2OL_pc zR4r@9bDoPuBVnnw)J(2588y=O(Q5Z=S=`BA{<%rVUd)UH4GzG;##Dfk7vRizESee( zuy`eEsKUndfSUuGW~Vg*!Z?) z5mT}|<5kZj1SrIo>{Lh_2hJR`t=uZ*KzeHv~C~84LmLMMpT4Gc0VcYmI`hacu zIhA+HPH`|NQO-Lx1~UbeEA2#>%WpMBE%zIMCH5`kEtMoACrUS{@KXT%&xmfDeupp43E1UGnNW|UHc44TqvlC!d+@`h;| zD`~}()=^@|=7wm#x27?rCOX>@Zik=tT)}+{^k_f-NftZ!Q=Tm~efu&~TCzD1vy(<) zQ$kMS*2?2dY@h*tCC#ghS`1ggh-;w-i(jO8L`#-nNQ$kbR|L) zpGst2q5FajSi3`F-26N$2(HR**w4;peM+7sHjr0*AwtByEe!19G!f#arbdFfS;frY zSu&j?l308beJF?lD;fIq+fn`*zD(8XRy}k@YHF6YSe0G9vl?-6HO_)ty7|CnQ5Y0@duI-~QJzM(pD*~O;yov$joa45+tR#8!>FE*>COx{)<7LUO> zS9?`9P8q7YfgwLc&qxFxR;rAFQA|W_ae;G$Dlt@S!#kTDQj_H8;mG$`WaL1c+?=ws zZQJ6kE^tyt(UI|kOx%q}Q6s8NhVun@~75cxGka)p=d;5R* z)z9Ag&aXbXefEjiiJixObtty~SL8}4Ed1Wh&!>4XFk zdij+7EBQvZgN$hl`;&SM1H&{Q&@<_bUqTy zY-vf4C<(@gMV^TA3jw=@91Jc<SSKTK3{)%3?Pb zec98JDdaxt9hV*hGc(OB@I*yMsqVebVsLB}>-%iQLx-9iG}fr3SO#nt7ej=ixu-i- z2_<9OiFi6iyCREN1DYYam1Y~5XR!h@<)R_nmtwBLvlK@$7=zGBh}q_#+lE`^{EiA0 zPDcy$lW5Ay_RKXSMO#NgE8fiV;1&jplNK$>n8ju}G#)IvE-sS`(wdA!OZ))-JJnE2 zXe~l%k?m7_W?hcmE)m0HWlS6scG9D3L^r0k=yEgdh+U|Tt8rx1?c!IENs(SI>`K?di*!;?;FK&MB(<_@VeR_WLsZS4V-udY- z{^oBA_if%>_-CJfT4*J{h!&EK9#SHOfB#?p-~aNj{#9YsqS4VpLv1GWFAD!+rr-BH zxbM&_7jlMozw>phe3WY`b(l%(8!(Fny}_CqF{41X;#IjL{_VjS-}&y~-e=!zP3$+c z0=cHs@6D{s?cZqm*zBu4>m~;zWnFIB5Y^mijIZ+L`n)Ol!rS?VVmGjumR_5-yD&uByk+;O*I%mR}qUoWYSxmMhUB-$^YIR@O z{2^R0R0SZN{tg!_^}&og{~K{GM&&+ICYrpDFF}fu#oY{jM;s&-5!hDp5FT`g3sL8w zl8N9CqKI0f?o~4+nkFn}#4gGud#c9_7va3pvTsK2w`IP89<%`$n&NiMh-)emRHp3a zH2ho3b!`rAEwW~EdEt4<1tw17lDa77IW@J+qGAPN`D|SA^@AEl^0o-(v#S^-2ULpg zoq5lHSOtqwbF1YNR(a5DGn1E)`gMUj_iwmc!n76@v$dfG5AbmkA%-8_RA?NV#}D`7a1F ziN=E6mcK+9R}?I_P_=su7RCPYp2zPEJ$m5q)t&pc!z+)SzIrvbWX+n`rp1e63l=Sk z@k@)vqr>c3iCLa^F?O+RUdq3tN%tXQ< zL^M5&g%Eo6c*b-Gl{RLN{psl;4(lxIvyw_aZC%Xt-rtchs*u!*BF1ET1tx14M5bgB zQ>f;el!~E>Gk0hiEr)uZCjE305GF}H)TonyGGHHZsn4-yUBYQ=1aAv@CaMp5Jqege z+FYixDC)*K=7(T3rcu`V&um6#_84vbVbt}P!zbIttmzZ@oR@_`_W0q}nzPTH8d;nk zb)LR@6V9zOIIm+~bFpkRNN&p`}tQcd+6!==t?e0}J?R)Su1Z?cgvVd_?m zgha7S?%`^k!e}FAw`e8uoZ{1v5DC{6qkE2{*OV4LU&l*J124y!2SuL)$}ZJ@Q#Y+> zhN=RbsCqS@@6ilPzn`KTL7-x6eJEB~6)`;mA|qCtcFdgaG{-czSti|O=iR>t8Ew?* z_mX`*j*iv0q*wdYi1)^gTkqX^>n-ohwQJsqqes05jvx0}gXt|$&aU-_@05?y#pvJ6E0<3_#>dhGZY($K>`aB7?n(vb=q3A5LRTIa<%2Q zD&d0R*4L`6fQ#UH<|?gbmA(hLGZcdp5k-pmYfQH*tTq^4$wv8=n;Era1Et%ev{;^g z;m@r2A3IiS{D4o1J&emc{Ia6PU&CFh3AKnA=No2sB(6ZLEU-W*YUx#$w-6A*fB6=V z$>?MQD$4qFe$y684punk)q3Gn7M>i_8HZh=RKD0g|y*na}p7_gR0pvPB2b*LfoAp)TNsgr@Ct9!h!0(?C(;JVV_l}F79~YJ*NFQ9lNCMR%X%cd}Q+_LALF+u6v zB;g-C4Gw%c9AR5PA@&6v-7yRZfCL{W<}@qV7H5vC7Fobf>H-P5q?BU9dFxh`proW^ zn!G+A8H27;Ohct?RvHQpTIMJz`hLl(i@*8DZsI3`p$GiY&I4fRzzZ0#uYw^FW6ztf znca*}Dp_4)Mv{=#$Xgy;8U;gtiav|Wx^gSl0oq>o+^Q-`cK%S9NdvU=1J~lqU0c6>PaTy-Xts9Ki)I3?A7;gK6l@} zTTk@d+i~J+?|m04^Rl6P?_GB8x#yOhK5=4MdqcyrL#IwHgGI6oF!uCJw>7ih7f8+c z1A3&Pa))|CPMp$Yt|Ja=Ms+|y#McG6yZ{KMq>m#$2H2+jOeF@K1v?2Hr#mP=Cc#1F zCS9BFq5{>9Nqf|&|0&kMO#8`j)Q+cACb*MI#!2uBTI33uCeOr@@n|9mRlPc#)XZih zZo2ecQ)*SFwo_@ZqS8cgQHWaP$6dwRYE8oRy#1RSO?L%2^jdwbgbonZu>wIySu+z( zI`(o`sbU6P3Js`V)Y)JP+h)Y90{$*${IxG|#(ZwfNT4l4;18IpmUc5G*G{Iy97jva zigqFnPiIlJ3Q0?`%|tZo=J8vGovXIOi9$TZzA3vUmvp?;Ts^_|)_8Qa@AH_qOVXOg zL$*bIpXX@zIuTJFifud)b9bUZL^462N8^8p89p#sXX|dWDhdW3+8h6Y`c^e4lXzD& zgEpbQA+t+Qqv!v2h^<2x$NEoRd+pNs4QtknkDpw!V)csk>rcM$%5S{#+G{754=-MP z^5OI6PafXC|Kxp#4xQ|*nLGC+9Kn<1@l%kS5%dO@Oq^laCkAgS`15mVzhar0MzZxW zBn9jt9~?kaRz%|{1J~B5PsXxA09+Z-oQ#YFDr6jYMO!-Hw3Wl5S!kksgspdP0gc`uev#HD8@dqNP>Mt@+R8LKCzfF2fMIRGCgN)ol`G=f40GN36SXi ziHWKNNJ}Vr$C1RA@CbbrGCS;EG+b*@wMkLouJO_ISI`!skr6Ub)y23(X$A3SkjEYb zi|#sMu!WWQz(iiHT@e0>w*i4YN1O0sNp~BZ-eR-FPPai0!@ahaf_Tml6e=8rxpcpy zdkq~aN7dSTSdZ_f6wA~H!Bn&^6*u!RPFW<;h@T5K>isAB)TOd!*F{&wb*(si`1M zlCGwT+ni=`d_xv^%BjdafE3%xXZTGqV3WaAg-R7TK}o&*@VYc3lDY&!`uyQtro8A% zlVL?2mN6RIf^OYFnt+#iV9F`cq;`6ga2=|SGO#8wS1Bf`7K{mAcPQC4e`Y2A1OYtn zexzv?cOSv`zUTS=uj(lyt<+RmZbJ-+Y3&><@E z*MiM?=Nd0}U3~KT&DU?f^2$VgDbdw6;SKinO&odh$%(OObmHLNy%X~nE}XFD&70VE z;K0PPRjVf0oL4n*r~Shf&`f_@iPOslO2FjDQqo(Qs#f?xl|)EB6SiW8%5nA-T4>k_ z9warJqR~)v`+@+d_iK2kdBq674js6$(_9=sV3?=sIv3UeYVaLuV zJT$+OBkVwP(ydAz-IBCgYa?52JYab{dV70E(&WYqZEvR=4<|C$Hk;mR$Fe=}MAFud zlWSk*EYahPo@B`8m1T~SizC8K0YK9ltT;pmBWBksj-p#Hx6lw{=C+HE*=taCa-uz% z2m>r?rg< z+IELI7g9fK)1g>=cN8^n^nYTtdBlZeTA<#-lld0Op^Npf<+ZNnX#Dcy`78d!VRTr%c7Zt40$CLVSB3@ zp&&Z9Qb&M*v(v4vveXomz6K^-7@i3B$VQoCsj_!kNK8XiEigKOAxxL3YzfEK^EB#n775=zy@fqIoRNP%?=mNdkh)3X-IbDcxX` zO2mI8gN&eu=AsMQLyc-jXvuip*!IP9)@|Qjov_-hIdiIItD$LDSJg%9LZOc8jxsdC zS{ZWF-U#%F=NWk&?8k12IT9AIyyrVAsto{d(u)PwE0g26i)?g7>Wt4~v;4qbr_Piq zS0be$OeJ#ReAQFb`Iq|`4^^X!U#271Y$+)%9^T@sSud%%S6Nxpdo#lC)lwkuN7Q&0 zdWjW5Y=pg4N@9R>V2z9x^OhyQ4W%TJYVK&Vs^Y1p;p&kZ>b+(-LsTAHNXEUsF4DX# z)}?*Cee-Ue9e#j3yMTKAl3p3l6^V5C0Fo51f?9h8hNA;~6(;Js9)7P%tvU0-)q^{RkD^^VC6Tj}aTDjCxvyo_n zGAg=6Wc_pq(frAb+NWZdf9cc0*76Za=;{CZr)62?kJM3Y^&A!@Sg}qF zwc@4`ZBH^}9<5`n68!^G5=E_MgxozEGf0prh@U4o9Z-8nE1bgODrkv{TDvtF%jR-w zzK)Fq`Fv59#3$&Tbg1oZYts{MteyqBu4TCrW*YOj#3p12*1|`_CTh9D<}ft}=C)!q zdRdhVnOrx&Lme2@*2_wm#(F0ekJqn`r&3lpRo}w`DV9K64PEgRVQv*Fktj{F8~i^q zr6xT?0)peY(z`x_s)wg|7CV66UpQ z?LAN4^TZR6c0KxQj%zCA2+mD%T=`W_JDqZ_D%kha)u4$duQ^`s4bh>z;)}|eaqtDL zcRc+sea4S_QS`5i92#-Ibh&Df>-NTzDK(c&XfhJkDTZ+lRr###^`>HRSY6c!RY(x1 z6}yzS^Z5TV6gqq;(11Px-HS8Vy-R5&-mSLDndc{hGp|{1BKb+2Ne`L9QiwdTRI6es zkHy9{Y_({D6Hhgw+DbH8bik`}XpB>Tu1khjadbll=RxMHg#}l#?i|O z8=Uapq!lo2z!N*t~i8*ukX-ckUb(8r$##_aC|cz=7d`1^X84 z-o0&j+g;9e=6U)SPNH|e>5;`^wQ^=$K(f9&pYng>slC^0#p^J`^-8l^9afz_RG|;} zCs{ppl6g7F&A;w+=Bk}DPUrnLJ9%$bYhJglG2FDRgxI+jf8b6hW_|;r;e{j za)093p_7LmeRN`M8MgDGeG~icax6hGB%Wy6AGvEY%0fd^JhUJL8XEY=ozt|MG5Ajeb@;RA6!-JHL3|((bWi)&q4gglFHkype%)0!vQu#JUb) zT{p!Q#jZAUSWz{*c5$mZut4AFThRt5orpIO6&Pel|C!v|gfH1f)#l;Q2`YnU>0mMM zIeIqfX*Ld(`;b`2VGeS(yQ}PEDc>~#!DOH@y{!DjNBETjb`f%k7gehewZQDf z=Ck9u&9FvckXc6Rl8f#zzsiW3l69J@TFPHjEIm$ri!LS1v5CRN(EL2IboMb(i&IAhI>BYn{Xa!Ug zLn)e(Lw4vjiyVEa|N@nk1H-bfZDQ$fOzn7N7S!lWA7wGKSHP ziy43%nM@#uKwc0YWJL{2lkjdUO>g)o8jV{eyIZ+04&Q;pqhzng=NoXZD0L{%roC#I z&g@YuqSjqX6v!?h{ILZ$g&eFS{H7K4PV;w3Cr2Xfi3nnQ%#3nGF^h1tAIE0KpRkqG zlI6un^GZXj9USPx5YoP<&1awOjkUD& zK7Z|%YcIaotIpBpbawXMx9_=qSFb+Z`}E9{l-oDWy-j;}@?LVH{#~NxP>Dz?yX7HBhiHc4uqWP_26j>M|SYa}*`uwWgn-kh&m6RDRS3fN+B5SA#n&2RqH3SI6A zzC?nX_%m6Bwo$V?{UZNSD(|EizHu1Frd@+lm+93Lx-=kwu9>NtQeJHy4jWx`6_L_s z&ynq%Fx4s(?IV?30}=t&L{BL7dKLqnLHU^Q*Vc!*){J8;z(%{+XjYUcxwYdR;qJw; zO*3tDjyWFjuz?asJynT~{tbUjX6)UrBg=PgSg?F~7jtM`+c%GF-msx7o6mO@8#gu5 z1WaTyM79k*wY6)y*35*(T`&PW0$&Rzrswp2_95UX*PuuN{mXc#Yn>sflb*38b$Sy8 z(y|F4BdH{dvu%4hSl+I(d|#WQPH`LPj37R( zJN@joTcxb5s;TuoXe(s^6o;yjT|+iX7@Le_>h`NAY%N)(S81JseEMs#W=L^9rM<9*Mw2eV-*`5v=xL3mYjTB^^!3 zhZ2|mo!@C|M_cGIzlQx3n~e95_oP?PJJfMv_n||pFQ4Cb{=|vZR!yv?zJB$YlTV*K zcW!mCC7o8t>Gh94{_yIDXP(o{>pSz&i!vqutLqxRzLH-@!`EOPJ(!sU>^*y^OT>=L_M6hOp5bHd-j4)SB^TGd^I4(fA%L zEx|U}@apNkN-0^Wa(cYc&fr<)4m!4F$HcWpO>J~4PT~#{C-slcjFTk$|2scUn(J>l zUrc7XmaOBY(C+cBtM&U%uDdX}u($s3$&>Y~mmXYt;X?iR*vhdbOX_Qz6U}XH_0QZ` zbYtPdC+na55(gWcsJ!O>QCPuJQmHK)VY=TOUu!TG=Vy`WpvjPvVu6m9Q$W_Fv@1=5 z;HH*uTyFNkmv0=TuW4f+lwc}?H|6S`pY+JR#~A#AUO~i6A#b79#G%^6!x_4RO57!x z%o|>BEDrH9$Ch0gqog)tp3636=cW8xnKu$TccqpbKPkM+u*%UR<%kB%<9rWD#YX(; zwA-t;IY}&lXQRasOEeP!DQ-uzXIGh#q+3mrU##g{$$eviwb_?;jdmKInVglVZ)~+= z%CPwY>^)@d%!T#xQff?j@nqwGNr4M_IvSbup}4TIC@E@g9ouvYsWf?4dgFpQ;oe~g z$J?wJlb_W9YLOR{y>tflSNfXG>`&ZAzPXPa=K?!*j*O3-I{y6e509(IyGI_}x9{v| z$Kq}G-M9Avsy^Gd)?2E&rZ(q2bM59~Qbi{Bm46m?;0tP`I~-T?QRbcF8|nw0$Y45IHLP@}rBphqh0{Zd z)2O)Z8Vq-M4BosXOTpJF6Y-LiS&Pu?bZtU+H?VQ{GP2R$JQeFx-D6ptl z_hx;cdX#(HOZ`~w_%5YXbgZd4MeSr=Bw{7&n-k#-DhhVox`$aEy;I6X4HRtMbl0#K z&UR~Bx+SR-%!e%srCHNRrIaLF0wSpt(siTg7OI4C{!&9WnPiX_vg?L7^cM{`y=i$r zoggydX`SjJR zix>V@Ryk2Pn;lIqT$miqo-Lfvn@&9w4>g5^v(=NVoO};wE9N{Pas}^J9`Kf9p9--2 zYd__DE2VV~#xEp^Y>?|{_Jo9=}kZ}yuunaog9g_>X0keTPo%00&PRSy~s z8F?xa(~O&vIANy`#2K7pUV2ZmN>~PlZrLqWYS$RM(P%2u8;I3qi+XWGgHEJiB|5gY z_Vm*Ei;$evB{Y_oCf*j2Nax?qWYAVxNrK z#h%C?05m;%4@^g3MTiS9=9-i<0Y{c4G!kW$PnB^#KZwM#kl*b5QPB_g7X?HMgNb9ItH8j71)vN5i;otU?QSbTB<>WBtdvVyH7uEKgly#Gn=@aa^_N$PH?RmY)})1+eFh4e~=ao(U-_IWVqTSVr+j@ zUB*0Q0wfARwD^SvOJ|_iV`~u%&r)eDjhdYIRHGS3P%r01S~Cf=iTJ}R#0%+gp;$Ws zp_u3gUMDIZkFImoq6dmt>9%%wPNZ)z7E7-2Vg<_z=coiMoI;V85){q15y&MJfv<|v zj5ItD9cMwMk0QzReum0ZGu5~*CMkri@UWjt+!SS)tIJNW?|q_s8!HpGsC!ScnZS`y_)&(n2JLKedh{S2Kum^JkOm<8_U=cv{t|qv=#%~ zGppPlq$}B>o8sIvN*a3Hpyibe(`{hdv(YfURj$%n@L#lS7%eqyP;|RRj*qmZ?mffe z?>@E5LVg>47)nAk51af_KqfPimTWKANTN;xX%v8p2M;}PTt+x`!()^9JR2$tERz;9 z-ektx%(!DToNl4g)!x>2$>LTsgZ#*PN2&D+%)_Nu4s}I(hY@MsW}`7;l6U}$*kIhS zeA|+C15}KnT5bp^{JlX)31M2)8rYlCcNF%fXnzSRdYLIb3ak92U){SM5)GKO7q^bA z?aR+u+n%3TyLL}asg%#}IelX6#MZ5Q8e3ZS6dM}$TzL5S!%sZ1hiyZOSzEhj*8|5M zIDdZgp3SphF$)A`(^CHEOiYxmj6ZfB#37YvBp6O3EG=gsJ|=>KykKb3g_T-cXBC17 zKW5@%kai1DV+v~;Jc6+1^RB6ETg0@y6w#q5Wn(S;jT&wZY>%xTz5Et=DJ9sOmkPV- zx;ms(DF7$51I`)S4@Y9&)l94=qc*u@HPWd}YRP692y*d93E!4fHKs>h#oX&ZvzgG|Qz+EaxvZ^iaV^`4*m<@gqX?%Nsc0)Wkqm^N zg(}19+PSH4*L>On+fke{%xaTD^e_RAj}$MJNQnJdXb{^l^3IB>U>^omW>;n(11}^| zOB%JH4meNKBbRrDHU7qZ&+RWQudnXSgf`rF-?6d9i;q2XVdaJW`;RT0w|x0A1YeFl zdE?TJ^XHEpe)PqN${?P^EezQQ zD;mwl7%{Bdjut>8(aG2x!)^0moKOWe=m{i=e@+vAFqZFKOM65z%o0f?L&%e8@`-rm zKt@shNQOX0V*#G(_zLpjbcCwrC-2AFj&_F_gJ=;GPoCa}xb4^Y4;dT7zn=t-^^ZBcs`Fm>RA$SUwn$14~TdG~T8BWvF! z9VSAeQK9MN;k7b#Ad$>}qPN;a&a;d@-f6#oeg*dK(eeJTZMnL8e9K^{XG?Qv)s`&> zpL%lnle>2xyz<1ECoWt#Xl5d;;y$?l=*gqcK6^0D4wW4TD>B&AE6_7-Oa)41%#^K) zuay$`h)OV9o?Dva*6PzURp}Q@J#G@B_+-=~RY+3dJEb=NsJNwqm>(e*$O+d-8~q-` zomjbv@-u$H=!arky~WUvHMq zgpmtW2uedV%t{iLRwX~v6&t)FJnlu*fhG+|Yz zK&#Di#A4iZRJTCRX2O}^!--BN>b%-4dg_@a^IOz@svWsyUaVFY+u?oe=pt~kj%ldI zz}D2&Er?M)3v3Oly{NOZncY!|c%|EWR&Hi*H?A{pglOt5@%S z@vGnc>h?mob$(#5mJJEoo-a?JxPjs6WL@}ugt5V^^H!m zD|%2cm~b#o7bT6}oI0M&i7!eUg_9AntO3<@-N|<;?WshHX?^QYuog-UddgTb6v2ftZfIVvHlx;3FE8+P z)y&9XoVt`jWg`|{Aft9nLoh5g(L5)nwyXeKTfA77h+9Lvs;eb$rxPus;-FZ zg(iu=Sgc^>!(miPQZXwIr89{Gg>a?EiqsIRwMb2v+{y5{1b+>SU?IKeV1i&P^|lw7 zr@S5dTIe10GuSP5x#hQyfBnhb$G0h)-(KHx;P~;DC5bhfw?zVq5Uw{Ep8sOcWdcQ0Sw(%3e?uC1%9<*6$#UU~cNCt9AE1-=UGcss*n z1qu3;r<;5%_G;=6*c8qPNpl5?0z}`bO_S%LSX-KOaNvw=j4vt&zkaY(37jeg-RX{! zm}zQd3JuoJ+qGZg2WNEZ%DMdigeEpz%Xm($wv(}%Fu)|WHflv~bD>K$K1nju$^1RU zMhCt8mSByS<2d6|>?JF==Vj@pq8^bv=00wUDub@YpUpsTXz`N1N3@dBq(7xVT2`(Q z_kQM@j(ZlvDua!?&phL^In z`*XS4Y_=wstMOky!~#&Jrf+~R6v~`jjtDE(T(EJC>E-iFYUdb6Z3qH?iG0 z`P5U9#KQW8!^4pe-hKGp>(?WjS4~VrzW??&-v0KtBQJjSt*?IXdl7_U9Ov1{vt{hv z+2BpXTJVG!D4QCl1U%A+7xP1i0`Y9zR+@CX zf#faaXX?Hv3h^a#SCdpxzVyMFtwLDQ!bl&B6z@K4I;xE=>dG@K#&c z%6`ue(d;e=0Z5imn`ZkMLh?pDmRY9T6QVK%kGFxELR}9H4)QqYYN8u0g+ zXrSXw&Ju=KtI2Tso$ zT)Oo1%^TZpJo3nC%1@_PZd|+8bx*%~<@%KuUO2ray<$Up&6?9E&pmtYt6x1GxhIs% z9XWlZVmW8p$r)fS8_^l{DsVl8WWTZ?_D_tU51tA{#c29X2i^cm@zK*V$JSQ=i>C12 zsEf(u+xR`{z?4pFT;73)Qki_11zBKRu3DA&N5zGg??c&8p50=(C8!}#)R%}=iz7G{ zT|m(axyE>u?m}44bP)+ip*%6ZmDN06iXsCiqljC%~nG9gMm^HoOe9=K_NKm_cCr^0dC{Y73vaFUU#c^i-Rt=A-C`=k4NNbd*Ang;1$Wyd^JJJpsuW|h z!@>D%J_ETy7cDGIPl^;+N2i=M{Csj3=tk5ow$DHvetXfG?;O1S=&pkY&opK0vxUN$ z#J2V=TS}!fH*f5?@#v#xw1GMCt@l7=ITHZy%*M6RwZp?_RxaJJbj_MGPx$aVvtr?r zB}dO3t)OoPwq`)FjKoP#EwJ;!H^Z|BSe&eu_Rp+gRD5$;e`J~`FB{JaTtTmoJ|0hd zD>X6SU5iq7KyaV!tt+A9OvCx>Q1~wuH&5?U(@dw9$bDXmVY6_Iy~ecOtu#}}BJn7r z5e#Oj?n2$2mmka9^4D$myp!%p*^0s5uJ~2SLnvZNe95_!vzGi(=jp|cF^`2GdM!;` zk75V-E0Aq?pSDr(uYorY=;PIF48tA6Z$U*AW)uM=_ANpn5%qeYx!HvbFSzJzc8Lh@ zCf2!5w$69T!yVzl!NB5CGbLTsB@LNT@)!q@3`0uEL$+$u-bKQXQ3dhJf6Jtf?5UZH z*4;Y4L;DDQ`R|1u9v?WcxU{^dx>VYsZmHVR)3amEh7iMBI}C4?w|@POx8M63Q_eds zTt0jG>eU_hA3gfO1D!iMztAP$0bT+h$w=hDrb?QVuCOW4yW{Zv)1P9(q!4|OVCr3iwb z(a0hv`MYYTTCXbZW>rgrLa$1#MFPPxN+~vVy7h5(w~|dPQZQq#`}`3 zPNZQxYoskJM6)xouW^^jyIvX1Vi*bAD+X68-C2+>jF`#{G`)G;lSVtPOz zTR>#jO3)iHWpk|5K*Wy@!Q(kV*Y9OEgZ&A67ylBZ{he%%H9z^c@BT9V(!0;6&wqIR zlN}#E_{qW#hktte-FH8U4#ns6qu}z%U;OE!%vfRK=0k0+jjAR`Z57r8i z1fUM{{7KiQX#x27pkT1_x#>?K8Z1d#J^2**B;Qlh050=8BqPHE6@=f3?#bOKJNI&m zQ|?O>rq1du5*e1=>~)M+D$FY-(tz;0%0z)j;!Mi~{gp^n+^tiq-B>uSwug)CJm265 zrG(E!Ge{;dJEWyiQm0WzOOqP-cm_w)~nt*Xkao;6ivJoSDe-`bN=G>$!`-ho}2uVO)51I6o#|)>4h#UiKA6P z$wp$x92vR0*=0eq(bUp{0A3skKnAoD2^on+bgPK)t`|+)^qkyeW=@@2(?by%+8{MW zs>EB!)hQo@>k;$QRW>CNKdMot#gjyzs>R36C_>W=qlI&6sD@G%7J8|M{IknuFP`aS zZ1WjbjPfHG_2v?2te#hgkO0NPWdm*MK!0F;VZM>=nND;v;H;FK=Tpuqmz-st9$qKn zXGJLP`jZ&4t#klZ;(g53K9BW%l|2T(6+-c5@Z9(6-h6Cp-R8#-+dbFX*jQJ0?v)pI zzVO&%=gdsz+>JM0e&Z`&Ik#~A`en<`ow<1Z;_I)U8yOvaR@<4vL#Y-F_`iSEc;t7$~+1`4wWl|;jWn50Uzwa#B4BX zHQCMjyfZHaSihS$*QQ65L0UF6^zEdU)tq+4N{NaMP0D85ip8oIj8Sr~P3TfcR$Mcy z#d^{-r=8vs0sx30Zp?>;W>Kh8F3B+pemsO|`exz8ej+0nli8kHJ`AJZ3nY z8FI)Onjs-7V#y_!A}OxKUy9uskfD$w^h1gem*i61P4@4YltS=|jF7Kk!k zjlsP&9yD9ag=? zns@0vMyfJ{kLtsYj)EWZ3y8+}hv+}|*fFgCaJ|`yPyVRhp`qCtlEB#5Jm?#cjPG+4W1Mn4 z-Bvz1i%+K|pnJl;QQ$)=@aC1eJDcHgTAg7wd z0WJNHa3>)GNdc%>uzL#wVEq{MwsjILg=BIwe#6C>KiXrGvOpd>=lT$kbZCmoiiHy} zI9kg?W(OiYD2Al_ZS>dLaqxp2Y$WRO)!8n7UXJ?5O+ZhpRr}Ny(y*{PSXI` zYWVK~_ZT!bx{lipEnpR$`F{XaqW>K}Fe zLEjHP`0>qmaHsi|dzbFry!r79cV4=4_wL6>Pd$I?nP)y8Utj-tcx>$BxuKzt;~=Po z!yh+vb$yJ>bRW0$^?m$%Kl#Z|KmHW!<$hmO`y~jcRNH!0Mj|hvrl2PqjBUm7(P+VUB4*Dg;-3m&X6WPBOPjzfO*T@e;MpUGFnteh;54>}1 ztQ>U5z0z3}z4wR!USPHHIF&{8-&O&z{xpSQo!nqV;=sP!`GyDtnle0x?0;uy-h}== zy7(ceS`3X%O--$8lY|Iig;-U%Da1sp0k=XU+7kQeh%(sCFS><3jvMHLC<@2*_4EAj zkgnpeJ>H9C&fD2W5Wz6FlY~a}+W@8HcZCii#qrMf^=P|=(GU1h%6DjbhxM*_M|Vs} zVmUJDC^%0mNf{CSJT^kW2~nC*i1cDkBuTkwvj%C?NTUfn45GoJwa1230R*aPWRt)V za;rfWVvXTO5r-lSIpW}}gDQTcwGoj&3MmXNiFk_IK!H$87>dKFaelshxsMy#(_M_o zdK6ePD*wfV>|CfFMkWY{15R)e-`>(ywiUj`d>mHmyW%m|IJ_i zPrrKh*KUOlJ=h;x36=Ce{L8=8fB!eW`y0RdtNO41_D_EM=Reoq|JrYT?bm)y?`q07 zwY5P&v8XgQ>N6;*fK1%I{osK<6rYYmPjSK;1#{(l`uFMv-Rc-y`%dfrDtNq=uXx4& zn`Fv{l>Pk}?7v+0OSJA@%=KYX@0TM~Do{ivW!pktsw$^ZJBaaQ998Qm&OH-WM5>zj zufo5aHDI9UA!OoR(t8){HHg8>AN3zT{m-m=_pG$03I+pA|KT%qHkd_H`651y56AR) zYg~#0qmMCcDxSpjNVgG$2V+#QvU|~ZLo&s z-hrlGibHpo>D5Fgz0Hrox@FY zCOES{mM!4WCwc_@Tf?2W&}^b64@Z8EyEimBn1&)A^rq2H#(^S0Ck;F-Kn6f>b1KkO zMQkw57Q$R1{(^fC==vno!XSW~AdA7t00iK()JpgAIi!R(@5Q4Q`kyZ=;pe!dW;AVh3^0fExoiM>L(y8IFvVXe4D*~M}pT`4#MUj2)q6Q!<8CpQo7UoMRe z>HR%Dy6)x*-G#nBS7^>Rx3#(Hh6eX3+^%}Y4LXE!p|#5&uBW$C_s`KA!ok_<{K-pr zxxQDU78+-+55*kPx5v*b-=U=*Hw7fdad(a%&$;ByAmvgN8Bg99)p(kTbxj!@B-!Gv zJTyHrVop|N*Y0-p)D%9JISd7`HV+MX3y0^ZkdF&7fdt|sF&aV8y=&H^m^%om|#4gbENSpO9-qM{aOlA3zD!rxsvBM?+N$(^37x>^Gl6!9*iE!{8mL z1K?<(U#tUZ!Dv}BzHxAW#(_T~2Q^Ke-+#S9Xt@cxqhcTz$jA);H+&%)>ht;VrO+~} zn3K3~a67b7>TtSlTsePw^U%JP=Eb?W=H{*`+?kx6?Q(}E!AtKd_V?>u`s4k9DrSn; zabRW=6&=7a=6Ez{b*%{O13vOdE5bEkLT0#;z=UKt?`Qb#W4qNwkJKCC4)E=1tOa9? z6HP-Hfiq{&S{p(t1IuX*Vh6T$Q%-M6PtD+C31@>z;!_r)g2lsNFdIqKkWhcca(|Xh z9v+7uDSek7bO@Q%LzAY zxU#T-Ks7mAnq6KlrblN+Cnk#hLqk$gdbDBuSmoP>bsXOC#T_kBenX6URJ3}eeJFR9 zEyTSY3&Tl-!tTT(+4I_^RXt1jd5)?jVW}WnGN>4ALCWBvL z)5jL11jgxFqm&OE zhnZ%Tg**%uA`ax^SXE0Q&$CUu9P{p;7!X<)OJ)*#vP!JGX9?T4>d=RL*afQW8z-~h zQiYyADEI(}fU0{{qMA!F?}_tH9LO*Wb;$5CXY7!;9R-bwJ_Z!5eF^HXLr}{$L-HzqjI{ap)0Ha&s{10dr<_^`*Q;qvHJ~w8 z8w(d6Yfc^3{0D}DG^6rcK@GhDF3pM18R&i90h0GR*)vpn^~LA!J$>`y_4curwNuBA zjg6Jo4{shmd9u{I@6f)rwNf~fDJ`w8nkBQ!o;7$}m5+I`(a&16%Sf>h+b;NykTP^@ zV=x3mHO7D&um&$**v+U<=6%U=6pyvu7Z>4$KT3ubbzDLHCZW0EY=B`AZbnZEQCDn6 ziHyX=rvDadM$pZX+hl`JW-tR$t11r`Ko@tnE2ycw@^5fH0Vj*aTxVCaiSxARmHKnJ zOlt$zvT-I8$H8P*LnjF2N)B=yXe_OO?pP6GMXJJRsbbh2j%wjvs${`WCEOh&KW)Qp za>{ROm;_)!3>RQ@vQ~H%uaiQiNps-SY^_6voAq>iX>H zV+u*u;!~L-ilg;H>+1&<2Nx!0IJ*zPcLe+%V>N;C<znI`4lRRuxg3hebIVwH zt!Kn-!8hxGCesNYO9ijag*D^Xf&4bMN%<4M3$^;$S3FsD#5p|DPKK^-3&LO zLthXxxVXxjPO8_?oLdn2j!Iz*r@ERGQ934LYH`tP6v$mMu1I1dNhfzz8fM=?WQdK}q^=pgE%_WefF545JUFO(>}j7gM>WdnQtGBy3z3R%k2H3=-=) z`1`pb2tYz%p|(M%x(9kD5y{2QGu9Gpn3*M3{QvL@ABx1DQiYAGhZNyYh0cLzOSb|k z4zn9Iz3TpVb8nVj&AnK9K6mfdwNfgV+kg4Og;Ht%nG=^zoIk&R{OIYU$B*xa!TJ4< ztWjCXGgMRbunsRkG-$~OZ8&gcWZPP=^(Sm_UCipn#tUur((U717oEIU&hB(w#N}_G zcY~N<6su&ADL#$c%+P(bARK`SlxQ_YRR^wwg94h%JtyKNP)Bc$lT!;UqMQ+StBNHZN2i{DTaG?(Y@u&S))R@iY(-ukK zRw7+pD?GDI9s0~TgkvRQ-iv>t+0qDtbgr`n^Lr4cnq9u7F`qxv&lg{75rl^3o~B%D#1J}- zh?yX8z{cSz$vG-%T>GHJ>gQTFFF`?>++2=hjvoVMmG)kvSijaWt+ykddu!iYF`;^@(lk-3cn z#}6DiGS{=`AcFeb!t!!%t~#jueU1O6wy`OjA90<~aB^bi>15#YkS32s<2yqT#hvS9I)WlfTbP>6XQHkxo4n3^cs{(P=D=tulUC7E5(Pi&lT^^ zUN1f~d-3eq+1cXB%?q1n&J<%^UB!_@Ck`DwTEr51asT>y5$ng5lMB^eUFGXF5uI#L zeqJ^#RyO<>JKVnavX?0u5Y*`ed=X{;u`% z+F!xy+ufewx8&{K;G*VQ0yYP#b`PkC8)nI!-b$jr|39vq-n}wsqcZsaC)fgp%o>M| zhg}#o3QiiUENHDV2_PY3`0Wi8S$K41@r9WrB{WR$_qPRL>(i0Di^5it6;B zmP-g=3=nuPuM9ex)N4!Tl+HKWi8zpw*er+!#e^mg9L05LRgrRf^ypI_YCo0sfD%RF z)1#_^+jF&`eF_WjB9<+SQxlm)ETRR4TY#37cviT{5+TOm0fZAgZ^^Y?nEs8jvl|;&re<6)6MrRV{5#1A;U!y1W%G#v1+siv$pqxFGb*f%`j%s1!+Z+ z03D-9M=vG-fzP(_3jbYRCo8y&nLPQRlV4D7xp|Dj?5;KKBL(mzp(mjR6+=+?+POb<}8~B z)jLp0mbGhgcm09psbLyBTaB6B`vPo!Mw9jaf zw%KN(eKMWU#LK3dxU(<0fiA0Q470Sbfvc!uHUKu?svXqKC!&5W28mFVVo20D$YfpA9j2T_mQwib|C!z@H-1{48OAQaQL}}r-tt@bPf-PS-=i^ zkvi-}Y7n4Z$+p9Y)X^}Gu9lnZTEkWxb_eQA7Du+O+z3U%jsBWUOmj@MOq5^8#_4`= zAP`3+c5KqrkJ3-z%2gSA%qz+LD$TR|2b{|%<-8b+p!-tt!aBbwxE#*yM!@*yyIgFx zXc$a`0|VKhY-}a0#WQSKh6*;EPfB|;I!sqlu=&Bdru7D_N!59PUAv4lCWt?^a5q%y zF)Y*OQ?K?4WA{u2|0Q7{qCdH*ikljj%tW)02Ki$S$KN$+CXM^MQfeJcpO#SqT0rNm z>BhVcoI%?N*$~PP>NY$Fg0{7)ek_baYcHm#LDfdc_DfKW#4J4V#w!n>yLtyz7B9;-mZh8>MqFuq1U zCc{%VUgOh&!+V+>pRFGEEd3)HQuOn4K*W@Itj!U!W-2GN$KoiV?Tipd%rzPccm=W8 zew=1adN?<$&XOq)4h783@RguCgR|og7S|j6`9vJ&hOmvmLji{7=if?3Y_ex_gr5_C6Pd_t!D}C+Um0>fTo;`l#$nfy& z!TrYojLu?o*4{qby}AxV&z6>!WeXoi6d^POi;cGsg1}Lo>A7xZg zs>lnpGO&x?^C;;*kKNzdtJ#Z&me|sreohxP!bw4t%i3I=Ti~G_hz&R+TAph_DLK&) zlT;*XLQ1V3RN_>PSDd;$kD@AzgS~@!)E}YjnCdPd}``S@#a)(u^4CQY5dsXvlwo~u@4aUz*AaV568n*CJv%_jZ4=J=oHb35r)2s z?TE0MBD=BZ5#6`LYrBSW;$}Y5(A%rBZ79pvn{aVQ7oZDhDQ3PC^>vm9VMsF}_QlR? zLX0&L+Z)m1$lln}oiaIK9BzstIKgQ+Z8ziC)pZoMk-ikHj5U3B?ooDore zX4<;6qFC4e*wm$USH_NnC|v+xo=I6Pcp`twVGBr?rh}SW9KH7p6nBm=B=s&(HRSWBPv6@tY~0&dSiUz`7`-=G zxNzrA;{N&biEH=nB|v5?6cX6r1N%G?Zi--!C6VI!ONmQ6Z67>=GTcUPzrF3E=uR0t zxt&IaP>y(y1W!@FmP{rM6RXkB^_AY8xG{e7RP`Bh`E&ZK7WBgXhce4L9) z>X_`vN!h!u`VeQD9UEdx){*paT@uXVwG2+Hf;pf;sYHd;qpX|gmYE13 zzkXwIMQm@T3cx#nJs0j?Y2wbRMk7dTID}v4=X`3@fP$7E8i~V60ZUjj`B{n%i}Hd~mEfEN`p1gRuMyT@Pak&vb_L=zM?F1)(FJ&BekEtql{<2WcFP z4)$j`IjdQb8IM3f=vb~_(#S_^=90Ao=Xwd4Md$yEbx;B};%AV9z3WX!{K@1?A!Ojw z5ANQ+aphv~iTL?mXnbMwy|;IqOQpuWwc~Nr?&IyHJxIReI0ZN^hnt$B<3Y(?_Q$|M zt70_s&@wjSQ9WUEIAMXn4(5#XiD4i<>`l43uBksK2Fk+okJUbT^PFa{DxDZ)S+?$6 z0{F2{9)RdV*an*5h_dS?UqZXlW+hoXCbXLsTa5KqZRH(g5Fj9cre2wwE9ub@9N~T$ zX;_(&%&>JuK!rvu#USlse9}4qbQ`RyTGVq#+6}5_0zA+Ohzg;e3Q*7gfO!T*-ez!e z1HG8Th`)qvzd*P)q1u-(96wiVaNIGRoGli|_ADJ-+P{Ac!FMb-zdFCTI2Li7vB{Yk zd(5u#->R~z`ddHdmb+vW%D}J7Vbzt0W)2J_2%hzg`T70!7LK2B)}l;@NLIP7&eam% zg!MrD5krFtBPyaUPV3B7U7RYeCJ^`)l#gcu#oksi2d2e-kF%C>oc(BOb8|%<{1+03mY;HBAxXm}zDsSK1ZMFOmdM`sr+1k^GrjY*>|xU{v3T`4|| z)j6D-ZhrZ?oZ4_@aPc*#07A$y9Myyn1gEXPnEp#%NkcnqIw6F$Na`R~YYV-YLSVL7 zYsRHA0R$&F;}K0y@iFM{YEb;8;UZ%VkT?EkHeIZ(f&{DHqhDJw(L;{yyACR zOr-+mKp4|Sq7P)2GgaPLolJLkM}NwQ3WyvMcq5775XHwQ_z-2F;+pxwZqE5cMtww5 zeeRlO9pt!f8GAip-N{6u_#z3t;-t`=LI`V4(Sjos2Ibxe@McC3M_R>FZ6Zx+H6yj7 z+ez9%TE)!C?{1x4psdLEG$)qSEva>c01=SMTjw{sgvKM&!n^@VI#5w9HS596UifWU zhWdHq7$y(sdTPN7;`=ueRU!RzA}uz0qNUpOb!C2=yeakM+gm<2*CFh7<+7-#0Mp?I-Xcob8+xiP(%N47gv$kj+4 z?DEDKHCGCu`NG>RHb?uTbev2bkgyCewM zdfepz&?r0hwj3Lvmw%2`F{jVwGmFhicm*OyO1=xaYWoskhs)SV%MBlD5eloq8LVqm z#cB+ka(yzJHP(8$NAr4Av+Jqi|0ndiwLVUr?u*zDL$$mNVYQcOmVD)+M-D1_9$s7@ zJT$nuS?uC+oNX83-*QoYgtg1|4sa`PBY@l*Vc8eDho6`8EE-v=n1k&?MDyJU1W(x6 zR`>%5)aA&X|6^#6$zcA(%p6#-R6BFnsgoP|X0DZ#R$4jtsN@inhniZ{%8C#NVx?ro zcE~*??e3J8oWcjqk%OidlmVdA0brH%LCL@9#LnN>q7a#m@aB6-$4+1)R@Pm)y+J6> z{a8tT%@R9exNGWEth^An*eAPG)VM@uj0xqU+AF9VL~(3s4~`cd9CK|u zlL^Xdl+^NA9VdrDD}@<-TOH4tt!cVM3U;2{4XjP>%xuoC-P8}_pKkn6FNpuom@W+n z140q7mD~-o9X2{n_RHq8Q1PzJ4zXKBT~V1B;?Egi%Eu+?{i_MFeSWUM_a1@PU1WYB ztBF&p9Zx9wMGukmM!{{15W8#ZM=2KHj!XFqTyN=+$Ypcoe1cC&|Uh@f{>u6xK8X;FRx%$YRd zcWy?!L^lIzbadm&nM;G-LPT3b!}QwTqqt2p9cyh379(hJg|;K4>Dv9TS`YOj^)_dP z#R zuq=!^-Ds!N70Y@>RmHNtRcpUg1!LHk@Ln$(`y26aYBFvCzY#1d*SGIDIDMbXkMn=p z*oZX8I^<=vFPyp3pf|2GEJ?PB&KUT{1mox+vl71H^R;?h-JQV4T-mz*&>(PJm(MV6 zCP1pbzLEI`ad5zvn$Cb3Xo}|&qH}8ie~sa{I2#h7zP}dc074SPu@kJ?-CsfIz!^ed zRW$jh84>B%3__#M+j+SVy6m&9zexPNK7Q}JtU}(JNSNEzi6{q;1qK#tw$MNS z5cqd!Dx_OuZCaFY$Z>WuFd>;%^nhUrZ8l+v;c#L^Q?y3Nyd~Kfm?yKt-J%WDHsSOq z)l-4hAK}wMJ@w7*m?joAXOw`+Q9&u`fO_K*YzM}pA})lYy3-J>M<4K!M%aJeC2|&u zDpg2NvZCtKc1?s-de(1bJMXn9mxqsFMwqc?JbD&@u3SUIj0bjM=Y3}1`XP)P0;EgS zT|sYZ+5vXedU0*QX0O2Sq}UrsVmwHO_nt!KL3nYSMmi|BM(cC!pENLLCu7AH8`l+Qw@N{+e0dxC;p4XLvapSn;n<1$$?`rWCi()|1-C8I#r6l?OTlwOBy zVB08KVFI9Qg7#t=@Zy~$=o`>Ah=ORO;D444b!sfb0|D_io<6}|Z)4pY{0iaE=e>YE zc&7bQ!(ehxQ@!0p3*#(G!EMuRHRaZhKn>GTbSB$+@Fk%i)hduk#u)w~K+~T&{b3Uj zLj6$PO6&7G@b7Z54gsfj;Jg=fXFx_n2?6GYq%Mk2-Oyv#44k=DV;KfxPSTblpG+ZE zXMt}qqbBs!BtD*?3*x#D6!XI9VS+JZz*^2bw;)au6JxQH@Z&$@WwPr8CeEtVHH+=* zwsFaTS!;o<$HUP^Nc8Wa+t5(1$EALcP>wzJI}F*n{>*Hm&pFDN)OMz?&)z(F=H!J7 z_6TEA+h9?*+wCZywZ_$xB=1W7E)y%34By$N3;k9@VknQ)c_r0Uj8dyZt27-zS=xKUErHmk{dCb?pX|L z4(~P_hzVK>T1m=?a0|c|tWNujo;M2}!ybI?Xgf*tM8?9NgbUrF7zngJ{9(Fi3=GDh zrz=b3%}vleI?gs@u7G2Cn=z^1#~tpQrJ=8le`(Kq<8SSGZTzJ@8Pz>p93MY?>)N$F zdk&w!boJ8Bn}_F4Z=F7O?l8_D90r^E-r;*y#;Xt43B zcz6^>X^K~XhZC7254@7`@o~|qQc)4UF%2h)b;EuQ1r)>2p+b9UxRt%h~^yP z`7Tg?G%MA_(Sl^Elg}qCo>K<-{s`z@9k_TR$C_{z2fbJH0B&@7=>b6l3&`n2CFv)e zAn7kuRxh@(3IZ(r!y!i(8{>L3hMVExj$|{=6ss{8$AXiMt<9?g{LEFMyTwhkUIjRY zgK@Yi>ZOd)778A1DJOl2Is6!rihSyVtssZ{g9Kl}ub zfNkS4iqN=M)s0kFbzWG?{{v@k00DRQDfZQkeo(bJjNmv~k(-5>wTPpfSyj8 z;7|$&knT-dojVHw@b7D6CNj{vr5)(s`(ai|J95jfCS}bOe)cm+_9n8eY3SS=de$Au zan0+4SfnjSfb=?ab=yb0D$h2mTk}fi#>WU~u`1JPGX|1@=2dzB4%^UwgU+qBE=TBf zVtJK0LItI5wee(n)#C|8ao0pqwy76@C{zlE5(&K&Y*~0&pb`MKg#$kZkgkIL~wf^u2FaUvI@;wf;1 z;q6>+2X1^;S=&_k!Z7-Da%8*O+B?Qu0jwqqjHwT6)BTLU!=-P+VI*|z4mP8o!ffk# zc4_fVTp{{)=vSeD_{GxVzNKpeKl#zGeD|9ly!X|!ufP2A*|XPFC)GES>g>Gs!n3bE z`_fC-B2!$_MzwM6=$!|5?%%(*R$2|uuHrn}&D*zou9bD>$?h<1bq3h=*Hv!-sep1p z5Uxoyo*n|uc(W#*MR_VA+58(vg3E|H@r+1D+$THWJH!d^^Y|_-htFR={3aGH2f27N z7d^%4;5A?(ij+(@&p5h!6_-Z29?_2A(!1fX@d?sE3 z|AZL}X?6`kEn`14GHzp+=Q&iGuV4@R!_Y_2*+gCO!|v~&_)hmXPJFHVOK-lva$EW%&iO|!{-Q8O+J$P{9#MU$SpTGa&i(3b8-MjVl(_2@rU+>@QugV)c0tw!lmor!s ziEtA9iq#b!Whr2SvM0d+eX1G~ZiOn2`l7&+#(1GzT7Uyp^?m)I^ZB3A2Z9=*dtwqI zg^O07$H6HPz`fQ0A~~3ZiqUKF(H6eL3OC8@Qn{(jX7P{HR-V3vO#&|-`5lT&0E2{! zu@K`c*BWKqa0k~SK#=a(GLF7r1}HgB*me!^c-s*`6RE`}fJj`l$!?${vZi9&LOT9? z3KaK92`qBbf%t}q@607E7$9VgHsJ`Klv~2$K*tCg7aH2u5FEXJH4sRuM{v|b38;1a zABb2L7IHthaI2W#o<-&HA?^KLesJpO!M#hfc~IVfn|plY2Yh1$qAL$lq0j^93_rMb z>(gdT5NCU#DM6>wFDAzbq1eeUuKFp(CI8$3 z?z!4)+HcUi!+YKC-gB$94c)v!^#2nk}E8bg^;H$b5y z$#m>EMKEE6_9iH?81ViDR*)joh&K@Q$Ra>SA&xfCIha(%M#YsZT5!a9Qpd4uL1T(L zq|@>V?l0~ErX0-cgRKJ~%EIECY_0#&&51K7PE1TJZX7+1@%&<5%b~_2b>F!EwZ z?7}l#1c@%YSi@gNYG0F`}64wDp;f~`2 zAY;`i7e^9_oI!dHv|kd?Gk(+()x=iK>CvNI!-~Lb(S_6{M@sD(Y~@F1FqIcF5Cf#j z#Kp2$q#2#4&_3+ZU27radF=NhXGE|GYSX4SWE?CUk&FHz6GVZt=xU>uXz~9k%+tw`cO*EL6 zj7{*=TUpGNX3#~X%e83RG6H++xXf_Kno_i?@z_Q9&VX8r*HfmT+0j#XKM)l{`y2UJ zCLiXXo4lK+CBd$I-Y3{Kc6J7Kukh=Z?2zlGm(sq`cWFC(i?dRpx`(k%oqm^?m!gyGJkw9$8q~yRx=6(mK05TPlsjbZ`Ym#;2y_k!luBy|`X$ zbmr{vd9S}0kq;Dq8#TyY`D`Z>sdmL7XgG+50ZTfsCzDjsDd)@RKq(c87}I zjixaB%fgj8YsG>thtar#kK5R?Mf~)LlNh+Vsf47Gg&A?ux9}5q?MKS6rAY(u(bu9% z7CV67S8&~7sx*VYu7PL;&O0@7!2Onx6k5js7l89#yZY(D1&^w|DJPRQDKRFUUC?1v z-ySl&C*37lp}NBY)M8IKEPx4VM8wPp3ziG$vd#|siHH#a+_d11jr(8Nr~vz#$I z_;<7G=Ost}T1ukDzOdbWMUO&nXSGSk^(kIR_v7qFi(_P=Xw?{wiMnC+S%Qm8ZSl;K zXdM15J!0sr@o^(j~Z=viK34M(rENQ~=j=B0?k z4dHlKG-`8c1B8Q0T-Z7x={p409v{BTtoXk{H%1p;4l`|2 z;(1(0FGjn-AJ8`Nn$Z#Y@)wBfar@cDt6N)(i$-R+e;8=vsdE?4UAbaR9y@#N|b@T{46?0 zZTV_K6$g#juww8lD_h>Q#~T%+FlPh-jY}ZvJ3B$*M@4;)T}%3?^*4rL$;;k2VC-V% z`dB=h^=1LBRuj(K1has!+OC>rutAKGK&q5_Vh@M)yuVo@V7Z)(RbxW05id900DGAS z*SG5DFUvnniBdR&oSxS0(S&9XH0sV(wA}N!daU#}sByv3+C&npM#?wF0#`->$BJ?f ze{;v;toJS#<=cjRfg}Hc#>LGkTNS7D=%nT>6On6KP$nU6TqxnX7)jwyWLSPDOLq)v z8Vp?vtvx=yvuOU0$nU?vG@x;p9Vg87^5vF0dM3QYq4DxsZ(OI{*@AU1VUoOyR8Msc zULD50Dx5rzOm4U20Cc3rBoY6p@piJLiD!ps+4UJA1H`kJ`je#7| z^IWdE=P6uii>x3t#Kh>r9ZqFEH&7OIUwg>l!!+&lPoI=GU~0kCx@z+jr~gk@(Fy3i zj-luBa`#idChiBJ=SvfZ!e1Ty;_ADDZ?3*N_~L4Qa4>xH>ebcNFqg}P&uv}Vx^W|% z35CM5r!Jm4dp0a5lVM2Y-VNWavU^pa-u7)dVEZ0U?;x;0vNjpo-%1_ARw@g_f$9BQ z=c1?3H11_=i2_5_>j?6A9zXqzQ5=uryV*<%2cU;>@7`^QN4ZHHi-f>6Hj%TuJ*eSq z4TQ`^V=+nV$9A+YqWVMrah)mE<1V$RBD!OQlW+=gJvok#`Cx>DMRaofDq@g}B2tLF zP%NH7t*jZ+bw|V*Ga-65s>=#MxR|I;SRCJ&NF;geOuPUTs2wtFtgM?(27!Psc(9Pa zvn^*68&nn~v1tTzL7;EM&&GDEhrUszZvl;|&)@~uuQ3)1D7;sSbDbR?i}%>6v!^az z+?%mGIsy_eU{`r>bxU5Z;VOWu7vU={8|%iYfX536>aj{iM~5Ftd2fuVVkd)ZMTPnd z&L>1$+17Gh(Y9CwqO;z$9mMK{Rt17ZeA!x7W=;Z~R)6xwaW zI|jg&%9byafVL0seyMR;SBiWjr{A=b`~VJb;2iCg=DcC!vMT<_5n8h zpUBc|rES^L_)dVXJeqjT-hNq!nH}P}HHvM}-@|bo|M~<`DbN$BUQ3MBO7K;gyXspHcP}^V)T?`L>?QT8u|E<3;{Pr_ z{u!FNZMFIjQ<5sr8um)FW>2+iP6=qb0$?>7?-dQGBBNt7(XrvO8|WOYRnMuo_)#A1 zS6X$C>_;w5SCUYc11-gxBdM6ev}q7`dNpTIb2?*E&zlVyKDUzeW@IJE(~})>P_qqC zDynak?)7gIfT`;VAI+%J$jl3BExHY_jYv+XCjf|((<0=0|$l^>GW{R%o5HM4C62lo%q&g7p&&Y#HBoQs9{-Kf`}A2|PCIdgtRceV&+u@^Mw!mMO(&R>aGByt^?lTRanfV#VmF-J6}^{8x!zn%qCw_nx6v$G=x(Q%e7&m+-a)3h^&{QN10onT}Tsz!H! zo1xeYF!2UsifLJ2KD{;2+SD|4bYo*+U@8ICw3ewo2M$8YdaAIr zA0;<7?<5#;3Q*}(jcP=lxmP(amm4X#Cqqb+3>o$BL^3W#U`5Zo3=FU9p-&2xy@754+`-Ihow+ z%Hx=2#T2<$kB+OFd{CFt@e3;}7sx+#2^Z&BoCWQseGJ1b6xy}vwNhvY`%h5#W8~Yi zOrF0VLv|IwvYKW0%e>n#7uaQ(7b((8bQI?5*2xQfAmmRRUSIF)n^@Vm1}TsUEImzh zEbN7J?Zoul+(bhvky=vfgR&|5w&Dr&+<|DM&*jiFBH zoYrT}Vmf{JYyBWo_k&E`|I(g&{SWuF_cvW-%-Q}+=Wm|BdbQtU&Gv^!NBcpU1+fLe zmNiM_gq3{h7f)WnwEc6rJ4O+_9qaP4XBCQC{uZSaaIxJ)w?0D@W{WRGZt&RDKS-kV z9l-Lb>1NwwTw|gk$G4?$-3hwkajpe|W*BiL+zAI-N)e?smgYe<(JtZ=s>{53jMdRz zlx71E#)L|YCG-TCP=5bhVM2LAm_hseiO$)&YKI#d+Esy9u>TtuGOf^9bNKAYdr(XR zc%|v>h9yHI9jE6%01lr{=^ldOt~-G$hL!pbd!K)+0{C@K~)7UEvlwT zJA{;*vUO0>x52ZcJ5Xz1WczTyNc)=BQYWKp3@Tkacj^l2=`{}{T?06(tSMDlxLiv6 zzU@5-iq+oVte;}ard5S>73~C)F?cChpg~{dCdY@-PxbM%vHV}k@jpy}C4w{0pvqc; z=}ZYRiMY{`CfbhTT19)Dq=hlvi{?yKQj37f;xf%hh8P_ViivDSA|V(!T`@g2gpVm! zQA0AZqJ135V|sF^LgW{?Q=3&HUzA(!Ky)UD8$ud1X=GXJo^{buHHRT|+%vD|&72-C zEHv|iG>%4F*2QH=@Trn}2qV|FNkn{_bJk3^E7xas6U{X70{%Ulj-{|;GlhFm7r}wM zg=+=(aj)Pl+$;D-==(J3ls@{_hhKUBotNJ_JooJM*66c?ThHCSd-(8~8@KP=e)icj zd#^kN&fA&uTU%!^**=r*>uWi)T^aS!fx>?j6eaxLni!MlqL8t{T48!Y>^Iz?y%LlD z&%HIA(R=}I7crS=`J(?dLmir3=EuaTOy`Tn%dmg?L@POwX2n5)nVhSiCK(R4I=x;zE<14g_o zkDQ{uTl^!;M}ObKU4#f!qn2&DTaYD6aWq`B z4XbLj3Af{rSp1EgjX%gk6@BZ*IG4{aoIZYhe0-rX6k0fV{a@eV43@r+=kToh)%iQ zUjow+cD2D};dLsqwsqLdg&V-wGwz=cKJvo$$Py_^{Sgt2((t!lX_ z$Z(Yys7fN*71QEF_?Ribi(Lzf`LVIHU4|;=L4nd7+%*tZB|MfXOLP;Wy?W21;WJ>4 zmM!@_)&1KoUpq~&M{-2Qpqhd#-vZRV9{%zLnyV=R`f_J(peNsYu?Bx}#Dpja0Rp4j zHtkSn_Eu|*?FdxRf0%F`kfh8IA=WuHjecn)(Vo9yJpAeY! zuo$+bNB=G&O|Y*&=VkDyq)ME#mV+M&E{Z zTA=qxRYL;Xww=fs`^%c?bYt)V?wtUGV|wW~E?gUh^wIpu&CSu#`AkR0{GqiII0iZo zjAp*LcLPVP=5c8-F<*sZ9QpiqoKhnFO zXxHj$3%JFJA<@zeV{D&pUlsB=itO|d7tZeMzXdXq!&-Uxw!#!Vt7hqbeJ}?-GO%2C zRZADdRPpqTtMG>C@Vro$5`lt%9}7H4kG&##LhN6e!zjK@qV+wN2)w>?%>Q!T(1)G9 zy~e;TeC&xv^iIiAlHnc(!rcNb7+hAIAtr7!mNU&}TtgOAj?eL?NfeA$KBGctU3?!$ zM-`se0gHzO1TSsuD{xmU9$; zVb2RYo}3wmpmLif;iQ$`qvD2S-!)9;umaA*bp_cVuD+&Qf`q**UDr@jMsVv{H~uXO z6CPsDii*=GZL*2bC77Di4y{D9GtsCBS_85PWWtqZrVmP&3P0I)yX>;BpbuoAg>Kf} ztemy+50<6PP}r2^;Jgjcfw@%Nanv~ooUswyc7La}o2nc@FQKYFOh_aXN*|uD2dDsZ za!BBi)FcYW!Y*!~rw1iIVr~w8j*kxb@5YPre#iJ%x@|-;H@A`z3ix+5bIuwdH+Pbz z!QBxxJIZ!s;PjFyBr?EzvLfxsq^zJRm_}#F6z9SY$5yX-I#b7bLoCT)TLQNX-n=J0 zd_jEmL#g3eSMH@{`(AKfU$Y~)cZ3e%VZTR;@TiV$ORB+VXEAJJZD2JlOGzDfd3@P? z)Py@Q9}}DQUKi+~nwx@#(OICeK^O2^=)KU_um=O2fOPUt#%O~*4Phk1Fc!KVhMd9JBO55S-ftAZOn`dPB{CLjf z^JE4p)5r(QbgCp78BXenDip{)!Ikkn6X#JL0Tzt2b%;k={xOPkztoOlixMTU5au@J zsAQ=lv@-w>g`rGnPP1+{;=;O~ZW-f;GLQ+R{i$}0t;|dHM))}plItcD{Pu( z8wfNlTBJ`<^0L}p6y#L%Q4h$cG@(ij`vL#vhrp`Dlc~)UPgDmIazJ?^4Fq@*8s6T9 zKJ88gF9sbz=+w7LA8vf5^!~;>r8hQSEWNfdS}L8o|I9NR8>g<_divJAd#7?kL#LF+ zM#DI@dg zXywdS#1oryIa7y7r`d!Z7rK&X7h~M8tVHqfWKJI@(dCy0@2WPMRXsYm(IgZ$Iwgb8%;rp#l4mWP`7p#D6I#cpBs)&yt)}8h zTv&|#+-KECMM;txFyRlkj(IPrc8`K84GE>}Zm%gD-@E| z#}d6oDDbcI_@}+!Pl)wj$rCmdL9(gyPQH_ng!T@81|vE{X={&ZJl1f{^SXlffU!Op z9q2BzQKh{JAteGv#&KD*ah95bjE-rb&-w7__T?ZmTL+n>AX9aa>lb?D#MD?+D3nrQ zW+&(JjfQ1}bv^ncF5{SKLFe2*$Y|1X4rp0NS~HC>s)*I-9|{^xm}a9;+rq&$=w;@H zW$4QL!p3E)-VCUEV5dIfoD1Dk^j^qL4OF_3i+r>yzVikt++KTnhKZhvM^Bu_Eo8A^ zwxhieJpu;Zl!1&4=HqAILyFTK60ooiL}es-Ayf5yp#UxToL z@Rz~GOK~YBqgf+4-JVZ%M#Ie-2hEKhzB}b2-ArW^OV9vJ=}0z)1ZEFMXT z&c;ZS&{cxIlN;lbBQmGCs6git7-+!?ix=&~qUxoVYEXI>;JEPG_!gk6ZK@j-l`m>>g3K)2?>#1Ud;JP|tcbSO2_8rH67 z#dHK~Z|bOGEhmIVt=RCrR;<2>Z<*M?9{#iUc;jVA1sD;pZb+|t+Ze3WtgRaeIb_DI z7xw{Q0y#88Nz@I0%j$+!sG?4R+qH%M;RPUuUkH5}tn6=wzDsyB-~RfG&pmVc_}b{( z{Z8ZCE$!d_`q$Ui+Q0bK55M}YZ?(U>^#0OUzS2JT_S@~Eh!Uo7$^{%_jAQ%Caz3=f5czc_9HtsX{17^Yn4-`(twNeMV#Cr6TOEzA z4H_f&@$pxhqbMrQ7_?hLa>zA>c!!|n3`s);GPw}bBkO2Iq%hx!jv^uoVO>rGqmpeQ zj@qHk#5%92b<^GTf$JO=vk_FnxC=x_LuAE>(dsR!x9MnXA~<7VUNJZx| zFJHWVePib2g_CE_Y*?Yt#*t&kx;Lt6pLJe{S0S*^^g@CcLwGW}j^r4_BFbBq^dp88 zAU@CoszDUdn0(fBP>VmsMM%al1S6;-@%4K+Uyo}oBSU@Q)rq}Wx{RBtf)j3uIZ?CM z!<{T%H-&uMif9QTnu5r!&885hhdSa&BW>KatC+HtYscweXlV+unp2&~`8Z?o>wLtu zWQxJf>ESP{~{`qA}_D~{(tvl1d7|yaSO-QBYlQs8A}5Ld(d+Fh%+7N#C_!E2~Yc{ zmTgppN@C&;2{>%@g4B!{hWi{itd4h3nN)uQB=P_(ew)oFUqU2!3z6VEp&y2Ri?m>_ zujGH@$3MWR@(W)(_r@!)oIAI&9_@>^wyr$)@a2cEzrHd8mWpk!OiL5eo;@p@cVD>s z?6WJ290;$G73g+!uT%#IKW99_m#Xr?+vo6zfs8@MA_9eXb_K*fT5^xaZBTRjfoh3 z5?kd;V7%zKQji78p(%Yye40QB%C+q0vphE&F)SB1t8gV09Y+MvC+UVMX_*#$p&RCR zq)*Us{6$K``2>I&aUIV{SM-Qx%V7;0JzR287u3wue2QjzsWr(KIsk4U#u!$00XmNYv>q#>YQvv+Go(HA*M5W<0`?t5m@90$ z`3C0VxaVF7?R&55t^U`#Uh03)b^qqw{(-KpeZ~I%eV5LkpP%1{K(p`o>2s&Iw)PpR z)V{GJr;va4;ZkhFzB+wKb&RRxAU_WUS%^I}uTu@i9&s!pjs>!VAg6891E82g=z0AP z^^r3WG`BvEj&O!w)Fr-s(UoQ*4yIXcdOr?QVJ*O(PjIvXJ_E@hoW;UlHzGRNGPH;= zZgL8Cic+pel+cx=)m>3~C~uo=JF}93ZV>Ht{TpaWHfvE?(Nk(HiT=UloaO&9df1{J z@MT+$+2@*@JKEa5M0|5x{Z0|i)x3=P8Yom+TyyF%sH%Fq~)GRmxHHEZ%OBhlVm$VTMy6_IP~d-EL=nn$EPX?lbsrTeGf;G{J|h zIj$9eMZdtrqaX>rj2p5IN!4yMHM@)3VgLo=1;ekXaY0K9KBT0P7Uhm;VTOJ2xynfv z(vT9wqf=84Z4;#<`rQAmb$KB#bWID&6#7xDm4d#Eg`@+qzYtU=KgS9W%)J#JfG1P; zseK7mDJYsy@KVclN45SW)uWysS$#EHaF_RJ`9O{~(%!ByHChdXAtNYbEi+ye!9vZ0 z0>tuXB;JO31~;VVv6Hlg>xMT&PlNCLDmIG0ip~|N)Yvya`0^Lte*M9#Ypu^@t>ju1 z+vdmbJoVJt+VRWRZ(V=pnd3_ru3flv={PoMj$<)t>iASu6sR(IV0Ze;9s&C%@PA~1 zawl2dIuD2rmEVF!Et(cTS(JMfHZ=J!l@fjk2`5@PF?w$5_7y|JOvJQOyqU=tbextI zL`)j-6jUr7Ba}CG#Q0{nVUX)f+k9SzrgShPVLF8@I@FFxrYf|EKv*J(4gs<9m$r@* zwyNQPDvdxCjm8A4Q;eEWn~Eq=v$fkzyubu zo5TX!+tW!GnWc9rN>pH?Q8kdi(ZZ)O80}wr*@)xiZ)mwwtlNGI-|v z`9UP33IjKY5W$0~#Ec+w_&;F}h+Y%Y2vreYBnYZefAkHCwO5zoo8d7wZe!Ie{$c8G zTp%Naaqb>Uo|H|$dr|S5t{92*Y1Txv%fg#56*EUim!Kz*6xvJ`6=<*AcU-rZ)gs#7 za8x7SU0fD$_9H^nNi8O87FHk7^`O&*LP^S{iUU(v9Cow1;#zzdAD-edU8;A`Gg-JH zR*o`(QsG~tdqRNemjyM^pGW{&m2HP_>lBp6r=bi6hSh+}0qhKildZU!jbY$Lo&n&V zs70^?i5c7W9Scf1yJBVD&J(?&|HyR30ASX=1BO?0Q(t|XA)#&8x}I*!b$6$ldYjtX zRv93^>H*@baX|=$Ry{m?Rk1{@Kd%B0FRboH7xN9s_#)6n<+CzaJM3#!CFVG2tByTS46Q zKvQ}Me4$=2sVrsq!K6}z2DJyh18)+d*5zn_z_^xcUk*6hA_&_aK|4O=3~Ab$r)9C0 z=}q(e0_EW(~r6UzD^c z6wI*J0V%plRl>HeDq3_EX^U-dBEcuaYzbTXAAq|cc^L8U3^{6Y45KGO!M#_bRX4dL z8W6n0Zq0e6n!sN!O9X3sqN%=p!Ol-9An5=Pu~Y$PDh$O1ATo&8sv; zvCB&5antlw&bijs;Bd2lu^EItcEctTi|I3g6n4;k)G0`*FYzmjs%n&sxYMrNOkLmO zKR*odTZxjn#xU=LCTAR+GrZwv0==MM5$Fxy#w3)P7f>>-Y+-W(lTZ)ytY%pI;6t#b z5tNi)I&feTE9v6z#4vD|+rO*->}OemJ6A1elS;;sE=I1AmJE`fgK>4fa|F1@cF>{1 zuHUVAWV@CB%q}=DL2d9#c^l&;Hud;U=*NUPI2V2}{n4>+O@DaoE7R{Edwu%7V}lQ$ zd+yk=3%Bn+d-sJGE;Pw)ID>m(?Z%xOPd#DnF}*d80_J{6;}?vL)AEn z83<$C)h2z0G_cMRbtIS+6zeY^~YtsSHc#A=MMnpzSWI z8-9uIwKp^tI^s`Bh^h4)^sV0ka*j(X#dUTtjBqiyST5`rHO%3*90jn=z_{d3g7Y^L~UanEIhsA6hXLMw-1wHB@pBFHG zP}(^c@-Of|7{;R8p|d+XBi63pEH! z^qY?dwrWa<@@UN~BL2wkMs*n0ES$NFYET32i3XwT;4)~QNg^36U;UNs_*X*S&zryEl5I}&5+xP zHCSQI2+LMGDp_oi7(xsUXlD<8|N;6I^nb+BA|n)4W0C>)u18n(m1$l`JA zl%X1BM%LrS(=>)^&~AABZWPzJR=bn3*Nz69EZJ*8<#;BVX=;+a9#ls22@&M}eySv@ z(TeI{)x?h>@bds~({u1(PL^Q+L{z#=fLmT9K?zC!WMbQUsQjlt{d)kw$;R*OUA)6# z1u!0iOG1+)tEsk9fPxy9FT0HfsD}$K4=};X=CR}BWfBw~U}}=!3N-F1lT;{J6)bDl z)vk2os{keYW;HX7dDyePz_7uEg$ zd3*EVxbFN;tlxY6?)&w90Sz?J4S*nSpa}vX!J8s@OQcAGmqd!BDDf0;@zO1g4vt16 zjWwrdJcp09y}ovxN}RQ8Dz$MXwXr7oGnM?6+1O6myOrc`=kxu&_qtyL4U#jn6<`|O z06|J4eEB^;M>9*TxR+>-A&;h}z{in>00Z5rr?MWXqlrDc%JJUKfd9-n{3_HI!y6Y| zIHHOMmh}F@$|b2?HjI{oGkt4?iQGugZ?q!^(o{k>lCQ9woPzT~`wjV{`7PPc@{e|Y zn165QTX|ZO&*k&Me%zg%4R_?zRSUeaa8*J)jTa123HJQ$u#{1~Ae(%OTx ze#VBGAe@?*9)Cim*kK!q;8Nc*!}#qg+k^&9Z?{}$4lk%Gk3FpZ8dawyg6`~xD1o5i z>~3L+AWqV7V^2Yq!Vx;4-Kv&&4vNews6kZ_YdOAubn0~L_8b|f89@!~?^8t3Ux8W% zIsFbtww(mF7vhu!M!RBef*V$USx`Z6QhNmWZ}tqBiSqvO@oPS@z~`d}3k@he!T6^Y z>ha{^ha6dc2?sC#&gQM)$O2|T=7sNn`-^XU0y~!Hu>lE8Sj67-y%Q6m7t0oa+j@FJ zOO`}odjZ5Wu+-}>)FXMPHBj1q7ABo&zk;j-XvSpZ`U;>1@=Hs*N}+|$gZM~e;HU(J ziLiwM=7Wt;Ex#pfk$-b=$DdUe;+-8Sg~8FqHIWUI|s=VN46{PLzsH$ zp6n@h>EtKn>%Mk_vAP;HZFv{`jo5byL$s*;)~0Xn`}(Gj_PxL9?R~FrdUM~JO`8O2 zl@dx&<${_9Kq8VAk{97WC>`NyD>co5FmAVRfqwJYdV_4AVGEp*jd-W*Dk*paqjFiD zSaZ#3X;p_as5=142;Wh}j!l<&J`NoOE1g`BP2ka@_kUlm%-4<&0RXdMGb}cxQ+$E~ z7q-G{YzWWs<#B-9Jz252G$_jADqFGUU@}ry&p?#4Tpi8iQ^nDHTQ{KK>IEHyn*SC+ zxYm#&r&59mwM^Gf&Qx|xN2dDE$W%pe;bAQstHVwFFs^<6Rror)2|r@H8hJNegkQgT z@p@tM$jI(hM|yWd=y>Qj>-rdpFwR`czizm*U*{#LnrPA)1=Z~X1+6|BK-OGFA z*65-BIqZ_?72X?3iZP@CUT$>AKF!H@Ap>xvfedOiLp6V8Q(J+*@YtdI343{ej(Qgm z_B_!SkbDw+9@b+rw+U|tbASuuV(gwssyZxqaxY^io1hFuTNvgrz@kKj3>rqJfv4Ze z<})|a@*M18)?x8_%awt1=XtBL=}~ugUq{Dz#{v9Dw{Q;NEX(9q5loUWi;N-13K=Dw zeb2f%ed6bf+C2D;HeQ7PvTQ|M{-PKS@Ww| zMUAr?F-DznYPQ**=TGO2k3O^>r)9sPVoxs{`g~&lgt_K69>)^0F%9roP97!g5&O0U zps|o1=#KNSg@>Ao)y1Q(!jWF+6$&D~h?n`ii4%+<{d}k3@;ONwumw*x^bx~-MTl?G zos&}h6~q0oJj;(42hca|mg3}=I3oxXrhZhD-Hd~`w2ikN28W3Xmt<4yK#c-5We`Aj ztM6pika(UGK(z&RQj{@U@nFD-@Vj)N-UUXMZ2pCTml_YVDQpRJ$nR+YH6p+C<%Nze zK~=C4MCK%aL(x@V7P)t;4bY*Lq{+3+8K?vkcvOwjPU}^`Wh2 zeK6};pjbDa-59ArOG3fV81%))dyp}j2=}n50el^m2ICal*ssJCVPTFu}ONWk8m_s%wb0Eys0ZwJCzh!<(HNrg1RpjdX(1;^M_*2UwP> zl`9y6Q%a;07H^O2;?bv}@nHf_xm~i$5R8PFZ-t_?=Am{=V1}6gB~xmQqf(6kKm8*1 zzoEn5k*UcAU9z z=H-`7%c;3fy>GZ~9(O_e9R;0V3Xls7js8o@NBSwX9l-U3X1ZV=p6pdntBM@>> zKYY{MjLe4pWzpsbVe9qqHwU78p;-`C=B(9}G5YY~nGt%W+Q+%WlB+`7X^}JH(C<*= zwyJJdEc|uP^>|z{(^=uV^Ui=oZ8XjF)J7Y8h8Pz)1#DlX*+oY~YXzP4O*uP}x;bV@ zfIVk%VnmKH7Yr3gWj=+a5D_Vpqev~5nDcURK~S_@UKgBv_Dzl%>1@`+=|0{$4S&NV zBubJ|Ow-fc9Hjt-V1bi2vBGo@M9RU>3YhK-nC=S?cHSu5+c{I1%#IcYvkU`Qs3t4P zY_{M-;R*@6zrWz);R+b;3xHfla7|%di-u4mh?)s3`ikM2mfxIx$U(XRhzx@*)h460 zPg=kEPUt5YH8be&H8VNLm$Du6fWs1p6ABOo=t+>4#0*YWNy)M;K}(O;K$^mdzqAin zh2~y}+?FuYks@q#dmNDp3NKPiF>$}pr8R)j7sjT`eAnbwha9e%IGSPQqKaIhO=|^n1f9Ipcu6u>_EBTkKd+tl}mDo%7@7!5jd}(vv z;D)~K+h4kRn6@%qIpS6;%MbNZ#}6)Ru3ABqM`0ILkr5oRt{)+C&rg0QI9 z>B2CHf+sgC9)1mZ3H?k5&)V7=l{!?%Mni*dSXr|2Hy^%!Xh1`X7tCi>SxLq{)k$`i zdk06%7s)yk_0F7A)Vkrq&ZC&1#iF7YEA!k;DN)cA5mDAB3%mlvzNs8%Ea70~2)7^7 zj)p5A#THIlA$OyB?Od_+{gLWPyb9R~S3)CQ;L5#FDFFggm-}6tmn2+HM){24btQEh ztWwLYAUk!*Y9b{-&R`$`mG5M6kz+P5K6H-JOnW9V?Jq^nJvmjOyV4MAzKX4kPP}V{ z*$k2PVds0B-|Bp@`Ss457te1_ban<)nW*dGREFhkbSA6Dx+f=xb`J%ShPZ02a*=|^ zekDj)(Y2$$wI*7Ij16@?Nn*uVT+^MLbSK!MoXQ+|t;)%8ZB!>jzu!`aJi}k@#<1eX^j3NPprX0+z zh~_2n%6XA!<-P^c{wP~nUN^j^~$+q*HEP8)ncn_qwlFfl>I$_Ip{1f;S zv6-v^;^sSNB=k;8RZBME1PYod^iD&0<7K!R-#vh4_Brf-+B=FLo*(Ex)9@2t*s^im zecx34wVQWt-oGDOh{HMDIHNxjCyZ8BgZuJQ2RRd*!=QTr}2M})JAhoyxWByF6dp@+;t_qjH+pQvykUH zXJDM1%D{coc1GQJLP@8)o{{b0gqF(l#dT#3Y#l+&9+V+P)3|5Q{fi|RU-Pm_^$6*v zOBX$%+>P{V${>9-RT6ev%xr>FH({IPa>XP>PF$`ljmi_ZB@Yy1jk7`jNTM-HrE@s5 zjGOVYBNV!G9u9M+TY82s0D9&9aY^5=#F=_yZ?`>GqHJC$BG!p%KS640kU(W`tgmQ_bhJ>f( zON!v;%_Q$=b`pO9*L!j&t{(}EY{g(}2;UpxvNjjdt*2GLG({L?%Q6t{p~=bUE9O78 z3YW6w-gKn8j6PZjMVH6MMRDiA*jNDS9q#N55xs%(G8UVa{R7lxq{s=UDOw`7#suOiQ>iwutK&7QU+wN;zgmT=x1|@ctNSlGa~FBJ z!*xbi&+E>xt6E#VPRm1a$_h5;>`DO6y=&L2YC^{8Qze2KHiuB=ZWO3S(rK)haz>Vl>Z*e2Nl=~kx$P7ibaf|Jg;w6FudDerx=;+hJM`w=TkEe4U4HrE zdTwYa;G6cwV$WDzsg&o1w9|lcs^-i2Ooo`J&nQ?hk32IH_Acy)zj7XFWF0@-P;mIk z1+VN<8QIpkRgr(T!x@l1o%*G#oAATDnZA1IiT6`Qe=a5*U|Ewl;-)Q^CEXnp7)nr2FD zt?g_BqEn^N39nl#auHi1qGdn$*Dxf8qzNB?j?WpqDvDXJ%2)u9%j(gc^@0MzkX%qx z9S~6IFuanPDl4ft&fQEq3(FcTdCB{ftU5pjYX{f~wAH)-;MW9c{ntDR1j>>&Eoim@ z&8%%|72MP@(~uA)4z`b~lTimD%UPT}4l5SyZ#ZRR#r_tv@d$T*5OuHA3HYgF+K#Sj z{L|FqpngonmH200VdK|&=X@CZ02;2}A$OKhwr}m`onx$6!ZDT7Craw+1W+l zKBKzsrHva$7m0S(M$mCd9zm$ES`t(fKU<)RP#;1~EaCz9EJ_&cgIq(x@G}U0=;?Y& z$}DM2*zZ9~AwAaR`Qx#BKELH{=8u|>$gO3W`G)I^b0Q|3rK+p|MK4>v{dSV2R zwFC@>bYvW*3R+tnpX7rL4Ht;=#fNu-OtkMU?C&I3#@Gy79IR<%;}g{q=8#ePI(n$b zmAXr5p;SzDas?|73?M%WN-QHf6LS%+Pd?EVYrbV-pwyr|Rt(f(7#_MytinZe9CP!` z3LE3k=C>X5x?yQ|WKYcx=0`?6e}U}Tu*b;d zJnWD~PmF{VC7G4VQSfWc?_e1z$VR@yZUzK+AL-SWkroo7Cno{Ls38`kBl?Ea7Ld@5L}F9reDff4=|I`p5e}sK0aft^KR&b?^F>EBp6*eKS3q zHhC{!xP0N-HLujwUBfS4eV;Fh$lo0(%R$TJilp4`^tPyr%MBA&sGI!a!Kld zUP z(%>}aC#F`sMI?q+U^5WUjV`97%0k_74H;?_-k=-cJhl($)U)6-d_ZnBM<1L#_0Haf z?VILj){Ghby}gFgjnP43~$C#Rs{;!3S@?^UiY*o{PpzButjnFSf_=Z|CjG zPq1-Wnos=pW!x7s4!R=-B1V@KKGzyocA`WuDJk^E)cVkPj%JC%3gbD8E?NblEuwbn zZ)II8D=zS*pgUo4>l8p~R4UR`m(jHwk1ep<>(*!Eg6=@h05}|+v^hQxL|$Cug$(c6 zJfxL=1mpFDP%NiK@K8_!xexS|n;&rbO17t;8_s}f?Sde|d7`>b-EO!^;{`CN0NE;I z^DN44A2g&Ke9)CXx|^ryf<6qN(d52_%R|=9f$+Eq>k*v9ErZt$9iM~iVtnnps{KYH zDXiK7{zLEQ9S1rM@sjq#cp8R=aSUf)=QYY2gC>GsJ4T5x|*y1@}F5A3AZj2 zxSJnrXv1BN-GLs|N3l=mx4vI{yZd47ZuhO)HDX2AY6~Nb7`<@%@~Ny>H(_JQ<6`XqvEd}$tUb}&Ws7Q0vmO4kKD-U};%z#;kW^qAy8yGAez59I zfJ=wLky4KO_9Ox7#xVGq5BY3}oy@|yR(gbaZ>Fb!P5I=1vDa_xE`~$>$ka_S5|6s~N zcvVHiLs^Y_^Js()^Ol1VN{H8Z$7U}!C-Aoy)rA)Y7=tLXUV};>d`$!_=(r9@wqXq` z&ygZAH=*uW$IYzQ_Djkt%~i6>FcX8i1~p1s$d8CaaRERXO&btA3Hs?gv?z5EnW=}* zTL3$Yub5^%v3ty%yoSgBi0;;m%NnG>R6MJRtm`HWRgB|vU@PM4Djqq)^?18W#xm6w zRlURMwKcIvRk%F75VG2|1S=$o42pGGg+)SDkp!cro#s%+kO-6DQ$rmSqLjG2I@kpo zhJk;Ugg;l;kE%)l4x;>q+oc@b!6jfT(zq?Hf&Tdp=;eo)in~xJ{yG%%e?+K?21@yv z3!7h|B3^kuL~BXfRd}dVAF5_QemJnR@L~Pep{HgWFF=f_yJ&F zW+}2aLXm1Qn%{r8Utga(jWCXume_LJo zBKmWrI`)s)^L&LpU^jZ4UBHz-A2^_2f>JJN$RK-dmj>SHd*dD$-sdi@gW0{rWXGhT zSWNO2$0Un(fs(H~CUp~{$dn*ER+Xxc%U;bg7epJ2IX|`#ZLAN%&z!t>A~U>SxDZ_k zBLcyb3PfWV!xf?0K8~uCd7cOk zaMlcsTXogG4VSG*Ed#|rC4rC|F#LnlL9>(vOJU4WKIT}+!hDIB)=f?x8niVDMoX~a z0ZTLOahYKgt32iCL{iQ=N^%;~ht@@om9t=xLmKGS2@&pmIApi*{F@l#a3?GWx?{|j z6@3-$gne(0ufW3^$1L7@v-}Wh$=`|ngk~q<%n#Rp@93B7KR^2E`j3ykxBkte^|j^g z>(`%YIbM3@a(KX0fjTtJGq_`poC){AZIVqS8iMT8o)tbmMJa=DpO}*vFOyxBLY@^8 zj!b7xS_@~8B3PUtL?}`D#Bdf)jlqh(e|g?{(g^ND#8zGlUR=w$0*32Vy0Z(nWk=tE zHD9L=@k$grZ6hS?%L3MfI&_tdey(7zg7z4fS|PCVgE?n|`)4}5~wG#sxf4ldMu(MgttvZwL= z3CUInGhwJn&dCV~9IKCqPlN7E!9GS!D#}%#ULzZ{X@)#i247 z=n5Cj2^23T-Y)$dFdj_flJY3&ba5q1k(@3-ezM)G*Y|?~xCxz*92d0p1G8D76GnVW zp+gg)KQqynuA-yrIm;@ELVJ1hSwmh`m$qg96kY zRHi0aqJg4eIS4}*iVo|NFmAKdPoWP1S~W# zf2W1C6$fp+%e0?Cu2FE0zz3(`THIC9Ha$q%8Y8U3$skCm!%-ADWmm(kGCCYTO31>& zfI(oWTM{5`#D66^iY=oErokD9nzCW4dy;bMXerNEplm=_GS&; zzAedeQlzG9PGB%+pgpv{ISGn31lmjLsR=xq+q@usP-Kw9nAZ>!_(8S+L0#Qlg&Tv^ zp}V7y&V$ZfM^}z7Z8J5|N+$H9&@TbulR6p;&2pegVjxjyCS4a=E|^b-KLnR4@(;}~ z>193!qx^fZpOJ#*nRo+##k!aHp7LaQcsTAOu;SY{?%cS3ef-%=H!fYh8b<>&7AH<{ zc$RAY*|&bi@`WDSj7uN-9_YkJ29B$sc%O@<2tRS$B<$xdVa8yHA zSHWIh9n;;tswxb?`Y(W@8>B{%MytwncOyvjrW(PL<0i4o(L$gI{0$}-c=Uqv5*H)^ z5(sHcz%^aD=ozYvg`qTR!$}Hq@yhUaq?z5D6uX`<_-e19qDkV@(7$o{6AaNu4YDq0 z_xMX;lMsEa@ziXPgTfOzEF`dnM&0pwH2=hACAw9uk8Q#(I8zcf zW{o3DWwBc0s_kbj!4@L18X-iz3d3DdPh3L)q2r|}WNmK>{fs}9BkH1;s`eS^vCYg= ztpxwFTt@8BdCIQDGrVi&r;ut6LEFO1h(a8)BLIeKkP|Vu@+x+wS|{UF8X6svj$)c_ z3Qbr#^Af;J#R$T()R?J4Sb7F+FaksN^k{1`vkLf9y=IQ zd;=?PS;pwinFIT1lenr}KEN9(=+cKeNv6itCM2D7HkS-p4tC1nwH(zqj3J18lSvg~ zh;$36KKYz;6E}qe!L&_RDu3Soly*6Lt&bTd>+-8xUw-MOty=*vG)G3PV=tV3;oLb3 zzM4=fj$3nwPojCTygJBP*0To>c3Pd0?9|f5u)@@AYW!bo2^)WNOuIP-tROsa5Fs>X zhq(!R!oVjz=x!*ursS&st>Gl@H@;+R^b|8U!wR=;WWHFtb}ibQA-Nbe}1>RghyAVM5|?2F%1InvT%G z?6h>gZ&D%=_}1Yll(kTja92+F(-DsOn2umb=4i2p+^yvpWtyXOm5BYRU43!Y^D6 zuatl&)K*yJw4bJ!X9*2?YztofZ#s7*R9DAUlPC*za?sN}EsLEj_H7Pq&J@?oqJ0&S zpweiZ7bsJ0Q`{Fi&CZ3+4QPoP5{}GZ0If2L8+Aktw(wjNY3!l*rZYM9LlE!uOPko& z-Th--ESMimE#+TLMd!)ooC*7wR@wA!B2!df}dM<5Epa+-JJD}iV3SD@sb$7qp z#Cg#;P8Mhr0e9G5j^AM*(L@qLDz?JA9t$`KRr^(qP#C1?Nk~9K7x!VNn!ye*_DB2@Iw~BGqBSc^U{M$U7gi@&-pUZdiomn1$K1qI6G_f9}jv5Oc zT(vVebtxJIx){Z3ISnSLWuaVjv!nhNa#Tl0PgmDHT`KotMU3wHEUgO93Tp4SZQe^5 zajyg3%APA3&QBl^Y$$({^v(>HFSbNWGQ zfOe8Ny*M)yi0&XX4i3g*As{{5*;y=xQ+RKpJCVs8RIEM-iV-Y*{NQ*rVh|3^@)gES z^lM>-3%(IEIvdp+S&1SiiWO{3WGrr2XGHT?hKcfoqzUvy4CT{yNBCGU*i-dFpUndN zHieO_Q@5wdX|YEm8GCgt^S{A$DmaZ zMo)9Q+#ouHolwXhe%AAF#ki8gF#)3$>{)Y!DFtLFEo=a)M%ssS3FHf4z&NUSM-M?8 zg$@qTMxpwKr5@mdZOnY1d^I&$A_Ed#?AxN8fn##TUKrEqra^lTUiLZGPvS-sIF;s9)>7BZUd{%)Q+M zodZKdr+QBX5fj8m_!K_3jUf8P#zx1#O3@||Ef4SzEG(8jv7NI&hc!Q@A&4Ra&{d_b zS_)dH)_w>l(gwS@aVev^)V!BUQmy@sbSIXrs8)iQ?q0`D6p1DLtSprAv?9g;HST zM@j@;01?bS<{PHAa5ozI^F#eDkIW0;&lG6@2x5h;{gP>)!f>&J-S z@v=slVgh2L-V>VLzJ?&8$@M%hf>T&nh?wHy(wRUYVi;ZK`9L{3rcVF0j<;n|sM#&Tk zG?J}*A&N0=l&@&J!(OitHGX^BnwYBSe}cqBbqXi0Xyl;3@j>#~3blj|LJGfa35(__ zL#J(4VhpRFaoGxA1L_WoW;f5}#-SkFQPb=hqr-Lh9u3EE!zB@n1=Tf^8sr1!VeQT0 zhnCX za#BfmlPPQ!l~ko$G{=GMp(p~j5gb#mPtie~!FI?%UV6(-24O^95!AD*lks+2q0j|z z>D8jqRr~7MzQ+F85*MG)?Fl;U)KKq!>%pyi+}zwDX5VvYA{IOJ(#x;DeEIUB>gv@4 z1BZP7ovrSZYtp&msdR#tb zaD!-rRI>yr_F;rdx2l6(4o_+5Z9yMy5Dhd47{DjP%o@t4n7=ULz|30Gq@)84o#ZGU zv`eIGqm0l2o>lO`*$YVJ7~^n<6?auCTe}zcA&6fc%cuYv{xLdclD9B^SC&$W1=zcw zLWOBs1`@0n$~=~2_Ps)fE?wS&0tVpDPKdR3z?_z-6RjR`#NhMkS?$$N37hJxpGw#g zksrhU*hT29-$F0_5ZFUPg#C8x_hS#{=U(1E^;4#B@xePM%ziok=KcF8PHfK%jwA;+ zZrpz3&b>Qtys^EvqtMaczy0dL>j!V&-X4p`x1&Rv+ddZ=zarHtjE^8pBCQd=5+1(% z{>YCA2=b%BrN8$zIp}%9C)z~QH?c(_-8I4;P0%Cx5ajz@{CoVgF2E1N7r zj_upo0gGA#{VgUlAbko3$C)yCT!Rdi5%MH7YN>(C2!K6p=r&GhkjxINut#Rd9-K7# z`ZfdenompF-@_uwl!TxBWFW6=Qc80wiY`{sO&c=Gq*M`x8>cWjvlDF4m!oXGVuV|2 zIn8mjG$agIdJU6WE&{9D4oc z%|nM??3wMDU08VW(rY(fyL0EonekffMMG6z-1ExSS1w+B(X;IrL9%%~BweQP z!peT!ky^!GHb0LfpCBYqt*AV)%EOA0Uy`VI#@C{xtrh|fl_Cse)B}a3Z46kS_I2wi z+n>iU%pdF}#Ytc53$n`U4%{$C{fjDRXL>>PBT17ucS!W~q@eX;?*mC@up^wpLPMN@ zbiSa`M67e@d_76)-CqF#vcqIi1nIA#IasquB`}S9sqp8DDJ6Gqkj)uWE?OYgkh+Pf zxnK@@MW8drU<815xjcG~_f<{(BDM?14jjXnbk34vSm<21V%x(ms=jw&$g$Xnoe+73 z`1t0B4Bh5LH)kkJSE`G>+tiyZ0KMC>maw9s3I?07eiw{i||U0XdVIX;jOx<_S6 z--L5JY$AYR%^4ot>7)@`(KG!-y2JU7=8g$6r(#Dz9+>C zg@*qgwmd9Cnh~)y5`v#UyS<~gMKeT!L#Nf~b&P#&r676wRZw_MWwFt`eElV&BU$5D zc{D`LV(r|cTXW8k9WSqeFa&looGM_Q=Rpg8rz=WAl8&8F`BH5x^G*XnAD}u2Nyz7t zRI+?1VN+ocU?6seSK!a?UssbndTCt0045~sIzY&F@3rNgiE2q09Ni+QothzKba(SQ zH_mJM``FRw67XZXrY50}(w8J+1XkTRo~T3xOqBcl>(?e5tDJ^HN*k3XI%nYDAOCrg zf>Lze!qsaq8{6{c{W~|VUVQ1*-v0hA znk;WQe&oo^%$EHJ4<9^sYzxE&E$6hCBP52))>3;%} zhw-(58tg#|spwF1cZPL$AfaUcD;?__U#XquZgSeDu69}Wh%_?Iwl+MsL*a`sJvtaR z|0nJdzgXdt1>cd+h9NOIj7!!qBqoRN?W_zB2iL6fxPi-7V6;qlQs6dajg&02jeqr^@!&Z!KFd49|M3Q(E-kzahBW@24Xp((cVj$Dz(vR<$^O+K@ zvv)IUcn<_))J&XGp|U}w86TrTv(Vo&wQY+zBDTMl1I0cV-paT8H}Zjz{M1xz${;1ymBT z1t+R3;m6m|W2er9Fg%Pv)0AU}25C@b0s?t5XiO3Th=-T{e9XkDO15WVhzXhZTxULC z#R?If$X3gYn^+Uaz4bc_Lia}S$4fmai+8&A@cxM819^7g?#%|~WptVVrXEf)E z+rx;K!)R#_BU%cFpExQtYDy47h!@H!{`<-?L+PeAHPINMv4$hoCv#Yw@RcLU@_~N6 zee68tAdOiKNo8rhVO`7r&e@v?c{8uthoRfQwaRxRVPK8osrJA$5|5IDxsVEd6v@iD zLdRlT-czx^(M_zT1i=Awz)GY==Kd%CRBo~$)FJG*gY{m8^b5J*7~X)X#>7)BW}32-|_ z()8izor*%EIbXN`1k1hFcYjsvBP|*+!}^j&t;!&x{E`$(+0ywTtZ8Ut8sE86Ks{Xp z(>9<`wSE@?l80k<#h_c2x`vqNUC^d>Qi7Z9DHBN(l;R!-B)^Q|PV}12MSRD+g%2i+ zE5husi5qxk(9<z}?lS7q)CUJ+ouS>3g?t zA31XR%Jo~<@7_JV@4~eUmoJ|Nb@24r^XIpn-qya=2_ni5C05c{^h6VpA312$(daPn zAgy6&EXt5RQv)c^;)ktqSm-nYiIqEI-T38?uA=ROh_sfUdd?1KsFs%J6G4zQRm>&; zMNMOVh7-&{N0KXc8i^ubutAtXLGm_I(~?$T`2p&0Tyl0hn^5*RYa33Z+g=fwL!-YN zhW1jjfE6KmG|Fn^dbO6>($E&jU;WYXiZF!D&M^ zb>qt5h10JX=HTFFaN#!}JA8QU+RYV3*}U(-p#w*cZWdFi&AUeTjz0I?X8aA^yluyh z%`n&M+}wh6ZtbR{357ob&HlSGXY9!q;DqHQ(Si7Sd^{K}cB2}nh7eZGGE z`t5u7?iD#}Jr%qe#d!r!yMQ0(ti2tgV|k&pE%u9Q2N5$({GWf&aVoR!_k+HJ?O@{C75Z<72w=4RU;t~sx-v8lUMu*lnXY;PC~ihJT6sNV>h6kLYSTJ z64sp&J>P!)&3)^qCr5|1L_E-k>*0on7k&S$#e6Il3dF%Qei7zZwZ&Tdd=vTUx6D(1 zk@6d6bUu_MB8MrOq_HDz{J{NeLi&N|nHdU@G7>Fp8o#MpYoBF)^S=3uncxnkp*m z8g^F=XlV!z41Cn2hpSibg@8_6Q4Oo#N(zhKpe-YL$e?}dyKxwkzzH=s0&gKgKEYn4 z7GduQ6|cN^-QUavI8$6exXKzC%H2!7M4}PY{=|t0qA80uGZOTdR_5D$NfC6UZUlUr zH#+C0H}q;7Iy>u(cvGJzicS6OD;Hn6dbN(zX5DAo)WNpN)H9I?ilm9)WppSfz%u?9 zEM}tD%}n#AKpUAPcDxX{K*Z2ChCbG*uKBxP7C)3{XnRbL_5noQ_fwatrOh)k%KK{! zYf8a356n(L*TI{xz}Zr9A4ki98C=NsI()a49}veOIGO2inO@xf}JVtau;5eg_^JKTH)A|p*GL0@? zO-@b~h2+}YT~h4n>jT0xg*D(-2JJ$tqeI64I~@|_Z@DTopj}J7r*WHtoUUR7EG^my z`@QqF6*?WTw5EmAKl~oSyWalrNOgOcUD}?t{RU@f`}VNO(LLOz!d53Hk!}!mJ9DR_ z*YPl5f=biULHh-WzJt9tR(n)^S`P({7C3{=Oqgp3Fp6DqIK@*e$?T3mGkmZ^hROjo zP7+1Ua;VO45KC+jyGP8wyk?L0YBn;FS_d}S_9$LBGuL0rzy|`_wZ#&a!2~gNjcf%f zgSkxCEH_g$B?l0SBzDWDrJuz1r?ElCFqh6jRy(IuG_rsQUCo>Gna$)3u=`1XLqVNS zc)I%ClB!8*-7ONxq9}AxBMtG>uDIr6ZwzP|cF2kwFB%!>o$7k7s0)dFB9YQ~x5ohq z+D)Ge2o(OTMy+*c9qL~+=s(eHg!Md%p!?e(KTnZ@N&$SGUU1S^;}WqAv;L_-d64=Y zVw_%@pZx3*k-Dy3HilQNGK}=gmoBAil_6+`rE&aB3!T-@?(X#V6DQKSVlh2)x;`G!!>8Df)1K0xX{vp8g4;GLt=J1y0Z!o2sB|)q&n#|pQTRP z_TrPH=z&zz&VjInRXburS7c7q;-(=U#|5fTC@gZMVt})yUt;LTW{Z;euM4Z3v!uNn|c0W=Cvk$w&ilm7@LW{k*S_3)I z>*z@HrLID~$n(?HfyuqypGwJstL8|Iw5vu>`vkH-tHtc|Fyk)L6Z_4_6VY+$Ab=wS~y z@wjY`04vU8C|U)fCbFri3K^sUp8u=dC|cN5O0$QuDlsx)1j^;QxJueX{+cW%-b=_j zWC|2$N*ZY{VaoAj78^)A2St7>c^sh8YyxjN4{r+q&EsmOm|~X!K&ogB=n`*t9N%IiB;)n+Oc-wA!7I^5kI zI-%#}G>#LYAv)|npNn;Nu6b@vr1xoQnWKRewm@ijBJB@VE`J}$az(S{p&bq;CPH`7 z5Z>r=*bLR!2Tjzf?J8CMSGq?`_>qT{5~h|1`&36SXkE}Kg;r7Rmu}oR4pi3hg|ipY*&NRr z#_<7aT@7UiMuwrGxW)pC^ieQop@&95 zN$q3hX_>|8_S@wjYpy^F``GE}hjanHQ6zSIScZD-o^`riN64f!6|<;qObZ>5Ru|8m z(w%880X!FWgmA5Hf#Ea&6iX!B8}1LH3Ev2t6T+n+-6;r3Do9_67Kopky&(;HGr6!i z8bmPCCL(5BgGpM7&vgN(nsnoiQ`g;HsW^QoQ(1zXg|m_b+ET-7BdoAZeFxt z!X1>Q0MNw;CoO2|5U-E$eN>C~A&SDy;9Idr(6Rhs><`E%WNZ1H@U!2cp85T^kFVc& z@r`@;jvqf~td>^CV&`sOe~7K%Ij_&|8yq}$;L5El*RGu_RZ^8&?Hn*(3+EOh8K<>6 zwf&6xW#paa$VHb>f2e8!+dvUnuAulJPS{$Ig;4k*7|6x|=3>8>vJ?BRwCvAmE5%p! zSD(Oeca2_0zo2OgNI(cpAl+0wRMs+5Cpb4LtK#VP03IVe*i=lp$q;OaehF9>vbdIQfH#=< zm$LQucB)rv=&O5lZAokvQLe2lt1G14E0U^U2L~uBGM#{2XC;oT}G&p0s=Z998E#}a-cFt4G?(82Jj?kfPhz4 z{)H;rFL31`XTDMRW9@^N^>wy~#%2(^=x+hN{0FhWpe^C$KiTz%XMVctM`ymb>&r7= z-}TX%=XdQtvu4-W`-8ix@24vEjZM2hc;_AXS>Jo(?Kj?ke|Mo$*?sKx!`pZ7?tbmY zjoq;QTjuc?$zS16_PA%7(`di~`aKx8u$K<-%xHrVXfh!OQSl;Qj=rWVN3!X-24jKA zi5ik)6-Tv|XvvR>zGW2msh|mC$=0uitmXc3T1^joe9g%8^Bq~TLxa;6CrhQxNHJ+U zQ!({S5@M3T=BV0O@Ji9=(~6ci$U|KOumjBvvXc^r&REl3Q~`|(HxNl*sv|Z-wGzTl zqRBhBzeDRT!Qw_Mkm3!hnLKomU z(6hrdY2j5IuPm^`jD@Ep;?^(RRn*dzQ%zZ`i-TxNVWMoZR1IjvU^adpIH3b2q+JRaxT`Xoi_M6H60dVOlj-)u88 zKp#3XF0pT_P)Y9ob*e7YL|kF^VlZW0I>1b;9*r4bdwxFy{${88(Aq~d7%Y zrg@BRz~l$31c2%NqzE&nBs5it$&u-QelVf-Sb7{z+%S6L5|{@`PaGn?NZ^W)z+VB2 z6J)_N=e7^VldI7nTH+`;N(NR9Mxvfro%#2KYGFWoRUtb`K&usVnYtYv>O|7C_ju0p zcu-??#31sbY4GR(ArV8Jzs8(*z5+I>AD6l8cOj-nDJR@tNA> z@#%B2#hvqua!`#kD84}{PGOfug}DD*eVPpf2>5h7SG;@Bu zw17<5;!_TnRa3MwXe7?)>-Hu1NhY|>U|V{q!%T3EPZNU&Tce>>vZ`R#8vqPNwxFyF zp=O*=G?7n8gKq#g+`(BwQZjN-#Dt$gj&)@mny<1&V8wU>#-+$4xW%xIg~GW>jPh9- z+IS!g^#&V@F%E*gBFwi@g>|^X!!?!TpvQ^W0ZHU<1&}mE1#a?xH*pb2B`4uwcfO;j z2?i-k4~^{|_+NQtTSnlN%G~A(SKVV?=98v?KT%B#3z;-tC`QLO0ufFuNs;PyYqC&; z%nZ}AYFU!bVtha+8OI(1%__)iSp6c^De$OAn6U#5Aq;-W91fDPDJYk>DshHR-Pl-d zQBU}`D-Yh@GaGqE*+A%sgdBRuYJmD*Go&fpDbx#0&ojj3@gcsrnd8{?F1)ouf zHR1{{Sw5qzR0TCUoudO9S~gSxqNeXj*HYuvNhvJ3=)r33 z)7O(Cs?tp*832M6=w>gL(AzjQP8E5~c-^{lQRuxd;cM|+fiIQ#&bS`u%|s9Eb4vKB z*sFv=z_H_K9KaNk)y)JWV0NZs1|Y3)SRwfA65#$CEU|p=9+S6CVxEzVG})OZz&wLa zwU`?`K7?cg6I?qX8s56+2g;RVM$^W7*Li%=FrhJmb*7FsQ_7a_>n~_f2(HUo zw}l1@OLI#xW-KTpn2zffIcsQZ99&s87+`Io7(zNrVI+3JuasGbB}Nl^VkQV9UlZ8C z20dI__y$nWW;Dv9lQ5CPpFFf)XHm;Be=qfm5b>Q;f~}3J=#Vzkd1V%~NA* zHt$$7I~yuIK-wX7Diz5^VHOIX{oKUjhE19+5rkNfSOjE(yKnehYZNi6TO>41-+-`^ z$MKTZ5=cq@y$?l^fR+eDd?!VhAA-S36shj)0KKS#DypYAp~Lv!TJCk6kVH!%AWyqcvXO+eNQC^r!iq252>OiXAya_ zyUw)KS}BX`a}KpqaRn?j7fw(rw9%Q;G@gT{23=-;iOBk&fj*cBa@0X!4?>pg`>}5V zfAG`TAH}|$-|?@0msqkNfAds-v05ybFTDHao2O1)n4c}o4h~*eGqHYRX6C}3`)}NT z=bZ~4SLepZFC4jX@5b%h7i3^bUH8J}*Iv7@abclyp%MwW6-!@h1O}h^;Ygo^WsxS& z5bYnu$^~&mk>>A1DA5JjCp@v2!82>}yAg+xCEQek8$pZ;({>{w~t@}2fry9BPFqtpie_c zJGk>g7b5KGn@4DnlGv1~Fuikh<`jtN)zIvD;6-BpFTEiFL1zJ>X+mEF@}c7jS~h6X zn6d|?cvh60$#fQP9rWQNP4nagS4iMkh<&cBWqB(NEo9nu5IqTUk044yRDUTBCO`q> zB#Z3E0SN|eR3N_a3>Y)cJ;-i;pXF~mJUDo?>OEcuWAZ)d9)UOe@ds}`c>U&;R}p)A znc(BzLZ)8d>+3!4O={X+U+Zx%;JYHI4pIo+8f zyM=s@+XIPl*tI126nc8y0jbT6%BT_4mjobC1c?OMV4AEA6BZLS=i($w%yzykPWzkDbcvB5vO5Uf~GI6GJ-$nUG>bH^6=r zjb%I6SwB6|1|R9krxCDIppEq8VA2b8%>Bw|!ewl^0u6E3fDR9sYq$2tlt6oCu77R+ z>eZqAOs%qEL#RJvr_+f9Y0n%j=5kX<8HV*!%bF^ddLr2e(3aqbj~{ue&Pp5W zslv{RcCLsQ|6>H?!fGDmidg|{U;O-1iJ(FcA9h`hXLdSZ<NKB^;K}*#@sh28ji<$ za@c8#I7g>B{4U5rsEU%dLgn)bPJ&bwerj=xw++^lvqhHdgPG{qin*2NKjN;3X2^wjruSD%q~Jc-(Ve_%1$=8w0EHj@e%6Xhx40m zF&^#xh3g}C7Y0U0>%9};v>mv3{`|tifqZ!_xNHYrJoECI3l|O`>m1m4{3T%R4j}6s zIJCHU09j|~Kvc+)(o7`PL|!hfY7NjhOF?X_8ZAN13`A$ZmX(&DkNg_vf262vKjS^A zr^1XEAvG=O%~8SLcBXL`=B#x<>aJV2ZWE@S0;*Zga3(XlGgi@=Z`mA)qYsuq4oDRx z8+xDt=S@NH1kG72P??}(+8YS8XqrUYKq4JUg~54=bU>uH|4uV3X&U?`)TVh3IL%UN zwZ^3iFnq-jhkV2$3dO7JIehQA76Bu)JiYDoW*>tKXZ0!2BmTcw)cAOW4bc4zaVxI@ z7ycf*{$T5Qs674o%%|$dGasn$%)D{yfvU~Sl(B~>GaZ`pm?)Ng9h!1xaByU#?Ca2! zOO<>j7Ar%EX09APCkDZ>G)BT`@)H&N3>AyglK<}G?o#9EV1jyu{(3Uw_t;B1CBH9k zq^FkN8x2u3_WUgOD`ceQlof=|p9_{TF$u|C*N%HSDf3OSFhM+^JvDgfTf2y%DI-0~ z?7^W?jOM4sAlyGALJAAv13lSBC5z(j0_(db?vBFe`xVdK-`Uw)E<+DQ!KMu?TLY1r)apyxdBcj&fDgc5bE}9$- zn*bfR!+*x@kXZcdFuyIoACejkxRmF*fBK`~dbnrr#jP8<*{-r1>kV;yy!-m?ySE=c z>>kL)a~#)w<-oNAw{CTJ_7;(!y0N#^yQ4B8LFhd0iDHHhh>eQIurHKND0o=sOo^oa zMDBj7G4fUY<6($+fT!kUrhR>TN{xt?Z8>%lk@@axmSte^44qFbfi#_M1LBCPUT~m5 zW2+jhQMPaq!Cgnt*I{OJ_^h7bY$JIYihXb$0-UoSO9Dl3(g{fe(hmHDq*Jjqryq|I zwj>~m0qB}!KjlJ&20&v$uy8G+3MYtftis#osk~H}_EK1K#YKI!CFP++1FlL=bMjbZ zRxC-uo`NKk75ky$>GI#$!1q8u+5Ggj^mQG7dNSyzX>W-(xr~u+S+r|1e;dQzY3pD7$shjS zPk#7YKe#x(I9?sP*k3i@j@|n7zxli`rzwdzg4VOZ@u)!`)|Dc_N~|N z-`{a-N2I9^!YfkN{G=2nq#!N%Z8fWDRkX=z@;qdHGut+0rUI%HRW-H(kfD!NMel>g zIulun`#p98DvaOEzNG<-VTil7x$7wwQmpLZpVl^a{TwGTfXoGeAXEnzGN?XcoOU+g z9=(%p(&i4u$a$h^WqCWditlo;^%SIBNwt%?N`mW1^o($0MG&PNLGJ`S%NWq=Jnkk* z^+jOo{H^D>LG2oK>MCjXNAsIccEMo;4HnC9Axy#pOoH;;R~QFv905TtfHJ7-dC);J zQyW&BnzVWlPUeGpT#*bcIf+ARcR}{pk^}%{yuNrYlaom2GE>q8ub51F7H^E2z((sX zw) zc6)~p*y^>c5U$nL)AQW14JS98KK&eFwffhrc}^^sC!d>)gk@MKR}RnSoX7U%&1%OY zGCac|zQVx|n+D8-48Bg85z>-rU?x_|ZD`T3M0iZ^UZ3(aTf4>8C4sYYw869r9k7(| zApQcjRYe6<%RHDG-wqPP)+8>Ec}PIuz@ik5Kdn{=E0wjX zZb%Q|tsvB3ulJ|?Lr%QQ13m_B)Vjbf7OAUeQq=in*JWA-(7K!uHo!gL0Lb>`2&NEW zLyVaJgY7v5>^bMbhS|Pk(-~^m0%vo|2sCWJ=4;p*JGenWfee4qX>8p3%vPx3`bxIO z*xZJ>En5t%JB`^jld#t93L?dy`<|u6lHj=SV@$vMsUt-lA42tzaj&N?&;nz9%SeV$T0p9W@xMD z5!h68Q5?akk}h;~yqUdeKyYwQg1O5NzB6k}Mj@TUq^2P)!u>A??`!B9=VejbBT>;r zy+n>G;jPlqu>rTD$fgr?tDY(RK^Xp8K{e|c8W1A>WaEk8q9r;!^?XGFhAMU$+sapG zBMpBW+=u=pilpzxK4GeW&@*|#og4f9x5-`aje7&8sBRfi2L{|bH*P%tylW^^@wn@o z#JZS6Twj{htpd3NUDC1}HNsj_7Q?`b?wjy6{4dBxV`2Z!R!t3bD4j*5S~bH$4A-)z z$RuT=#)XE`Q(9)Swxn-CzqHbI=Bd+DFaS393N!-lTMzt`?yQH|CK(1#L(q-u5lS$J z*sYjrkY8|^GX~&=+7y>x59pT~>;l0@VLG z9EyRCArt}<6(Q7l@uwXf3v@T>>3Izf=Ad?J9Z65rN{iim-(sa#RgGI+rlbw5S5ila zlqDTTu|=z;4&`jw?YPHf4caG!9CWOw#$gNrUIRApUA4wp1~EnQmPwAY8UG3hi39=F z@qgHrfK~Pp$bP<3pmNa>JA}#bHYUQb)A|yaz~77g8DX^M|M(An1}MTezdWCNn7C#> zRFylzwU0me;QaY(BZm)P8`wRxdtu?)8}GdT&PN|zJJ7Sgr?2nY3-{i>_weDhn|JQa zUYm_nwlIc}kCr8_X6r@Y#ooif!aj2f10VHNxC8q~wpygKs?q6~4Sm6~ioM2H7{wSt zMNt>@Tfy=wc$z}WTZvoq6cgiP56ZW?XGPN}b@a=?>Y<6}C9wjdN4Clq>k!L;{D@(1 z;e-j@-XjRm3{-SmFB`5EMNsedlnFf_)=Pc&>rMA3$}J0Hg@^!&i)SUBG( z8Mtw^N zvf5q%mC#^pZ=qo33|&i-OSq+>ZX9NS;-aq`_xi(q*Dhb)w{KDLypU7cCvMub2%JPn zEbYwYz%s?UYi4mK5|S;U=tpHUG{cw-0<8TPCZDCa54UaGcDj@Ls{x?~_g7s)0x-b!R=jb>vFMQGY#bI# zj@#{sWf02qmRszUbdUSFyp^HpDhKn8W3(MKb-;8~q z_U|K$-~Ixn68vO$e$(PWPr1OkZop6m8E5g;bFZDdbSaFXWF|uqw5TK!lZ%gO*@HY6 zgb&3NB52vJf^}h-8k_C=Bz=hkzY2Zo~x6)Z>5+aHa+*kHQfkG%^$=5JFZ^?mUT#L>f>_jg@>_0?Uw zp3e{BTJ!wrbFUzNo;OvsUVnb`$+IUkd`sVwqR?<5 zo~S-Xsv|;%`mIJ=J~bHv_mG6bECl812F}WF_yeFl64?rChsPiND#5m$tsPc4;(S;% zN?Y*Q4`&hOlJ4%4Of4CAm1H8-3+d4=2_>#79^kAk2n7dfK(9kgn;}0*!W-i67)ewB z^15;R%b)(ft_qV=#VPx~F zxvzip(S-|hopMR;?VWr3{SV)N^k^;~18?Z`!}lJ(_14_X{Mh{F&2x9|-J6_?=AaeJE0<7hmN zjTdDvwCm)MP5oIqgCYoj?Xc&nu87v7ez3rFx4RUx6YVVi zE=im$%OZhdBqsxB&@^n!U6GT(E_9^|@5$7EJ;&FCE^HvZaUQ&2!ps8K+ySliZW2+o> zT9pPgXLJbvK@~m+4+Cp}%XI5vDp5%BokeeLr3i0=uw3SLISNqmk^vVw7i-%HJd2iE zL8BEax*)$1hQ>cqlhXVzWB+$V(WMog749q$r9-VNi&M$k0@jyBz>%xX1+X8HMz z%y&-3OHd0r)yO}^&R;hlw*0JRm+5U}7N15umfkd5{ySVrn>E|78c>dMM-lQEDL}cOp>dY~&+x z8rJQd*h4&%5Sf92Gv5ucs(=Ct+a^i3B&Y?S_&F)|HscAq3Ie!u%PdeC!rj*hqD2_f z2qFn8NY4YYO4lN~Q~#1(9M>^l%iU0fx!mwBpc^$|vc5OJ^ChACM?K$P{C3Y5i{I$^ z}!-?_86C~VxeO}KIO-qqW;h0(epgqX! ztZ?p?SE@oa(#xCy?gA~S!;{F<(X&B-n#Yx)?sI#yL|KVYpo@DZ-DnDF^ShC zb`m@B7w1d9Bz3>L)UCPSoh&sqHGfRqs;T*wshXO(x8~N&e|Mhuch2cW5)MgbkR`QR zi?Mllm*;)n=f%kt;ZV6(G$E!EO_d*&1ubwEjKm6BM7BEZ$EDJ9q=hfP?*!_eGBLgY z#A^b1mx;BA#vtT*p!9}J!RkF#cYkgs4Wbsys9&OXukPl%YiOYw0(G2h*0{PxuDJ%g zgz6}!hq@Nc7d^enx%-96x;^Rji|T{wbX2}T%lnzCP6M!N}z7@_N|i|PNx<} z-I1QC5t-9Q#(V`laT07MDdF#<>~`0u!Zol5hCme8d^ui=ruA?Hmwd2)kCS%z1mYQ% zD+HYGN%NTw6Y3qDyiC_3k7w=)o(}|6T;4=dXhi)#H=K=>(xYeR;HltCE}uqGV=Bz! zGebA#!H=~!@BiL+e4iQ5UnVkckFQvd>>d9h%2G53~2ZUV2!H(S$KnI2htr$YLF`dr1H0{X7dd75X-29 zD*}zUiu(ZV!P)`l(RiPB;Im8&aI5L!x~f5~stc1cPCY9sDUxxqPJ#CoXac*AGc#D6 zUxABJEt<2`YII$$c{BX*ijhh&nG^>+h195mge5IS5UCV)R*cCFUqkd@ZfSy-M0n{P2EwYp*5#o4G-6|9c* z)OX7{uJn{)@C^$Qu4cCgrFkNDWd&R-q9uQH2ACP?RD59<%nC`^u^^T!24#HpEcGZ| z3x6IH?>EL)uYbAy){1A_udH~g{rrl@+Rv`YcXhS*H}o{*a_vk_+FoB%D75d{d3fjk z{p}gUXiucm?Vh5vU5J3IYlo(^Jw$p^mh*rk0H_R2^hD{ypu_Z^p|73w!e-$tLl%P( z)nkJ}&Z8Js1}nm#?{H4q!uz0$e%?1W1Oa7HqQ7Rf1Ruv#>@!f&1uI7I_(led*v?(L zGeq8?&4zsvn42Ivvlnlm>+-$#$oP|qbNtjtttQT`GC-9Ki!hm{G9PDryk1j|(mokQ zC+QC+T+mEu7)n!BRyWI1rVetQnwn9ll6AL%96uZAVAN?k5#<$HvYa3fzI-nVEuvT} zE<2Ysm}FB8K?wDivTDoJUy4{}#S};eM@k+M#7!*1ov6w!FPaFwj!o<5$HpINc$b;* zU4CxMis*P~?96b8t$Ham@+36YVbC`0%ZMJs*7KcsRM$ndX@qq z@oK`rsFnoGR$aWs5wZ(;TcxJ5&yvu***mcO<=HqEp%fGKvg8*)$*-cwY{cR)y{5e# zgr=fh#5HK62PYIgQ1}N*s&QPx_@J9M5Z@N0}OeZuU z;x-Ta4#lQSYEytq0Euc4iCU@oBKjSDFnaY8jmp-)iiwZ$>ZpuF+3VPG8U1uqeH$YF90rE&|FS<=Uni>tn0V&%*dZ`af6sV3uM zG_3YO(So*(SpqIni*dN>K)Y&p7_x35qqMqiE()J_=dj;7mWubrMPY3YW}r z5;nNl2D{vme|BvTu$AXUhD{H6lrY%~#W(*En+_Erh6a%ONGh4UR9KNIQJV$QoO}#y z8WmyC(+_~gg_*>Cdd3H2C?L(5Yl{QaJ&)VGAf=$QNlZqgN*e1I-40U`PEoduL}I;8 z_f!{_TccC9Z7A9?1(PFI($l^U>8nWl>_LnS*BQjHi|7|zQ0MUQzyY1_8~S4w4G@P z)uUboUzsO~!UuJSrVyk{oH%^NUuE@|bToDY#$zM~;lXyY7{i_|I^XOZ>)3d7W$07p zd~@^V-OpUUynFZ23umvMy>#hl9_L_=ZaecN+#Qa>4twh8R9Ud1KY13LN&$+n5D@c> zUj=cBZjMM))IgFv!033^)(sByQ9SY#>*)4^-~@&NwxV&?*ip<%$~ja`#Hiv2jq<4F z=PjTfKqPoyM%4>T*El`R$6;=!*6YzoE^KIVNUBIBL*5M;GEpZ^Q{sl8RS``bS%}3j zJXQo$T(G1TQc<3dpHyAhDK6AQeG^BQo{+LwsE=FCI8NA(*S_LpTKBk9XkbCxqm;rm zVEj2EG9}{sYU|;#PlsYK>@h`$6JfY-7_KTs;E0RNkwl7<=(f2MUt|5pRW?bJs_I?7C z8kjawjH1iZ|5%(%Prym(dEf|DdgvW!Q$G#;B=onTe;xXGY=d&`x4-(EFMsrd4?b<| zsBNunY`pf~TW>x2BGwKWG1UKEnKiZ>ZY6w~6wtGRD0okzE0QhW~kC>&?u+vF;CGd!L^2?_uLt z3t1sT887RwEsdC})kJqBP-8JkHIBsAXsTLGOjur5)arF~aSzjHNDn2=80dDJyWB_> zpMgyXs%+>~u^w%Jf`#T3LThLljSfi3u*(hi5DCmZ2^3?P1ZXbgscvr>nr#jY8Ir6g z^N19Oym24hY(HUB5J z?H|lJqnMnxVykvD6xh4`dFK=8NN-@D5nDzBFBNV+d*$M}lgAv_Gz*1kQ8iS@nLfOK z|MKP2N>?~My?e)@9sBl8bIr}uBQuXckUd=;3Qcd^vSm7!O0`Y5&BAjTrpq3B$+iO8 zMFbXf|@&@Otu? z?jF{4+ZmuFONY}jBzHEkt=Vm9G@me;gYvZ-%2&p_k|T3)q0d(-F66?XzeqW43fTHa z@`iSwXWAVdx03J-AAYsAb_Gp2b0q(I8JlTP@fc#YD#HZHX#I)11!oK_ajmJu-~brV->1p=YzZorZ?N-E&qPsqXS$ z{Q!3#wD>vLV__Lx@BQ(6LTE3>5hMca_?TgFtjxTWng|x`3inl7Q0)80@HLmV2)a(Z z|AfQn41cV&pl`<6&Idm3PqrraY|tHSJm$0xz(mwdEyE$i|zd zaS>pKld3WXtYANk!=ft&BX)G0AF(XAgKM-Mr;3N95WqQZID3YNhxbc{TLcfP`&1Hl zO5h5CWogiADh-1MyaI&-&-1D zGe?R?e+&&_KW%)LQ|dG9`ptWUoLvnH@$}C>d+C|Y%p4ck3E3{0u3We zmNa-asSO>&!wrZ|4X{cz8jL@MoMKR7!Ks*{d_^>(19&V#3d4y1j*$+mH$bJ2FQEuT zlS4meF@Ocw!S~-!rJ847_>BQ*cKsBDAI6^kFR}y6YlqLIb3@!fvjazW>`qA7OVb66 zdE#K878>q0RT*LQR{=+GdgU=3HCb%huC^P*S22x2Mv+c3$rp|%u|u=sB)7SB&u2>t%jkqk3BjH<$_Hl9JeB$SS6O z%0w)diNy+}JU!)`rJ@v~I0WpY#E0?`+?QQ$SW{F)L?Z+y7+4my_GnSHP!!D9f5yeg z-vLz_a1e|9O%A#odNy>asNi`M%^&ypoRiTl98+u8CEjqEvd1Q1ry)$lFAtWVKFuO zDKd|=Na&0Q$#Y-;1$};0z$n|xfo$+ip{~3d^L^uIg|HHF4=`Q<`>=$eYupTTVdxnU zaG*j(Omj_<4iKOcZ+GF6YNGUkAD2+8;+~fvZK%?#$ML#flx@{xDlmMM6fB3?whTf{ z4uh`1X<52H=}X7xke4Tl_GLS0ILSwzhir#WaE6T_4pzoD81 zQA6xBxmdzV@+Q9*@@O#((<5GpLB$G--{+XaGl}~fxG;JU-1d@O$$$h=nu50uZ&cOB z&}}H1BWo2h9j0of^&&nR!+4y9I83xLD>n(9boC-oRdm4#dK|3SMtCTFtLSy}3fuko zKGj=CI;#?plD+-N>vx`iW$Bc-vUAzerJYwVU3%n^PDH!TC!e_T#8XdoVvOCn_4N7E zk3Zho#?^D8*m?Zq$)?VxvOqTrf2HK;$G9Q_QED;HqqzTpKqe*21Yv#Uf-vS!>FEgQK#57djTeoiEmIl7@q4t>4sp;$B&$?@aB1+W103Cy`#qaYb|DVV=Kyz)Cg4Nv zd+a{X(-*gTB|dCWcb_=*EeyVQcQ0SQ8^6olt-0LpBU8tx9(!ze2LIQn%CG6@*d0%& zM|Y2wp)RQI%gXxuJq3UknYLn`PjK?)*~NyB&{TvEBQgkZ^vvwMEPGck=7rk>u>L`w zoprOvkEglsab^up5_Y7qtcH>whH%z`nnXL(8B$%=4X>`~0B8xriX~m#ElB71=7a`M zOVO~xXGA4xv4#;;1UXT}c|?=6SO*nj0`@03EQr^BCe#5R0HlG6zz&k1YF!MQ7=0&w z)r8HWMmXAQ&Jxx685SVTa7PEuJ%u~qTP>&ygpG<7ZcbHUuU4_+8CXqM!(*7wrnBiy zyqGP`FDEhlZo$GN?X*=`R4&FXxrzl3>LUqU2x-viqlu(l+J9uq>Uvx(Y{Px#32f3H zC_3C<0k3vD^cFetZWk64y4GKR=E*B9!@~kQ{3I;R=Y@{3G2z&u(}x~?RERV+rBZ@- z{0UZ{4Gl~oR$D9J5LBPgR|c?RSSt%?6}gq-nit#XD~iF5@nwA|)mXBlX;Kktz!VbU zpfCRNt9=&F{GAW1+Oldd2`JvL4fr#(6|?XqA%&i4*Lht06uWhMQj$7#yQNCE*F-g0 zH3XdQF?Ia0wbzWVcNf!o2$yp8ajepgAC%!cNbH134Wtg=XW!kVvVSZNk-YV7a$2He zg@L=t=df%7YwT*8?jocjb*X$!9@jd|^yXNsl`bSa1dTOZcGTJhN^~dO&L1u*4$0Tq zv(&xcHB~G}&NHec4=ymWUT&m~k8G#`_1a=gEa$qMyhZ*L(HU0#Upe=!b#Ov}*FqM7nLs%7EH2UOWJ#en4l z$&XSDK|%3EY($wh$B$Z6JjsKDIghD=0IVO^#(HrnK`M=lDx*`s*FikEA4Nh6Xw-@} z;6u)+p>~9KK11c3;qx+C`><33cGPQ*A4hE3=;`{R%vFJX_RCeFfd)_}_f(PVKyz?;XHC<~aY9o>D$a{;n zmq#p`Z5J_CjzKR-6*Hb!R0RkOIQBei8wp8404oJA%(-bM$?_p<0ZXhq3r-A#l~K$0 z9(aJ+&!56szeR>zy3-7K1YB-(wGL9k&K?VI!)mwgOi6~^!+J}6r2(N$0;QHxB;Sj? zsc%~XN-RbzkK+#qm+H!jBcOzEu-qbH8v-ji4|7_W$4xMa=QeBhq>29-PJv+w^y%>4laRldIs{A> zYXA*+3{r54F#)~Y1mQr5M;%}r9K@r-c?V<3qP=d3NByNPIWo>q!)S?)jaeKPu5k$n zhcoN}Fz{#NkkTXVjW}4~*@AITZS68V{cB(JoxL1wym5&Mjd_4OOPvtyaaO04%7;usBT4z9pR2#3c2 z2lc1^OqjXb7FX~|VQM%J1c;&t5Oco3VR;?+rmg-Y_!3lDH?ULj3U+zk4}B8)ap)JJ zcgEJ9?-$LlzW5w#jBmYv^3F>yojhso9^KJ2yrZ|*y!qVi=U#l#oLRQH_K~HVAAZdQ=Ichqz5m_rTLGT9c?4Y zLDbM2=%$oGE|r50jqO!44UvOdZ(^xTg9DDi#j`?V1PX^5CU+o(1BNl}u~^KA_ThD( zWZRBPmP{Bnvo?<$aTF-$$t|Mfhyw_sJD2#Zk6S%XSy;Xx6tuUC)FK)q()~T{u8h)zg;RdcXhkjdm#m z&bRbK$^}oVI@^^C$2Gi@Q{FA|{|Xho1E1YS%z)P5EYy5kXQ<;3hzq?Hpl4rrcyjr2 zku95vBWu@+&4YuYw{RxbS5=ALvY8mEs}o7}V~N-_>kvE2py}a`p>p1bEENVJ%*%mH z4~DD2WhoGdnx#`9j)3ZJgf5A-f4K3329Si(m0vlK`zAW!uMKP`N3f+B4@)h&z28DM zX;&Pu1mLZV1sm)w;HWvb3innNZo9?Rns9i)XR~M^jqE14n3N~PRD$dzf;}L=w(^!| z=gEig6Y%GXKf)a=-cSWlStzQon=M9gbQ+q5ESF4n%Gha~F|fM}dqi{X0i}8x41+0V zbP1PZjaU@sMvwCb+iEn!k|w1{51s47H7JC_%6h#_Y|loF#d8?NP)N$ue}t>VADJ$7 z2#Vdzt9v^A#>ppzz`t`$yPp4a3 zPec83`kBi&FF*I(>5gdh^dlFp!j|x~77n+!pGMPIf4Y7S$o%Lx3u`{WDt#q9z6w!~ zWkax4<+T!pJBoQSj*J0Xg#VWb`nCO{<;9$#F1cHUI_fOG7^H!TM} z1yU4p;HVbKdsP+|fF7Bmr3c-rf%rk%Fua`C1Sk+?t{~uS4%)|XGtT?a_(o`eb24R0 zzO|TfVMBq{>qLAWWldkHAOkl+nk|1%2-k!YUbqwc8YiPNg!e)cH(we-w&M;c?7_wM zv@Pn2D2Ag8?RNxA$v zJjP2v%lnFG6!`gE9&2bU@UcFTg}ow~3PhDN8q^3t?#dwNca?-%UzUTxrLVQPe=qRY zM!#Dbw&Ek0sSz1+7ZEEk?k-aoxdOKAWmjsDa2`byv|W(TP|oDkAx@FtC?+-O?xX++ zLfJ0q2Fzq)65nYL@PoLx;+=V696ovl$q{hX3^q`Rjc_MvL{}Mv^b3kc;K_(U*K3N+Q7x=Po57`P7NmuS zG2tLGF^OaS$vM0kTY5bu#-Cd-5~u&avkoGTo3%7CpTUgs$>P-fbvW*PgnAJ-YkPnA z$p`Nrc=yehUoULkIJvP?ZF$k=I&jH{KcU^$Iia3|=Eu9bw z7!bel1lyKJs%EXnyb%$T0)Q9)&cB#M`)4hdtZIq!b;+t`z9|vaRduJ@2d;{|yTVB; znzZGNBH<2WSS(a)y4^~)0}hrb)hZ@AtZtOl;cC5lk8GRpS4E1Z`p>taW;vNzJVgw* z8?W%euVm0j>x1i5kXr`~+D|b|h=aw`^cXfnqOlZ;JH%(WvEn{abtImC*T&5=oI(Sj zaUQ!~mW*agiQcJJ$sI=9$LQq*u`_toV$Ga*vz*seCzDlV{jih)|Kt+8$1@s620<{8WRt9#dk!5 zl*dR4iu4lfim=B(BrwHtw1hs@4|ra%L_mZ-!wY(}G)`1*0?*|!xvXq-i5>aV&B$NR zv^~ig)v}}6wg&qruxkqJRyZ8D(uK}Jw7mlCp!lex;s_Bp#4o_Xyk3rXRw*u)F{kQ` zdU`!ZiJ7&?O!FEpy4F>Qg}m^GR42~uLs)6ZOJ@fx$=2aPEeVSpTNP~FWs&hu!Z5@M zItb&!T2aDs_{c=HP(LjEo75;sLQ`5C6C>6Z>OWx6na#e4TUa#B43?KXJuLOgl^CR) zj4s48ikg2@oP5Xr8M>k0Bl5LC54!+Lv=xYfl@XBKFUa=?dvoOX^Y-g6-#UQ!w`$qg zU{8Y=0i#`A4Glp6Y_mG8NF<1ZIo!K2O%@K7aC39j$tu56ye|xALC`~Gke!QZI;a-? z>d+sb7fRqm#+AJ?k$RJOVLqeL*QNH#gDLulFa{j*ff&2>Q-C<%h-6cf0 zmAW&4Ro_myId#;N1B8frsx|{h@r{l2t3x0u2cjZ3f;~4FRVY=ow2QDQRtYBD(1m>1 zjCz70Uw)1IqOdBH=rTyG*b;-aL#$=fbnG_a+X4s0lIh(^@!b-LaMF10S&CYtLSJ7+SRPXgGX; zHO2=Do#W#Nuo!m0>x>W7x3n}jAMkqP1BvQ3oHIJ0S=IqG$3q9c`RpwsUMWs`4~s!E zh>bo`3_QYkpLM)Ghv$vd(K-8zDjq}`J3~s2($g{4G1Ism1!fVB_ru`>Rf+Q{Z_ytC z@NXM2a*DH2^ zc2b7|*%zTNr8K~pCGO-AfM|S5Eef))NaBAo@Fzc6$R<78Yv5A+&Z{^suVk)bUDM>2 zE?v2F>8g4|!%YaM6;pV4hE8X22^s2))nJG5H$qz~NKj&gWk-L!v^s+M`!sm(Y%hdD z;EgLCq!ydk_ghr42|E8lt|%^BO!BpiTlAtAJ4z2@+UjGr0CQEXiBMuv@qNrwjU2wiqZRr%d~esg>K znjgTp6aKXLcS@a-Ru3!DMIvqzrMFu$?jEUj4$nNKgR>@Qjcpgwa^}kMcf5*j6v7O` z6qW|-dL?7dndFfwLtva<44ht!R}}az;?{^Pqggi4HA9uAFdZ&!B>e&1uIJ;~0Q-u5 zYy{8eQ1$`&=oJmhRxUj|{Lp~d({Z-tp+>RdhGZ({V8|Qzl#xMMG77O;c3(C~rL$30 zIW+Ym70~2|tRk)uvx31Wq7g%pSC+BT44K zhsoe)1~aY)iddB#3j$SfH!1f|oIOQLNNW^(uM4?Nq@HtN+}Q~aekZ~k84)?rt`_vh zzFM2u6>O^UIR}4Qf>fn%DNaq1Gi99SigS!cW)442KqGsTE-K$VtEfQqQSvzWlD5ck zkPT9D%@lgruc;G;nm824!E6gBxQyBs*!4tXyw)`g{zOnjH4^T|WoAKBjEsEATVwJ% zR*GFUecqAV%CfCQ9^Y?zN^WK3!16oPZ0j-MItqVAZ?f?w^C|m0^i}9Lp%Y{MTdpjs z`Q^`l`r{vda_^(F2Y2qik__#9`}Nn)p1pGCrMF&s?X@e9-n@PD#TTzUv|+=}omZ}1 zzutGHTyy3Hp}8$V03)v?^Yya~Bn9F|fRVDUfR$5uGy;e@SOZSp?^CGOpb){gl8c!v z!QX(MV0fbWMXA4)=LK2*ue6hT5sZdrWROcB(yy(ODM{(F3j`mx; z3rw}(pnEWjEA_T7FrSwn!c7#lob%JqKl$#vZ{B_J@$N0{y}2!Qz368jf4tXgWqXgm zaN&isXM4p|s`udY&-ZQ^S+#CtY^)dK+1|mKp_wgPdXdgEy_t$UTZ)N3gek|C<=Nm_ zdhfpk3?S8VUiIcjMXy356Ko2A1;{%}fJ73eC(Fbn2&7n_YOAO;aJu{~*CejcQ*y36C^+O_PpR$dIipO2GwY8mg4cb*yZ)UAfCnWie5$qj6 zQ)X_5B*_tCtq_^;ExNOe4-e_iSh@u^RaP|7ftVRVk{$@dc3oF{#6}KnvQ;C2w8P@D zWXW|H^~3VEMz5jQoLYmFX$!ch1FjDKc5oFExNwTct}%7l5;oGYKS1`TUoBWL*xkJX zV%qSRHlip50_wzQj?XXI7BR6#inc&=L`XX=t~#NKDU5DV7es1B7~V$e>f?Nd?o^<( zsQFyaW5Q!JK-GYs#%W-!!!^3BKn09nF?y3h0U<2pun6JEIe}LS77INOq!c$CxUWzg0F|-=`0;Qx#&#xPpsx%>Yx%X@gv;2d{L5mo>f!oiI$sY$QTPMc7w>2?RM_ ziGS0JYXwlAFS2k2Q-Je(Iz5B{z8zCI1--A?oYswSrddEB6e0cv8^c>ISh2 zYYVcZ!CDZzII^T3=XH{FGKU5^Jx%)I{&`7gv?Fk6h_l8SWvGU|c>D`3n$%&KNZ0DT zzL#brF(`ub_tA91RqfNB5BJ{dfughLwHI#eZ5ppVo*s{%w#QZFv~YaOqD4JD$C%P_>o;#c?g>1PPp=&xKkf-Uk3-zqeY|^ateihM`t%D`lw~jFlps*ak~P90y4Ro^ zC?{5m6(p6D48fS3&|^TC#YQi#BI6VJ9IQgj561@}Vn}^AUjyuwtY_K_qNP_=_l0rR zf+lZ@*p3AzpiB~nV~UQWahA!m17kR?LZo3mGNihs#nZ4`qM*x=4e=pd+zE~M-Rfdd&8xf$VR4;$I>$`|l4ieN1V7c4OLg~k`~zz9ad zc9@Jq-chbP`@>pWmFj79VurJ}92(^q<3VX2 z1Igl6GXTj9aX~{>T!vykZR&sXZg4JOTMjEjYeR?N8xpu_(XKpAkI}*G6~6NhDb%02 zG_!j7(j`kSoIN`;Bdl81k3EMoC!aj|#1n$v-qLQ{!t}AzIGHGfq%M?F!hyqwM}!AG zv*M3V0$G)xsJ-n54@d!QC>xg*nHb?A>IIr&LfdSO6);Hc&R;$f@ltce!WQHFShhwZ zbFLe8URt;Nnha-JS7PQWWX!BVaV;#62Spr%4qY8aEJS)G4VGp-g(o`E>1ffT!CaW8 zAgCH+p4Dwhncz=BWE>NN1qe1((MVJKLdG-{`*4E_Ez!rdhAzQRFpJd6M^ynAQ-Go{ z?BKvTyJ>9DWQ9+cSm0#BxHT=PSe2z;Px>3Go=|TZ$Ih}n>RjK*#TjtTU@mbBIO2=e z;TwrH4*wu0GA+&7{)Nri1Z+ICVdhb(Tc^DlQX_zGSsyy6mOkg?!k#;`q4IY==?BYIXb`5+ zk<@xx(aOHL>^u*A^-T<+X$zI*ShV#T80A10I1E0f@~(k5;r#_gvn?C=vtNBdgWfmp zo?tf(&aT+GX8X>Ok+U@|EoX0Bdl^g7XT6&SXSLzzaBuHf+%!0g_HW>9`CWsuijMLo zAm_hh4}-@Hc|L>OOQ@>|W=I9V9nvI?HR5djd7v+rNMilD0rL!&M9Fa3TTD%|b^8Fa zXdH?VM9ad$Af$x%10Z!F058BwNx6J9=dVKhNwwtBR*G@#(f6Qeuh#5=ZionUSx`nI za$IpbIW>;CJ+DZ51025L>W=-?ReL`}hXu{4a#C2zQE1Cwuv5_#2Xj+% z#t)55vl`%%nL$(nlWnbH4kshsV(@|bk8b4&l8ieY%v9H_|A;sI9p-NnzH0ReT;6!v zSFMr;;gir$sZ&1XPXBnr_YZxr;r&DJZg}(d>xX7GY;ZT@NZ!roo;!5NUA1YG+fgXE zS1&z(>Dg!9T~A&CINchh9{j0`aj-jX>H0EvSwI}JMx%tyxkzPSP;8|uR^!TYrB)mgw^UOu-Xzt!!rEg~>oV{}*F52$n%ZQiN(yoW7{( z8Xd!idQ(?hfLxJ|VMjD0f)qLAxH-*iN^@GfhHV?1Y&8}~;91H?do{hP1-;B-=vg^y zDSjO;ho~;$<_1c@z-_STM>1Fpm~^($AW8>uk{S|3Ojd*n@)M?r>`FdbQB9RB6{8kg z&|yAqnwkv*IR&+1#8s1qjjKF@*`XWBAIC-_wDCXSDvmJ)jcO+Isvj(oubGLs2q%;K zv5aij6|VGb$IOo55De0_X(CS3DHu}LdpjC*ld2gk_Cj2wntMmc_qSo^sOXGPz1tib z9qJz(^zI2QUer1;5E$LyNLAo*LuZ7P@+(5KkjSE>A2&Vt1+|}-ty#?Uvh*xzL7}0< zN$0)%{Qqsqhr-<7{h*Xw3W$D6_Qq^4jZQ)rILzq2(N0NQOa%RHYlUzS_mB^XB2H`>B^e&nVJvB7EZDKp4h2k7Zu+AN&%|(UDcKYB1!bSjkq_ zV1S3nCTn)u;I*9l^QB-f&F}tF?_$93fsNEC!vjdJx^hi$#|~+DZIb=+~itOHORozy9st!e{W)&rV!A^zPnEJKnwb-g}oW z-FWM@_g{PW-5XLid!v7H^2X!0-@N_mt2Z|G_1$O^#T&O?dg%tZz8h`%{K$>+#vy=C z@IFYcROXdp8{x)#nZu`0m@3LkpT9%n_vDJYsmO;2$ShNVKIspd13iOr}E zkYQne1e!Sz~1 zqo9Al3}vqETR)09>OsI;gMT46LFzyxC{uClg_pi=(q%md@U2T3BsB<2@njOJ{b(oX zxMoAiV?t+!>ukknrZ0-bBm?w|kjN&$4!M};gA?!=<># zibO@Ip4U_m_uK_)RA3=NQ#{#58x+IpH&E=~f}yzQ>9RD;S0>=gv=%z7YX27at#?aSI%tvZ@cB*>bzaI{d~ zt(4$enTjhv3VHD*ELsLg5VR=m28U@Kio%Gb#pD`HQ6g4@qdV<*T>!HQ3`HnRVuV5h7)V#a1A1(t z{0{~gV0hF-_wNORcgV5$cI(f zn(=EDV_Qa`On?$_3v^_)eHg0D8I%mCT%5v1xd(>aH^q0N_;-_$rGvwvlxY=kE#z6E zL4~jd*V%W5_P|x*3bwg#foCC~R#HcQ8Tu7@v~IbW{rYF5kbd`jL((+}K z^V9kE_KTOVUQJv~l;N)uW|be6g;M_$fT539dZHLrXQ7b=*LZ??tm5_qqLmjf!A>(I zdMX75$6&Py0)Hlx36L37mgV@wx828Znrh7lYi6WkH1%`02hc-NTvJ2;V1!cuT53tg z%x0sSt~g;6RhhC+&Zy=B?^bs-saZ(o9Jm{`8!Jr^*1!)%?IgHHqtV{jHr)U4?5g3k zBY`7C=p?J1I^6$Yq8WCTjYO<~9dpcdc+&M3DMHpz^U`lzlICk>Y?`QPSP2UVswna} zhur0M2)o6&VqxD(#2Gd<4NrDmbdxaP#~#W!*1@sgYfrE}CVDgB`R$;iR>jm50y=`_ zJkTAbBi~r%MCZaqUC)aEQ4)V|Fy^C~BX!j_qUHYq4NV4{ybG|$L_SZn%d`>um$#uB zWY?GptrllT|YVLx_6eXTDxj``py<*LRq=;j<9LdokyQ~>dxWkjz9OzGk0Ft z_x!#?hwi-f+K+y8XJ*&SyY}v_y;EE4SA59LiIcN(e+i);EEy&lF4&;h4}V2hCY-+t zYPvyxAVQJSBX;~p5~c51y)o*`zCv)RCSV{LioGn4WIqTZoajdedLPyvxbYXj`_15U zb6WL5@5b})s3I>=BYI{bibKx60Le^*kF+ENA%-XgHGL!R;P5fWweqe?Bz7wwv%;z% z+#EC)Ucl=C!x(WMUjP<6rJ7w))o5u@j3t6lhdCJNWez*Lnkv>soB39q>V!eo5rL1q z6p`#c%}!v8syQMgon#x=kj4_7Dk$L1EkoOv8qCYWTC;-f^_n&C03z)L z90_=^IDn1j@Bl4VO|ZnL*ciQxIrx>JVO^UnTaV%Su!O79aO+3T$B8W*bAsQy0K8Y3 zLXr#^>7P1{OF*#b;My;KsEhwzJr<8aNTD}p6Ski5IL3cs(>%dPVWrdc$I$WrZRp>G zJ{{Y5tv_ZR|5v~I`4^vk`s9c2_Y8FwIx#w7Zr8^rS9Ppfy!iO-*WN@mdc1LB?ZnEJ z$33U(<44vXT)$_}aiOm6xT_~|53#E1IIOPs9p6_TMgc#sX_8Ay? z={H(Pp%=<|-L`k&-2W>>4Y&7@RlTpqq1sYZs8yvn`eWQ_sK%@pDV|KKO$&F18bI8D z9#nG{VyHorU>$Ll#aNtJN^-Uv#xcS!ArG;En!$SiS;;VB(3o*%8)QA2U}f;bA=aot zSL@n!w(hjywHvE;xUq>Mk1;|V1|6j0!euU4n6cXS4jMR7)No_~J4BLWIT}XAHVpi5 zUCDu5ENRFJ2&zU)GTJeJ#&o6&Gnq&;=IpgIJ&3pUC<-VhWKnLX(F650n)juqez$v{St+d~_BkcVv~t3dPk zkwnf*AfNCMKN%l?Em%62iK~)ar(;6lxG{(cRX4{qS_od2pha=Ts{>I8BOBD5kkZ69 zVnW=n=wnz%!YMgJ(aBUDfI|l%qvvWwBN8`IcQPll4gd_%IEr<6rc8|R7BP^#upG8z zI;PM{x{8k`!}U$@euP#CHq|#f7PR%kVm+DG-HE1JYzk`8cy(N;sZRGr?I<5v@75YJ zgofcpT={D5hMJ?d#nhI<`y~RGZ3UKk?a(!db{hh&RjVkNH$r5_I|&wL=}jXx{D4HP z^--WzdCZES(XepO9DUiZg$A$)P5QY7F0>NvS?Mv;2-8h+>%aZ4*bVq2E)?dV-3eT3 z55P^-)9!qN&6FR5mHavCQaFmP`uO^H&%by5&GWBaf9d>SO>gIt{P0&_d~yE#_3wZF zlh1$lv+IBR*r$(u_Sy9#Uw?f)Jyuh5y=f#~5AWLR=J4?K^^+45*U{5mN6lMu9V#L* z;Lb}=ltL!Z>0!}-=Y0TZ0-449njiGmkdbn6!vwF51vK}A;EE9WlGGb{;6bPEJ-{6l z*c0_3h$Z1+Te44^FHw7SMF3&1k`1D#Us({(=~WXRXqmOCk6Ju4Z(Xs_7R_PB+G@Le zCTuK#ZB2+)WW^E z5UtzsI+w4uYFqiXv=P>05WcQNtKX|d3~YA}5%*+WG7-7>WOHp;utXj*aHUhgQmD#t zdECk58I9NBpJ0^cu)kHM;*p~s1fn|M3 z5OvfTf|;Fy6OsVkkWGaJui$Ju9^uHMq8S1%bPBq$n1MeiG1z8-r$!^MwPo;ycm%hh zt|NNh4!wrSBi)7iQRr_%|B4)pt}4Ht{QBI_CVz77v&m1-eRuNP=MGNpKDT3X+qq?% z$6k8pjW^Dnn_Rto^XAEy@4kNb?YAdS-ns*BYBH-24NX3K%8 z7a5D+pUdZ^`BMJ_bW&dOFVRx@K%2%Af9|=M4Bj6tILBwPLXvT7I7{dhWNV?&t7E8w zJx^K$R3uzbp~NgG*ygjM{ZLv=0ko~AUbjbch9XJRj+(lItpzJ3=rx5L)~LY~#I+r$ zSK}Z$IRpI_9q^3Ma%w`Z#c}kg)!<*f_V%VpRH?yd5n77~yC+4GN>&Akzf-v+#_l$e z?NU<~V@R!Wk+`CXZ(Ay=AhLK7ncqOY4T1~%5?p2|6OHDku&{svc`2P@$D+bQU=O-8 zP^--Pgss(&OC9+DC7N`}TIn3kg zH8vmd--_@}YBh4;BBr1QGxYXQ0nF4Rs0W@dUTF8WRlk6{$%V1u(1owR{2Y_aci%j< zcVBj9{e|9+md5c{UwP%!sS687r*O^e!V5R<;!yjA!`E&>{(B*u&0e^4<;wC4%gc({ z3gDK*n2?HE6>q$Mg2I*JE)YhQBx`I+#Xz3n4mchx$n&DGY$+xIqk)!zdjQxY+T}5>Ya@X_T@*ia;XRh-M2wsB-Y98L#Ft5kp2(VxTF(d6f=F zGz&0jUdJJ0ckFqO#xWa~^5ExZsk#JY%>!M2dj^aGy>U_h} zfp5t-wG^*n2`CIT8`Z3nKwfP@n_IJvfyROxfU81wjK5G&8M^=|*xZ;9hiRBB`;#Nu z^!F}pEWqrDc+`DGpVafAXAybdfZhXj!+XYCn{kJ4^DX20rDw5YWb9f#KEA8ByL%UN zyWf@T>Djet*|J^7PM(IAXjg4@^)AotepfV`-36!nU8oz(U4QZ%U$J&zRKcu|%HRR z0*q;Jyr)R$`F=Hms~<&HKV5VezY(JCY1&)8J+|WeAHDzXzBgZe>G>5a*R9(;z5$1h zPds<^>b`v^#CZI~lb5bwSbhQ`mGFt}Pdo*^?uk15rBhBkcIM29_NJy2wN;_e+7oO2 zpg0RU74fl@PRWTtx&bWcuIyDP4Y?G zjK!6#W(~G!&M7qYn8$ENFcmx znw0z6qMz5-FUKARh*O_r=zA+;Q#bZS#_E0yAjR!=iDP|2fL_vU(R3Vqdr+WvJ(BYD~ zm=yQgcswED>+p?b4{~@0cLC>*aSu>A1|FHE+Odc`Z-mZ(KS#=$82nAWif#g}Z$me( z=w)bBWEyKVW08Z+tUOLnMJ3`Nn?+4@TcQ}xG$ow+L`@r?$r+Y{i)o0HX-kR48@X6} zohesU_jmW66-}eOj!ZkehfZX)h#l0C#Q-T%9a*y9kzAbYruqAE(4j^v+*cChaDm@N zJ=j(Ew}yocY7AxZ#^y2zt#FS(Z`Gs;I6;Fktc=B2c$v#~s>*;fIlfOd>grKswAG{N zzz|nVTJ%lm+fxvtkQ&6uyi50&N(meL)a@M@L(Qoy$B4%FXP(&QRlr7B(4U~f;X%lP z2~f0Wp=&a+)Cit{eve=iFmtVD`;4U74E7nDab2wwT)^PGcjZ3~!KY%4x&On;yYjum z3m5M1ZqMiI>-Xbw$m16;?(b?#<#NGgd2CDU$C?D4mEVswi52_H*JW80r4GLoSUqNy zx+i)*_=r7b^{8KyB8vx|c)xe10l}7nE@|9K{C_{$kp=o+R+&nS4h^C%F{On3!u@dm z&B3+NGYLg_ohOz1q(knHoLNBM-K*M@g+gJYy^-Wa<~F#N#r2dHU+cJ*F`z@rxdkV+ zU9-9#e>SPwcD^~gQnJwfP*I5!ADYIa`*B4Sm09Y3%z9UgbmFzQOo5JZC~srB#3uYQ zow7kskMZO$bEc?BqTQ?0dLvHMM5Fa&)tE(S$Eri0NORAortuhUoe_%ca6-rWEw88u z_F*;kU5MHUjRs`vC?5f&)-D!ND=E*Bk~bb^WTdTfaP$e240r++efBA){&VQRAiKNh zbb6RO`f|2CR?@`LEgSN2geGqN=NrF&=%bC_J@oC3Z{L3N(88yByHig^x+gYnJhfze z{1j8homxFJGdgpt4gq?yr&eghohL2gRqg-!0ii~^jai%w5ym3aW1qW^qK6kWy{)819mgZ zo@I23*VLA?W}M*I#ZK?0BYuhp$z2{q1IHfkmJOD=W6*ArGk+38O+osbC2+gOxQa`Y zCdAT68}i#rkE;^Qd&3>*b!?$=-=sLj#fMxjH${{Iv!P8-oN8LDFLjjLxl zrg&ZW=b^91wr}jrpZwwGPY!&r8O~9gVI6g#e)Hy&HFb5qchuVI>XYfX>yD0|y!iAp z*d9Bnie}6)Q>nl}gk<{p6*x_2kyFf`I5zFGLm}c!({1B0zAd zcrANW4qyBvLa-k!i;=NBO8TFhGm$DAMR}S$LUyJ7WB>e;k_U7hCH$7kg);np6zh)} zF(bZ(y*@*sX+qT%j|XtfRdEJU56sc0IaHs`ER3J{b>HD{EgDY}9~NdRC3JZ3^LYZhfKl!=f+*^j`P zuLwj%3#VPQH0aN9pt3|`lCzKRw=AF@^n^{UJrXbrO0Wv_YZ&)kV~^ST!>O$nYGv1x?-&Q9`J!F;}G z#a!8>bCk$+4O)7T_^eteDMG#O=>G;H$(1{BdS4$pj!r$;1%HW6Fh2>wkNFT!XnggR z>o1M0UB0-bg!asfS;?A9X|H6g*x6WOFvl-vj*T>t51nymLe(daHXU_1|8m<#r zJe*hf2C){a7|ZyQ!o3V}>|ubx+0R$zc1CIvCg}liiO#&N>1OSBsq<#Qtbi&q5KtNi zbdwCe04e&ca>Bi#GPys%#1pC8FDJb?7>MhFILLth1BARfFy_^oGnm(G_z$Q{5c1TX zB%zWsR{)~+IHW>M{oB!Q+FEV()}{zXfr6B>XGB}aIvO%KRxTjHNRYZtjf-ADZ1i~| zn4S4J1W$yG3$h{gB4X0((WS3kSo)Zn0~;Uw1N9O6XVaKL2X&$opbktvS{09{B9XyV z#Eq)$s*N#^sJhbowCL;8kkO4eztq&L0)KO6=O`qLBoR7()Q<><#GD76IX1d6JO95z z|G=VQ3v_jlLsR!W^mKIf{Ck-A`~dYM_RXG}sn5Rs+MQcBo;m*MhaVn4o_+7$2lqbt zB>VZkclW*jes<>%f0*rEyf{1EzOuc$J1e%dWU)wFZ3HjPvUi-r4PBkh68}(jM(7NbsOp^Tt$g% zn7>cJYYeSSA}(vKF@(RI60vcmKyzC1Q6W(e%O3|8K28+NbDFaeuJllg=t$VrSQQsU zEw8D9+qen$r14*Z#cwpq7zHS*!)rLaF2cYUH#02A>$N2|e#L3>*rhAc5Y%zBMN2Ft z&CvJ4Q((3W{VzjD#(Hx<4=m{AXSwqk=0kt}xtlNEynXw8#J10Se)H$yGk<<+^@ z=Sy<9N@SH|E?|FH2#IpD!qwVm~0cmDmZvk9SLk^LIq7;xq@*tAI6QukG*nj7P z3TUG-4iQDkvat5oMzuNJ2}YMBTFxEiBQj05c}x*4ShC>gv=VDKv`nPA5z}i!+0VgY z3P&*^K8xh|CfaST;~Vj(@1*!fBvV~oZMZod2HY{;R;oEJEmP;qYv# z0cT{Ta9Bv8yB3nwaNvWRZp?%~qL5D0VQQG|rceuld2(=_6Ss$)J#ko|20Y~?c*^!} zStD<~%HptOILbvLB)LOzh`&^-1=j+djwX^=6Z4p02UmlVXbp5k*FrZ#FM%n49bEZG z;L6E42&(q|>(^Fa{ySzJ^qr3$UpX->-3>kT=Buwh{`lq5+=ATj@a1)gewSZ);f)vW z-o3o%p@%LXzwz>oTemLP>iT8eM(Dd-VI));3jL@!I~KA&x}3rB??(mF48*@S%nmhy20d+w)WuQ>cf zhn*vdGZF$1`42q|Lju8DI1MM-xI>^RHR%rIY+g1Kju3}u3y`YDtCXG;tSe-xnlt!% zAx)fidjw238tN#%oEt)Rg-Ht7bm-p@cvCLTz2kBg4vP`9&L1cCFh>j$!W+ztj{|4v zPrhSh$SYq0^N87gO*kYYZtc*LJYXjtM+nR!eSVwj3JMA#rDUr zGa*H^^{F+>vO?_`ub@N>=PXUi4ZE83tN3pqQw3}nCMB37u~}lk2-7F`ljM zGHVP>$J;E>(~2R z893yUIyzpz0zJ#ovllL1xO(;INK13e*jTWd(LLA!DLt)am`BU!iABVgV|MnF6pDk- zqh_QJ@ZyJGpM^&*%>iyetrtdF2=-9Pp73*a@m(^HA*P2zDEC~CZG=Q#u|bve){Ici38#(2I) zw+ezVs5%?q`YSm}zFOp@2H`LkH{jV_RB9xceWa(8 z!2U}5_ZB2gN|bwH8LhiFL6sS^g*vE&b+{OqkP0_xxOWT>A?!2Z+6Qb%5sK?-YNV#7 zyJfXyVj7)u6NK-KF|TN~%h({uG3NIwB`t=hDDt|RrMR!K6BF)di#r?d_?n{MhTa-m z^K|2{*w)7TA0K#R^P2T5;my+c)@!dl@kHZ`w_m;e=9`U6CSnu){f&j;(c$s&#uLxK z^85=gG-lcd+lPi4pLy=N#=2Y$F1v4Q+!plO9@xrKehGeapDZG?h)BP$neE?PW*zRe z+ZBzEKLMXz56TR@rLXj2@L(QAM4+rg^}yik|AauvK?TGE>}q(#Ww83@M_6wX{s$0} z2s3076y9KHW@jxW=b9>@as+`gr`n^n%(tq(z1FCo#H%xa&u!)7*#5SgFu1`uW--c2 zR$ZuF)Bpu2m64Z&IZy?K36nMtrOau_8w3Rn5L~C=x3O83c*_(a8$#`?*b>TbwSZe$ zKq$f_ffCyIMne`8t6{@RbbB;9gQ*YNCY;)CcVTiV@|=mP0IpRS9a(pvMJe`0=}FZN zh)mO}kP(#)d*DP!LLwU-oJuPj1I|Em$`4U>qz7w=v|5bMd8#!ti#9qRk`+izdE(5IS?8H@E*&nPp7(Rb(dw_bnmy*_Hdw{7d= z7H7{nBeM-M-y7v3d-a9eoSCx<*F&P$;zYwUjkYC3Kc5g`j!*^H5#9=IxDo zX7w#4R+1`!I8_mOptkb14Zf!W&R*N^@laH5_+%5Ex51Nii)4OiKLDp$@J&7D1@ea#NH50g8ZehhrjPI7+Jt6-x7%TL6_Ieb!8zT*J^{KDlOUJ?nn}(~rl<=;7o}+& zwCG%_Aklc!XXeq*q@tcm4s=b-3}P>-S4x6;xG7);uR%}hz(a;jiNseUk(BFp z6Ij#qW-_wgmJo#9%!YQp`(PLRicoPX8oZ3)28>VOY$=RUb^LBDz+Q%aT3TyCk1s-B zk&K&CmD%xI0MvKU!Uo?al(?-u(8`yKLWs|z!BNF^=79VxyD9jOxK8;;XgxDfgRBDU zIX}+?7p+5Lz%%WPpK+~`Zo-|&h$gXX-I68ZnyD$#W1Ga~t5=IS0hP;%9^2%fRsz{H zCfVj2AJ zhf4~?7~UuGcJ^P8Qce2}A@>P1Ln6>8*XYhBQf0y}Q{b>DR=v!?@ZD5!r~9C(@8Qf$ zPP3N)e+fj~LK=bD8j-Dy@D(~<&b!Nokalri4z+-&m(iW&yt~UT@dg*1(^%(#zFztn z)JJHvP$@##0kIRpt)bM{lD-m`orOdbgz!~hJ}o(c4UZ~OisT(I?=Ub2e0O?9sxNq3 z2R^;KL(;GgU_-Ln(9(!st#gQX+Jb}GrFV8-urNri@Ne5#yy9H0E&eq0lhD_p-;&yG z#JT!wT7Cb)cR$^?``kmD+L@gA>WU*1N7~!3dV=DslLvCEVUKmy6Bb|HSTkL-fB)44 zEM_yAt56tASEaJ(S&6*hqu~8)Se6l+>>=YeOC~av81y*LvIxj}{v3LKw&H>2+!twj z2rRxWQ37bYNDC6olkNw}2d)C<*eyu-`|$~vhc|vLFW5MSDI&8gO{TlXl~Z7opdiPx zQBskxUZZ9r8CPf`w?PAd($#vl?Z)E~6qf`kUbeIbp+^W?+mheb3gLOoaka^3e-#eu$KU><$PJE0FlAC9g6-jesW zzqRDG?YEb_cotLL)`tO1%2dviMs1Y$@D&kILtlz_XW@Nf6JpZAh{u3kNnk zLgI%$KHgZsYw105I}5Bu6nllhed^W+4x%N=v0t}(%)nPj&v_2FQfZG9tu-9HbajL7 z^x_JWZH0~9+3b?q+9mAm%55-J;;e=EiidjeW+NWeLuiCT6{1f_KSWDNU{eT8y;MUX zbROvkMwjUR{n;fJC%kFVn+tF&tOu)2zIyYkeT(O)c#_Wz>D&eWJsMKB<~ifOMIFY-;$$d zf4*jEHd*g8V}(+eRrWAHE44Gu{@c1`s6R+xp#Vg-v5zzB5we=7VQN7ASgV*ZQ>+sb z!wzDKg2nGVS%KhSjwG&gfvbYpLu$Ys19vh~I8M={-U8)069>*{Tg z<`tSDJZT+NBJGx(#W)?t#%%_d;NyAtbZVR)mk>@#S%(Y5I_KcDXVP|IAOR3Nbb2ll z0Vfb?o?**LG(!qkV+7BKv7n&{X3JJCt$?26!y5i8AcezF9sAJqKsHP)9l;|)HkKAQ ziMkCrifBpNB${Z(p#5lJzDS$>E3*gT#r_0X{^!t1{f0J)A}`#y_VmSbC!c5@sB@~8 z$DP66-s!f1f$78h_b*=#ZHhC!WB0z@hYn4T%sevl@Wazzz4PTe-}~P5#w}Z>Z~xuj zDbq?>o}UZVG7NiR(+`Xcy+LV7Q+1SjNae+B&3qNgax^K87)+@q#22!WJEiRT)AgSr z?wrHtdrdovOIoQbcUKH{lzf+B)`Af^k)$!!WeW|j;`Qq5O>QKK?FVd_+X*sX(=dI3 zJr_C;jNy&g&Tz?0$E$SA(G;p+ z+$81V@yj?JK_L{mo9I#57Fs}$a(J#Xd6!uI``iNfKy@Jw#U>Q?-(q~U*$gWpBzf@| z3_xL-jg8Z==nC-Olo?m`d+3!Gf69}+9sT^sC!-%6d4KfXyKf(P zXmm&4hS90MA>3&h9X;~`^Sf^8>pS!Gwd-&~Ec#rFFlP^(uB*-jH=Y{+13U7YtkQAu&E`MzldV*I4BGp zFcV?wI^y{M3CgA4!+m`#^z*a*Imv(hm!UIbg|m^L|Mc_k!=3Zno;zpc+KpS-V2kXU zX_~=4lxNHtsoJ~)o`?~6A4cLEHx5UJA0&(h(UgI(l<|YPXL0)saAO&|3_6s_k>uGl zlyyclsw!Tq?WZtGMS%aK=o`^fp)SRvzdpv&>T)as-jXtE&K9d+WyFgn7^E0@`dDj}YskR>rmBw5!6L5J9LRvw z42!K#$cj@WNePgyuk)NGn+vFXxG*UkC?5z#Fy$dvFj5}-_i8tY68wl0X-t0_U|Jh% zCH%pr6TT$6oQA_cqN^oh^An0HWcIoy(XLBcB5|t_L8)3YgOeP2Rl=tHd%yVVt2f@b z_t4g@_s&1{)V(y%-~0TFpMCN5*Y~i|cJI`YBllkV{!hOD*=P4Y`1s>{2lwq;doS2G z3W8{WProOc^`W2oysP z-oAn}V?=-czqGvvcwOgpC3;W4r=Qz9+68dYdoLtFf&?1?5+uP+k&-BOQKTq|6fIlb zmMB`?>b+Xck}Nm5#CBZ9o^cYFyf;ZEGjGOUoJ=y4Oq{%#_kHhs-@LW|bIvUwpvdwJ zC={ZQ)V=%P|K4k_wKmY86coN(1eSI@Zc~uxpoZ&+2xc&DW-K9-0X#2b2#QvzA*cqE zv_VRg?Pv~Z6}KqRd6DK@?Mj;#Yvme2&4ja)lH$}bs4kpogKLaF3i|h$%^l!qN=e+8 z7?_+9A790V4)U=jb3tDI_v)4~z&x;Mk6#Po81OVG4{2M_Vz$7eqLF~;4`8GTv zJDnWR+-A5)s4@x~9;$rKt{Q>V1IGr-LBc-AfT|Hp#acj-zWkt+O~qjH?G9@hN4n^p zM@RzA#C`#`3r)plnUmQqfjgkIcb&|hV>7XDP;EStIQKQOF?-?h=k{N*YuCBW`}d!F z@Y1DguRXV7X6791NzUDM&wcki@W8pIfq`>}Zu{JAciwr<%GK&QQ9Os`<7>{9i=f<-OyrR=%Y^WmKT2@%Q zrFQZAP=x%iNbrjW1TKQ`S6V{O7}+SFOcIRMs&QGPwgnR(9f!7GbGn1+kh9IG!PU;0 zbp~hDPQ$x)Gcd6bmxQCx(NFcco7@vc>KQb>JSF}GPng) zIh!jsPhpJ_?029sl=U=-EVuIs808fu$)s>vGBV3jIG_fm(qrs>*ipb*iYc7nXW~!2 zQqYvt!qK)FTD=+68z%$T2W|>n2z&-{dOuXjIb8>nC(XE%LQXgD!>|B9sPK)VBGsK8sS; z(z)M7KZK7e?Dc$J-~WcR%u3>GkLsb;Fg8RnMH2}4*zeMj7>pVTBf8syiw(+U_nW)RPaettP;y|!sX#C;f(5irnBLG2lUpg=i zkn*OYCiGCsRvfSh5)$N27!Y8AC_ES{!jEh3ke5h|<;?up(wlZos7HRolypbg7L9UW zT=E_HgTPM$Z%=Id+|&`{hu zSp2C{IpH#*y>XL21!a2@TmY2{0HUlS4C$>Gd+t=V{H^;ftngrQiBT$zWf_oG_OlqY zG8Xl65&E%a2TM`3+#31c&{)c7ARvr403>mStt7y>iYPW(GfubbnYkk)6tIs7DN}*k z8&Ray1`|IXmOwZ`A{FZD>NdmI-K7&^YQQ9UU@kI45?L;d4f?U80O=8_kce3Xz?H2~ za20u(e9+12a%{v+C=k5D zIE<*KuI-mlKD+MVQ*7>9xj))X+LQiM<=Yl0X_lwc%YR!I@GcrrERb1X6z}AT9~+%T!K@BD`Ccbp7O8Dw!J#%Y`l#7$}~RqKiL;KZ&JeAn)G%0=a%E z^{5-Yw;^;=kd&zPz?rHEZ@{anS+#J#o5(QT(`uM?*iM=c=ZxxZ6b!5J8mkXu*d@r( z=mMBsM5c8a|0?gv@}*o*fiFqX8N!=#AzWQ!2)B=8nmxCVlarw#Iyfq{CUL}PGKq^k zf!QlCS(r4n#6VsY92nUPM)tv6ZX$)3YE0SEt)`<0s-#AYC!tHmxB3nwpsv)x=IZi7 zv^?M9y4Ro)AV5LIb#DQ=#z2-Sp(x)HXVAtztyV;6FDlZhC46cYcap6qe;N>D2{pY|{6$Ur4pZVioa8r~+Cr!m;RsGF3{c z1V!9Z4NzbqIZ)`0#RuUsK?_6j@O_N+x^oIQ$f@6Ri`=rP{sh5_e@$7i%0-i%A}EG` zY~w}85H$`9e0dXeXrAv!&eS!#KFps1v4Po0>sEEpl3js^zOq(bUicOfOpNx`aa4QUbhf20^%?OHJ1w2Xz?V zsn!SJ;Ody~WBs5ef%gc{N06|24IHd4%i0W*R-=^!^)}lO2}e-NHbo{w3MN}w*bl(H z0^SxPEC^KPMo~-`%ZA8&&}C{}9>$gZ6ny+_7RD^UV#^r9ID&r4#T{rnA=RvFyqdLg zcM>UD$X_2-EBYz8k>B_5m6LrdAelPhE`!@T*E=^gbzwCjxO1r6us}(+E9>WyWy0islQ*kzo|4 z;k{_1u!|TmSX*a6*k^HR1n6j8ol!f7*PF`WTC8m?#pTkXQnc~-BVZ=svs?TD#C=X8 zhB8Bhz$Pd)S5=|r(519WlR2xJtE##;3iQo?zJqdb|wOOBMNTRn)D zIqpQ}6=#_Ssyw4EQ^C@XLU(_c4(-4upkP;^XSxl1*L#?Y-ZS6_dfFHh{)?A-X3 z`S(t|Ise+;m*$`Q!ZUlzw;ZaV#N9> zl`?ASWBiWgRd1Gx+)A1OPb|ecEdLEYi>sPiD5?y~>sb0Y!I-XyALhRASFse9l#7>% z(2rHQ()BMFMf;_U%09XaXd70n@|ql3jn*U#i9BRiV;RltY0&HyL2OP?RlQ2Hk0L@x zqIlC!TOK;#$fLtr3BGpn4$fK$Eoo>Z=xkqk99%-zq{p?>TN>FVS%FJ>K~6&?Fj~ct>ft1{ANhSxxxV>qR;Bp3N=`fJn0umu5!Lr8x zvXoiI%T|7$;9S0~x|IWh&)3D`z)wdrQLdo}`mB%*;6I{dQd)Q{-e~i+w8X|rTPrc$ zp>2+hsm3nEQY7xoB0|6ABR4(MoBUdeAV;4aHBDoL;tEflyiqlwZ8uqDt8vT7I z*awOQze%Ax4-2w-Jye4oUuJ!+sn}KFD3*{&D?-7Lxsbz4z6LL!$CwH<1_dHn&vFO0 z%>=0DDoh%@_PW00lrFu@2oRt@;b%`OM4?&1FaUQm zLbDN}$$nc%6fnG{Awi?-%(F}cQntk(yi|9DjOhE8m5g;NZtpv=m5}E6Etn%U^Yzez z>Jk)j&~2)ELIMg>+$__7EFIx1Bfn5d1*(;Z9NMPViMt zk|uTprTPr4$*Oc6JL#}-r;zJW*UNlHQ;k-xkce~H{uS|5zbtS{u79Xj$WG z{r%RCg9oig9)Ifb=bp39KJeHB4?k?dAH5T|yLIoSOB<{WWusZ-zGBr_sw<0irW>SX zDU!8DE*e!#Xt==LuDvWQ5qxB2=H*2QwxUV$_51y9(dmNvcfh!Y*e6zW9PJT#kmD~hQo1#ktqD~*NSB!cSD!)0 zzg`SsVOtfx3qE{Vm@n7hiw?xqA{NwzK`{mC-W=rzlo-6hUFjkC^SEpq(DCDrcbS7s zI>?xVi$b`Mr#qeyDp;K%sglSaBP-}#UFP7AabtrXr8|WtXjba$H64rO&<0h5&=?Hm zYQlavadQ%mR1~NjccBLl7p7R|yRRpaE!Lieco-n;kRW zoevKRPd>Ob?!TB>z(%)l)DOu%#ZYIvwcVLig5dxoOStoW5e!3kp~TO;_onO1H??PC zZs)|*)EVZAkzccua2!82V=O=nz#zB8C*oPmAR8JP5)iH1VcXQs>I*>9HI z2rgElFQ3Hyj z{<;vK?>?&HZ%&JT)Q0nRF=7+_fgJtjDkdzpPL<(~it#tSQ3Jy|jxcirK2KX@W z=ETe1fc=6N|3(ue0xUj&p`=4L8d+NXezJF|Nc$jz10{A{qwD=a3 z0laG&06YH>s5%KL3QrUs{sH^=eP!WE0q2&SrDW^HX6X}N(k=T=ze*^*N0m?txQY%5 zm4O$krEg$-Ef%`PZ>3o7W4#qE3B|e`Z_90?3tB;@h41+NGw!08W$C=}ivUa$s@>V3 zI#(m=M#(Luzgy9BI=X5s6~U65R5D3f*322I)q*c)k(c80SLjXyu4*jNg9W{0Wo<5- zZ{{W;xK9@m02B#e1F#)sB+jm|$3PL?~c~uMz3!moQvVcWyWFBBE_}WXL zs-@87$q9q4sYUR!rJxQhSv{oyabJIdxNXD^?@1`EwxKrgoqXYoSX79Z9)`JIUn;IHs&wc7MpSt6Y z*=(UOyYuXYvp3x|3lh9x%*HSkQIy$hPoJIznV{TMzbqd8FfNPPVpRJmfcuGJ>EMPg zW5%M4r7T(uMb_Q-Ey|~CBQ2E}t`LhwD#a|?{qi;oKb821c3;NNEnm+rSsPT8v~R|O zwT3gE*6n!&VK1AOwgCU1VAIv9snsC`E11E9u_13E=btY0>AJl#=z!L@3S*{K*RiYL zAF66R*44T$r|73jHd7_t)w0mkFR(P;2xA=+6R5;)G;%h2ZVB6}P<5tK=-VIxjH8rI z5Q7jMTpMv@QwEm&DP|*|$vnEatq0ccMrCPxa;42wkvv$;r@&xctUn0-%0FRyvJRIi zipyc-)XTRv`c47B`UfJ%UK@Jpz;i=S9e8Z$;RE+RxOsi;RAEK!h+GI9+cGqCY^G=$ z(232Bo>@RseSK}M?-k%A^T|SiyaHN}VY<*6rVuNIpdXawpDQI>?;|$qXF-V~w*1#( zOp4v^rGmB$KV`F`%FDmtUG%v3Jzh6qQ1rUAUBJf>s`_5NB^;_EFz<+C3m4e^SVoKu zcmpUAkvl;#q@n-5CZidEDWZ@-`$;*%I&w~yLH@vc5Wyb78s+O`yX1Zb1{3yrA;U6v z@={oq^5wE&`A3G0McXnwBQJyoLu#D?W{ZKgTkfy`Ev+8F%e$dffW$0m7%-FZf)zrW zMl=x^>RDXFES4x|G7rET8pxtq9>tj z@f}y54ZOj4tv?FfFfnvT^Y@wK%1h6k7o*KjKmPdn^UV!oW6h5|@YDm3J=VOXzP|bN zeGlJv|NYH9n>RP#ea}733nxx&Yc7XHSy+`~uq+(?fLk0vjzX%!58f4aKXU{@&I0ixHzh=*KP^d=pahY&u=(9A{TY%qvDb`Yf4 zO?d4@s^bX`1t$tDD`NG*(3ZS~WO&UfA}k8Q!ZDX!6GY| zA&CMPsk27@;194}3f!s9LG*bsxLfe?-k3&nC(D+~YSi%*%&|CFJYzoqB3BKDNE3+7 zej%*Z!FiwxHOwYY#K#UpljZJyT8sGIAGo==mHq)Z1(3h~*GV^UgYdz-Z@l{AvyVP~ zyuWj5-#+2<_uhN_xPS$@0(LwJx8Hrw-Ip#2+eSx)`eap8tg5|Txbo9?VcCcfkR8nR zgmV`zY!u2VuU-cA-{HM`=U2wJ7ufX4MX_D#?A@jw82$2l^kOc4&qAwE@X{qqn{*Bc z4p>wXEM1L$Oh3twg!FId$Fjy+%^rb35P&^MBr59AsM0}rfbQgBu3O)Ty^5fZ#I4S0 zdT9=V*uh8hdD)75GbGixYRhNeXCqES?CmFOMtOS)K*5yWi@UWmJKMX=D;SU_< zRxXgwD_;iFM6oqT#uLH4kS&A*ar=KT7i9^vNaS+FqeQ1*pwr& zW~E?cMM!~1*Ese+2cM*SA3Gq5TSkQRihp6o4|hoQ`=RelS2j(O)DK6~Xx=^9FKPH21EmulFzZmdVLuhU55Gy9%oM+#Fr)$AaS8 zKp=fA?OpJt5UfP17A0Q4I4zreBBbc5X4kb_YvOK>(FI)?=x1m?QeMi0@ZftBwWRzmzb9;jjnI)(nsYL!4`@mipHnrg zY8D#e4nd%kYz$hXs9Dhr)`hd2BQ!OwUNC1EN8! zRCt0zylNqe9pO?0YZ-$yNBW?ay$mDZx~yOu-~kKdfhc=*i7W91sxyN?cUx5=l=%G7$UHJ)U9YBH=BzuJa3~=v@DyTzs1}3QA3Rf# zl{6c+>rkc=&*`7RbBe?No_2~p>TL}BGPrx+1bgoX*@EgAU zjc?p~Yv#SLeElom`c~%qH@$n)2OnfkfA_nYovTltJa8a`?MoR*r!zAfHe`m!$1__u zZ~lDd^JRskA5+EmrQq{(B1%RiKEH5e&=KO2=Ik^P^6?%DF?LxOSVYlkhZ2y9FCe%Q z><8SDQJ$iV-cW<%zF|EPB8|eW5e+?vBwn|IP90m^8BSWaR5UJ@tjY*BnkWG5^gg2Z z6x{4&c<)h7^bX!`LY87#q*cXOF9dnBfd;{X7e0N##usR>qDDKyAx`Px1rrn_%wVzgmp;azYc*DT*aZo8iOhZ@>Mxvj4}Jk&tR)< zSjaVG1@#-~(HSRpBOFE~?VD2+gJ?MGZ z;n^jMCX`jga0ah52%d>7&5gmKK()ZX5<-fJz0EN!k6>d^%xaZss1Pz-!p251OsXK* zg}EU!K{vqmMtdb1c}TIMb=x`kr;za`#H+9q2GP!z}b#v{29;i|qPtjY9<Gyvb;nWRwcG`-(l2^l$m~IVm`EaU@&(x*iwGRohpzr0(t;n$U zoMJUvO$gcU!Mg5-s71n2E5=#llzvAQ3TS3Mw&P9o23YRpOWLi!!=^>XYa`$7~ zbTEOkKrvy9AMg{j_kkCGp>t9T*-kiZZCO6qyA^U$ATFvY)ao*5_>nq*r+N({D?=tc z^>rF{h;q@9c1MDrPqfE|QW~WboP6K$Sf%V@kI!M2w4~8KMx)SY)102;$=cF_ZU?#6 zz@k(esS+geMh4(bMTvDs2-lP6$T1DC|;*cLKH5UOo;06g`d=R?Q~j$D>zK(SyJiH3mms z0qP=-1S(B@v=v{3`Y6oR3K=E10y}r2kcglyYef#zgjfU!R#eWxwmf9P!!p#0*FFwg z>QOBq>yuUr3v@yhyC_j%Ai$t)e8YQa}0^o1y5TfD#Kt(*0KFZ&W*XHHl zrPVv-9((2AY~q^`ufo(n){+DW|*JXPtCt8gu4{Yy0>q-(97c zM9Xrlmsh>?>wky;TQ{aDt`Wy9h>Ll25#YJ#t8|t7fhJc@T+3#yB&k9nAum-jkOc9g zLUu`uB zDg`|>5o`=Om6~f5g8wp!&*9PfhcSR6?4C^164)DxR44xc8WRx+8LfQEcY)(1hC$ea z^uJz5#uFpp@QJcnGn7h=5+C}8zLBVs>Mf*&JiIO85DRHvC{d3;RQsj}=b@*=l*!TXW7 zbXt< z{pJeqk4^$~3M+C!3!Op_jQeFDU_q3ezC z4dB8BY0<3*-Mg!vmbmiEpnFDzB4!@4CKRuHiYK!3d-xk+&?jQ&y(8?8bpjMHk zrK^XAV)&SrEJx8l!7s=e!rd=7nE=2PyPuXqMWY>NM1W&oN%+sM`nERsz+6T&DVOCD zLJDVL54-0vRwaTnQ|0{w(?#{M?tL?+^QQu|AM^z%Mc)LYlsc?G4E$^KUVll|=+ok# z9skpZet!IC5B=o$4{cCQtdr`S598pZUpd}-*AeL?HaTfK2mZ;@wqN>ne zqZ-ZFYnSD9DQrTv3}-SBP8-N%joh$>bvzu(F%5^Z2okR8v??66gr>A+ z!6?P|8bR_3T%=5ONq`k@1Etk`z`82=)Ct$nMf#c=a}@kx7^pTTlH}qSvekMnls1Hr z6M;!VJO__$?Acvi&nKI^bEHPizy{l68Ha-` zT2T`qB?HGO(q0Crs>R9a|K!%~fJrL2)qbjGaefzQ0ckF-VuM6`UU!H;Jd;y)W*Yn~*?mtsU)cAM z^Z9+BbMDwD4-IXWq{EwHvBS)w_3-rE+~KK>8xOkskLR^QhbIvnz1x&)yuE_gpi*|9k1Bh$Ne1=6ukSgFI_0S`wget?|qeIGc5 z)CFR53%-r;2ZAPm`}Wd%lD=M+v=s_*Y6U;4B4$ij3gu;}u)l_nbkYRENi>z=2+UwO zGa19%(1sxC|6}kE*cz)1Dt1?_kldL{P2kOb+43AMTn-B$2J#nN#9`@o*Y#3_mh-N; zB$78VSWb+?2BU$~;ws34PPHV*rwus^M6F;2vDXwEs)E^|R^QO@Sn&Hi=KUMpG;gJU(IDPuU%8`)^y@P`n zK6l^!Sb=e&tF5UimAY``&Wm?`_Olo2YqFiKAhTS+(wcm=n8{qgplkny{biYza4$En z7C%6Iv20qNZv8NIzlJQ!vaJU=&~K?fV+C(z!u2A~=lz$r{pBMF1f5$E7YpQsmza@P zT|k!s4wRCY?$tgzGC!&!cK5p6f>@;NN3Y~d#F?AII)1rt4<9q^qd`5kcB?hT1`k+Y zWnw2#Fsp-3A50mc>mV=a;-wyzQR&Aq?ZVzFmQhJ{O)AzU$6YL=66Ff#fc#gm1_O0R z@Tk*;4KYSg4oA$O6rti6vMXsk&R(+ayLQyh(R7;Wv7+!5kkG!h^6=A=;V-D!CM9A+ zf2urvvb(>zb1C9gsZ7Q=79?7D$~d%h5=$^(M~H&Lbmy^ui|v!N*)I(2b{yQReb}N_ z$;*B#@Bv)1eiV3VV(zoYyIa4%|2ro?-2c^+@9%%-wYN?tFGX5c?%&^f?TQtxSD!rD z$|%~cbGvu9y6o&$sC8OhhIT7(xYquTrlw4$6(sEgtp~~?*Na<zSmqg)MW4oJ$zd}V9W1Yj z2SLNCn57Xa@rfgNaKKf$c>Dh zuv4@&Y^oMj5KXoWZ;Hr0nyyD<5v>bu>zEhltHAU|B-;H9w-_EiUNJ^vn|+rs6zYME z02vJiF<)?ikAZst9)!DzAO(buJhJb{Y*@sJ0c%#1t)R49rhQe4Sr3R7)|WE)F;$=< zWYQQlL-}e0VSXeM*$+jw32mVS_7?2ABKT&Fv$7`@IoW8CX+}NPZg+>ncYA4?=4B{w z$pjAaEFMR>QgnbI$E<}Y2NBe_8jW*3L5vl~|A2Gk7U*)*M3DS*L`rt}*g+c)bZ)lHxW?$rNcm0jCOYjiA48ptMF1 z1XxpwLPW@hzjB06k|#29-xF;h<@91BHT8NLEG<#yV&1FkJd7S~IfK`#NhcUGg6UO` zg0;ZacxfQf);&Vm;$No1hRX$mZ7Tz_jP}ZCT%;kuc61UDnt+#8jVTCRe{A9z7|;>! z2IF<{ChGU8a$T7?{mwXcQIBI6^*HUKw#LU#Yo_V#pzaF>Pj@uV^~`PBZctrDgZkjxAH4nUyJ}xklls~lZ>&~V zmzN0TX|XH}S=ywCUGi7O>LOM}`DEiM>W=mIT56U6-rG|$Pr!&Sv|BiumRgsBU!MFj8_#eQW>3pv_a zL*T)FmB3Tvv;_DGJdQ`+3BmURSG}zEr7@g9O<$5-mc1&if!Zcv8K^4Ss5pSuk#^EHYE=CHfUlwHj!DA|Yr-q9Rq)Zu zp|zk@$*dtFIyL8Vz z$Bv!tTUpn!vZ?9pijl#=v$x&#xx4PW?<`Kt+1>m0ot@pX^66)_CTu~!YVhV3SR`lhl`=MwbMK; zN4!CIrnN50{|;CYDt85;1yl5Bj0%=?!gu>G{z*m8}bEB zmcklRHTf3U*uD`x(hTlVM>}ebkxf!)g{?ph34=L^8^*BL2>%D1IyeueWE!vIA2ULI z01YckV?221D4%`Fm@9FJF!wl`8*7*$S3}`20iUhiVB=m7$HGSgPk@c~0`uSaI=0OG zl=!&!a@YL$55M!_SKfQ`)mu02o42R;t+EUKwRU)4(%ygcDEHEH&)s?}cm2M7++$BY z`_zjsayLEvm89o*a))VC%%V5j}LBkRsM|8--1=|SJU{sMEZE_MTYcPqP6bgJ^;G=Te$4bxr zuxbX=Ou+O4S>43$TV}ywL7>aPw?E+(xX^>l14^f`!^&W51KKl8zQm?^NHuuyb%TSv zlPO@SOf_x_UCg6F72CN+L*TF_*TAqttCKABg#uPQXM?lJWRFOXcE1x;X)` zS-a71sYvft$W93?)}W&cb}==w#^smwzagJNkg|w zB3)R{2xo*vaqahWUNv3W#1XhHhhl71DnBj1Z-|qu{<` zu1wLWu;_<)jEZN9VODF?{Et|dfJ9<>MDHhyT@N>5dWof@_XRbXnQ^ zo*W!Q1O7o^2*h|WRv>n8K!{Z%nB0k~bqd9Ei045t)MZc*6+MYB8VRn8QF0=)K?8zv z8cny;q75UGg`~7LkY}i+E^nqADOB z8Zfsz55^s4-ud>+Zyue$<{F1_(4679x$$vlW8W(CkPD&CVLlI!N2Qgs4S+F1e8_fU8EMHML>B z8Z%z5v)%^TA!a#Y=jg}Ex*ww`eh-7<5Xiv5&TJF$X=34mr8%foutY%uwt&eu_Adl2 zNOLf^!%><**_;(wO9}BrLl6~-6{YGu8p9tFb6{B;F|F`zA2-t$+r>rQV$r#iBKvQ^ z1pZ@&C&z&(Q?FQA^U}tzcfh`QW@6LW2P5wudvoNq7oK_KsbhOaM$Ycoz5A?N{&u6( zZQazlY5jV?_^q3toAWDPE*XWR4y$+r2|E%QIy>Z-yv3OI!n+vLA5~(o$fk&PTS%&S z5rxZvWMwdhj~;(K7(*$-BJL2R6850k2&MI9D~O61rZilFF^W~hk75RAE&w+(w<-3q zm>y3?WJxiSvKfZaVZ_AJ?LO0KWoX6_kXef+Y^J5xAr}ua53is&G&FQvGA!4=6P+B; zX{Xh|-B$kQCzhJ`DLtbT*cSmI2(7C35v2vX! z>3ZF+jQMqiL6X!Ql@`_`^)enXQ}>W|^0!d;xD(@p*id^0xZ6We^w5UdmjkbZ0sJAj zK|iAitqT0~2jBhH*S`GD8+W|=;){3OaY;;!f=O`c#wleg9>4VDvoAdR$}5-7OxyrP z+NG7|>C=~P{=zd~c;bmmJLmUrnA^W*%_TU~TsnT`m4_}JT2veq6Y%m8TKtNid;Ppi zTnLwt#_}#QZmAxnkJ#3u!FW#rUj|xHs(}lrEEq8uU!X}bLC5TmSSoe9c1l$9(x2)5 z#3v{qDCH9Lfgq*gw@?aOEQ3HxNucp(KvS!YBW|rh<{^WlU0kgPNf=|c5|JdQfo^fJ7IftZMiqVN z%rJ~G+ESR6@URhsR8xX*(h@VPZVF+mlQTsb+W?G#jEyQ@*I}>#N1eKv{S8=aJ7$2N zzL|aFK3+{yW#JhrLVAJCO_VkcT#S024jeRgu_l4+owMd=<02??PGhuLA#u?G~Za0L1R^|MoZk>EHkP&;RXf zk3Vwvy?1^3%)-&V>sGxsKDf}=^;*rhlkY{pZM+x!cHq6A{^&=qz4qR|g@yON^Zg%w z|0h3rZ)We__n!Umdmn!L+wXnwwXb!)*I5?lUI3RDzHSlWC0Z}tvLcw(!KJc-)fdRa z=&G>c1LHf^V0oiF?_<)KVH+M?!P&wld@Jxg`Wy>*HVG~xuN7FC><2uenhK2pc08zJ zCIOQ#@4zvkKb4w2`UfOBn1DHfk7H5qulNM#fE|M(tD>YluE3-3wsA3Q=((rjr z&;6Mwk6MZ}frb;l-0;hhwJfaDNY0@sDG6jH+P`}YC$GW6Unm)^QM;p~8O%2fb8tWn zO;ULddMa!|Rj!nUF?f@Y!>>Z&B(##c*aZtK$FMiS!wO@2qRv6NKLtwazliT4E1(GF zX~QYGL5FEQZ^@<{c)0FuI2E8MNrCyXCvXc;ljq=?>#|J0$vCEe8n|m>;t}=dKl=$x z_&@mOz59EPsOx*Ss&9Ysi}&8EHgz;~^z^74Dw-EwdHt2Q-coOS=H+Lee_l-l0%&IA z>SIqnnNxFRr-~KgOO`YKc`G|!#Y)|q&Ok^H8NSRaY(^CFnar+q-W|KJ$fwTHWz;to z8c~(dNui^NQ#LR#=)T1tgg*+EOYxJySa6i+lXP;*e#-qT{p08ANa$NWcE#gMNeYdn z3#9SoNRL;$Q;Q{bCwa;Rul;%X@9_6jp^+hSb{=F^d+fNU%S{7vwX z^jjuk4AKt?+IdIb9~WWrY=U54)9DlIt|`3r`s?@H^YHl8Ra5KMJ^cL3uf6={n-BMQx3?Dx58wLqOHV)d+{1lc zRc&n#J6fDq;_39msHqM;TwX$z$|qJF6(hg=cg0WAJySs@C8o%-bx$5aT2@ej@C^{lcRE0o?rYa%F6LCy<=rG{4r-~R~&`!)S$>g(9^oV8qiF`y3@{Wu{JU4$7ak>BKQ@(IgB{8>N%)VYIJ)zXiJc^ znrciX{hVOd7@0hu2aCCZYr5J{p_zt;5W-TX?~{XY;PEE#z+@2ra83Pb7;A?pB0DguxF;c`)n)fRo_wz1x2rvgKf<@sD2nN}ng}W;u zEQY&#W|q<#e8PA~zdQI*T zLxt}ZO=J;qW+=p49edzGAjoSQ_(X4eN{wRPsbN@~&(^9M01$X~gslkNSV90sW7+EV zW@=9IMC|U$<#r1AzoFyMz~PJ-zRr-=vJ|ja8yn&)4*~I2KALS!UIqUhIiJ|pqk*-U z6P?64IFC8eQ^kshHV*w5y)`&g4`k|Dz4MKCzjpVzo-^{1EAC!(?U+2=Ga&bF+Eo9= zS6;dM?)p+z5{+fc-M%rk^rZGG#IZ?55{zRkQZS7wtcYE3bzO~DTrBU)MWI-bF+zW1+var z{fappPR4ln1cqsnE-Lj=XD}=#8=U(6#b)8-P5lWh!eWAOQ9|aEU+z&E$35 zCVUXw@?e+av}I95Y0eH0>GYJ2AY-}g@5NU_8H_|$MjF0xQ4vHtH2xc#?PoDJ?ZAmx zi9UNXW~WQLZhmoM{;Ti511qB^o?|N?6wzi({9veHaVMvoo`R3cR z8#kUmuy3F5y}kX4E6%T)nK=)?&GS*54DLMVod$Lc{HCDnNcf-fPQ%iN0(XbYBXq9} z;7aTeRC>dDNPX{MkT9} zKb%1E>uSeK^}RdmrwRu%buhB8QZw1=Ya4_=DS533W<+$gt5KPVzc}gfDO6T`}>$Y{Q&sqHz)SgUi|5y zAFco1p>MDM`k@cjzj^4j^=Ga3(7|!G zG+<_CNVViUOJf4OJi?JiQ=W2p;MBF&4=fS=6G;c{3+U+J0HAb7Ma5gNU)Cd_^adrB zIn?|H)yvP(v9<&TS++i~OzeLc_&zH6A5R=i@fZKqjvvf?cgMG8zP{swH{YMR=IFu3 zt!K{c*m3dN+0*b$xOi;+$@MccUihz@!g=uGei&=1#{2vI*smHIy4W^0b}<{5tO%-n zIt9Bf?kYP0#cp;{&R+CeFXWdvFWwRGCs^*0pt`0A<@mu|hV++L>;rv+MGpZX7ze}3v$lRrQ8)5%A_@t}S#c2>Xo)Ty`Uwr+j9v979Wa`NpTegFF} zz4Z1_I^Iwl&*k3!@H^l8&JTb1c5lmI3igw4Kl#;ffAt&Rcsr!)Z)20#+wXq)%Wnrn z@$GvqU0VJ2V#cq31j>WHcr~~k0DfC`GW_3ASG>$Gx*u5jhMfIltEBlN3tLA zI{^F$9Rs)6ajz0|!^IQEW(9OJpxk%GL;f96iea;D+e`6&6D zaKZ{G|H)=bQNIiAe6&sKX_K`Af?u14z@Aw0^wL0vXMq1jXp%!XWhVNCwi>>+JH1Dg z@)!hwshorxusVfvXv#WgVxdG#QXNjSnr`A1fV*nAT2s1P<#GJc8T?h%96SURxsFq^ zxOrBEVcf4|)*Bl9d9dIdExB#TwS_voz+$|iVUok{bODBg24tex3Jt#?v`OG+Xi7AM zTN}7i0QykEkI3n-q!sN#9kvD?!yasjz8!l|zQDMaUxYi_dzjJv0$9?Y2mXEFKL!3K z@ZSReFDG+W;4eRfmnQ1ViNpWj|MS~__|KtdfBpEikN*1e*WUB%JForJug_h(bAHv> zV0Q?9(xK4a|LfoVyPy1I@4x-kfB4m3{KejyY$2P^?+tcTcVseqzx$j2^Ebcz<=$`p z`qz7f*4DjWdh^X|uig97Yj3>v&O3WQIP~J7S6|(G#ryBi?42pUpxn~SJ9zGI{FCW@ za>;kzcj9Xdk-GdqdO#IUBnxu)jn__K21k7~c8yfVe8D{ly~IbR;qju#$MjqArp!L9 z<^HitvM!Wfnobx09Quu0gW+dOAJHcZm;We?mgrxEt(cfqkey(d z#}UG~@=6VJNX#R_3(WxSfkjahich1u*2GJM-ZaV*Z?4iI5(FTPMxJp>QPaWd1r!sM zqA=j1A*H1L8J5EU@kUuIWi$!Xz+gQvX}e)d1WHNx6zKR_RZ>8)23Ch3QZ#U%U|%3> zBdp}4zpYi5Lpxzf7sP&MO-gB!D2QeQ<}6lCJ$>E%C&6>koPZn*UxTwTkO$10z=OpH z(1e592o+=y{8H1PDjz*z^*d}er8#1!Hq0c;l| z9?d_XOO&ArYQnw|*Y$B{VBdpdU_&}TuVoHM}I&5hua&Qn{%6n7Z!3g`TXYG z=8FI8QiE5@FATR%5W1F-2ba7R-Gs69tw`6qVhIXe-2(%-8}k;=e8|zVmDCJQRAUzz8iJi?l@Hez@J-#b`KY7=ZRH2^`KI=jqbVUb zKHey}kLhpW>;6Z9T68IE8J@HaHQC<4)(H%gng)&C3k!pTle6>N=XdRz%&O{S$A&E% zW@aX*rl%(Z)zyhfj3SiWg!?)I8;*wxVsUPc1G~UV~@u(@W2D;;f z)fhEm{doOQH7s0;!5XLNxLj2Sb}9@_)ZvK5lfTZrfFu0h4p)nk%ndy?SQ%{)77u z9h#}-lbC$VGb0Q8pu3sbymf1O#y4*+du$mLQ3~eL-RE9=c+B0AVXW){&*x=KBI%kd zj@}cv7~E?Ju*D~P0$%PmLxUU^v_nP(3nV)m$HaR#KgXf{Q1e_Oh_L}DK@uvzCh6uj zuB{e?zXbXy&cu^}(_p7X^gt=4uHwn~PPWR7+=yo&8G~%b;Ns`6D+ry31a*~)B(Cac z)AcuCx)2i07kDEqZ>A~<@+*ys@itw;E97rjak6ntddlh{nnIIwjXBDh#P{ zN}_#uT{B>*at{a)s1p(iwHE7y$8jt6U}O5=RzW4QOx_4@-H0OtT7#&+jD!UQ#yc{! zaWda+AqPTPYL_Q0D1%&&>R$y!JX7wi*2NH%4e-lha{lNS#DE`(5vZ>ViO>=Y6_0ft)uq@G(eMpZiezB=9bHY+^^U*cvi=PHuvsYjH zN`)=Z8?5U1L>KLATr*NQMyNWM<5Hm@*D9~$YwOWN>FPCRcsG3dK_L(g`7C7g+qu?i zU@dWGYk@qY8hkiKw{8;XH*lyLPOWlzoS7&tl5CEP`)1X~( z!`9|!q=seF(!jcu> z?YuKVTt90y@ATcc9O`B7jG^v2|qMu3aM|Q+3(w)Ryf#x9{CM6{)SA>Ymw#?MPE% zz_zF00IEzWA0yZ)TTrm$QKrL>#*bk&pglteNTsu%8e9s`a(TO$RFPm<=SSH;mt8c&_aZ@)wM^6wU-@QrM?>uCz z_=GGU`7g+psf6%spi30xNR8^Kb*3%ElT|HT8yL}IXow#%Bu!WA#RR&)Uc=ceh@Fc4 zZ4@NKDXuPuMPm%<>O&&Jy&5Ag5u6KIQ&=Km_v*o#OseiGNY|iaw6AK)8ZoSq(DbS* zLx^Q_O`BSU;lqO364vB++z5xGnt7FijVH3GKPP~up^T^TL@TLTm@ifLQC>o#bO0X_ z?A%Q75#=Rf)BWG5e-fzsn=nf*KQV_Vx?9>u>h~5lRP9Y|a8C~Akf`r~mfPd9^GfC5w(LZgn(K^e8U z0#)%0{AZwSwDBc}oVBv3%G(||IMFc@R;uf|z;+97otx|G3a4!w&RNqNXE)BzhYPDW ztX{h|jIn)qd}0C?V`ZnO?9uifd-oae-+E^UcYsG5am$uco#~wqb}|2s$K!!j5cgm? zA7>@Fq?WTnW4WOHLs^e*;o7Q=NX+lMa3e(GDD{KMMWz1Cs#U@o@XS$`4(HS@?OL$S zjEv~UHmq8=MdMYjz9KpCxjq{Xsh2&t)N}nN@Q-+G>DFz88e!Vop|>M&#YDR^R$Je* zean`fp0S)Hjjf;AJhN@vSkgp39cx~*Y0bKIW06E+Y~`v|%2@e@Q1;MPMzwzUXdmV>8!~H6pkK+yJIZ zG08e9xfYIYNz-p@Z)uDx&Z;^g(zT*N9XGUK)ClKbG}P5~8=2OL#tVEN)-Pjj{+K~e zn;vuwieAU4xNuRE(`JL;qPi^2a$4~y`xE|sfs+$`t3<1@c?hE!#}W7J*fBID#?!fU zZLLT{``x=m4%-A$DY0|o{KnZ?5f6J<43|Z6W$LK>ogd9qbFxR>w^l2^ef=qUv5xoZ z%_R}pj~bZY?PTzfXM!P2o7Z9YWX`Nwhu5#+3f{&wRmt!)_p3{c(VQ%jIxrm+J7ti< zC3PGa{)k~JpD~m)h8pMO0lbVs_cpXv2?Kb2*+^09$Vd#%AwXf=(oj<_YK|BRMy$9$ zLf&Y^&AYCM*`Tfuj91rN;qdsv{Csck_=ednv)i|itEM^LvUXUtdt&yZY(w) zt9Yo(a&*~;ZtnITVfSGxvT}%oOxc?<^Z*O%C7RP>l3u>Zc`6C!)GE_iTcbOp4Z1Ud zq-~in(2AV}N?==q$gQ&BB+5{;NE!_-J;Dqp@KLj$89Chuw}T0Cw(G9+Y-)spPdWDh1{ z7Kita$w z#$_UQ2-l?;$Ak;$eo(qeW*G(?RmR*fdr`Wmf`bGuYbY}XTC##16EUK_c)jCPlhSrW z1d`-Q!<6Fjpg3me@}M5N10fEe+qwb!R}vOBXFwpT9ao@^6OEVM#GVQonv$NulsVIf zTNAM_Nf6MK?fY{pm%j`ASEzkS{X#eA1W-%D1!(UNviqnKuCD9OM5D^K&6~Tsl|(wN ztlKoVY3o*{X=)=tOAG--*o?23oWziL3K|s=`4X{tiGr8A|v?AdZ}3R znS8LI7)}@o{IglWID#|~e6?E)Ukh1FMFbH$Zc zF0_c^!mho0s}`!tGECVSSo9$tT4ZzlLOqDbu)xCA@1bBX93OBgRW#0ap)Pk33{ox+ zbD#b=zQL~#mww#ovrC_XN2{QPF|tgpS!HyYSbnL=_Egxwnxbmlr^DDc0k;z?9=4?~ zW8wNv&XG+}KM26bvw@2?nh>HvHKEo4z>nMhMSC+z#XzVtr3S3WSOLs30u8(wy*&)$ zoeiqNrSYX*2~&W>gupd!d`Sz3g-79D3=Zn3kLPQAO~0uNVbxyL?jl1);4bnHxP3`+ z*;|3_9H$Hwt}}X+IggPQtD-dQ;rtKy*^kx_{EXqn$asGGo!!(m3uKEsi#QwXkj&u+{=?9lYwfdcI}=5Px$L7Zj&Ev5Y0e(&?7j!h0y5>J!=O1BivN z^aPLF-Gk(m=vHiv%XQlZpd#4fExJE6^j&|CvqODX+oID0tf;o5d!>0WwVuo8J#@4= z5bzOF4;=+C+OQt;oZ{GP(bH0PZ%}4qxF{ZSCj0g2GW4MPONuL6F*-FKFuLTyS^gS% zWCeB!@-?tf0zXomfY?>BV^Um;M|X183hK+o(T^#*vyE%1(qibxu+*9$QJuF^xXx7< zHA-3qzvG>p>`GbSrYSH!MX{y8kvG&Cv&4=>_i7Vd6Gh!_LrXG?Gb8G+x!nWnec}HI z!v9c&-QtTYSi+`%i__vNn+CuNc9A-o!JM8L;5T*m)z)DkoNLR~)^0j<@ZhRdn|AFx zujZuRCKv#id{PFjL8O(>5e0J!wOJ6pxp@)c>q230=IYcuTl1H?2DLrY02J6kxjri?43vae! zN76h-FnXzBCP*SB(Y23;8I$7Tpz`SkR7^ESxQ%SO+XVG+Eo>~(W~7gP-zTU8=<94z zeM!ip^d%rwlOyx6?2Ptfg9D)w72A~EJodK?*GsVN^WEs1UCuUTvr`lO8GdbB=Xg^t zxAuxXd&bAt<_m?jTX*c$~ zpF7t)++8zXlgl;F9KG)7i4)C@ZTYsYuI8(*xhB{gT=scDjw(MS#cF^hFLw8{SVzVp zsGEifdFuLHV>@?*>;iaYPZ(~0CdtNq?w%BO)htV^SpGTs3Y=q{pdN|<2#@QMsdbQQ zLJWq}LTybJPgn~qDKKA-2hqsXY1Kh&A+^<{9vTc8aJT;{W||9t$zh%!F9V=bVHg?& zG19DpcvPLAh-j6r0U_VTuWAu7S9@xLMtV^qyUf`ONZ?ov&Pd?n*pkQg^3&&gp+)Ls$l2-xyUYwWd248(OF z<+%^oO1iaU3|Vh%%+GicQ0icSvbNXFc}R9^Lnii_t>wL^qPmi*D;j;(4@LPb zui*yr279dCcPA1RFhHrdS^kN@ju2-?aa1mx3ESKjrB$`zf`!{A>N*f5o|56u!x^IK zz!V;(G6qF>=zw^^u>m|WEF+DBydp zz|Kl^t5e?-L0mkO}V{Ne}=* zfFuZ#a3ttmfv)HY+M=&w6fR>um#CLYwYkV zhmRezz~`&8>T2#q`7%`fQ#C-a{A+a)Pk&AXXQqx*nZIBKC8cH*wefWd+n$$t!QcPI zm*S_gm}zr_R?BS_+VtFr=74_SpOFGWUQyAE=EVU>duqho($%x7v)#}FH?ieqFNe$w zls=kpWy}xWiHT6NT$^V7C9e!ZnAb>m^)(8;8;)ZF`!rM!ge1gML9B+869Y}ykfFP( zn8`?PQ2ZR5uxinJXiWBD$qXVmc_O?3IR>E<*imbZjtEZM|01s&DUk{b5$_J-G4AE{x@o->iMo}^P`_maQV~}o-a!CzCw4HB7O;uR zjqlOrmI65V#ovMIH~^X4y)r+rQy?S8k zRr62fjw!vX8vK)J5n9N#xF-l2kKZD0Afl=u`5d#5cs@kuHy|%7z zd$HkuZd<7)OH3tm-CS?X#t@HX8==ius)3Lr7#mEtryB&4&P0?)2R)DpV30usb^hzJ zX6@tZT(VxN5=E*BW+uB|IS7+gv*Y6pksK5hG`p_B5t7+-fy+lCt@cHzp@~pOcAE(v zNG5P}l8|lEX$_?2%AZLtq^!Ry=IEk%42BulFEt1b3DrSsIx$sdv(9!Q)_TDkV?zt} z;D#Mi)MqnKXt$&b0CQ~57usF1_E;)qd+rc8T`wB$HoRiq{_ll8$%rf@mCVWRV8s{0 zJiV|NJRn_5FGA5rUdxgkq*t%vEn}QhS;M}!!rfvO5Zz4t2K<_JGKXhSgQdOk7(5vd z3K2D+$4qx)+;IBqEPDhuE&}H`$d?)@G*L4C_TU8b?R$Uo~_8SU53f$yKv!XX3Sg# zebV&A{|%=9-(q@VGj3X$6LHyheympy`Q~=*I(<4cxnpL>>}+WK$krp~3;XDKS)@A%P**bB(o;tYj(XCn=9+5vr+H9;jPun+CX^>?hY7hl>2M8T=zCz0Y9(6CYEgCIf0@4EI8k14&A}ya6p!&4d7CxdngaF?^sv^$%k8Ytdah6 z462|Uf{soCYw;`;Mwr!c!9ES-Lqa5rr3=JVmxMVC{zQq;8>ctBO|b4%D}bg%BlJCG z$!^CEG^6OTcmFf%!gV719xCa^9tS>p%?EZ?XYo?~+2RT8g+6wyxM5&?U}U7YuWz`o zzrP4pOEIIGNi`fU3T=&YV}1RpVp+qiVyp7)S>H-@rGUPbZjWb_61NT^?m4rtzy83W zOmI+zYf&~)g#qCGwpAwbjzZO`7SN(GbC!F`?|;R1_t$N9xQ)@~`i*>dwgooX?Z*Od zUEQhrk!>nzM{2Q~kfybpZKv_L&Oz5b+(A2I<(y*ckq*l0t)i)N^5l<@Dyi z5-h_EqL~-WLzhywTUx?Gw2_qW1T~TX5+05P-=eLFQM{zXcxehXLn6uSa4ksCV0#7> z?ZWk#+rqCA{vB4i_;t*25q9d$TY9MW2C$9}Lzl&44KS;18r?O})pq5=gU3O)mR6 zxI)S`JVzK}ZBs&eD6&<2Ce=_c0eD`_;Q05PH4M8P?7*8nLwK{KIz2m)(#ItT~yS+%jF5@0fC9;KhT0m4njQZIf5ADFa3h`>jXAo;KEwl z!C>|J+&7>wg$UL?F|~MWWo2>ksI9apV`E3pU%qzv=FOuV6tPV6=*}~j&b<2S(MZmh zQ`Mtjv>vSkX}gQXH3R&Str~eW-|237G7x<&LHq9U;dnb?uIjPe%v29^4H9%hLJ8t4RKqxUMX5 zT1y#;1i_AofJOy@Mzvh;_v`9*IKhS;b#+a4sG%?2kyc<;Banl+TEJU~1+lf1*VR}O z$!5ZKdEK(Y;zj~4^zRdpB#n6B-A?2%@c~#R%K@*#Fo`J_C#W1qy zeTs9v&Dm|!Q%52%J21_UuXQ zjtQNtoqs6bLVCa2j$Rf*Z>b?my^GSl>TfErY7C(ZxGF9ooSs|-TYCZOt;U`D(V6vn zg!s{yTa!Gqyl!st7Y0Tk1WrDD(RMEyx<&9`f*=c9aIgxfU>KM>mpR8Z<^2$MMuS~> z1&4Z;Yl7w*)T_ZV?>4csTR^)V0xguE$o`m_4;aC2Jg!3M69AJFpN0!e{y^ziZdDQ9 zK7o`p;ea1~PyMJB*oX9~Eol|EHl-1A!7rKfMavAle#Dc%rIr!U=o_&TFV|CLzl|J{mm5s~nI!M_g<(4e9#0@RG zRf=Y{`K4SaRDElN!e(jVJIo(p%iyG@LKA%OOK&XwGwa*<8${EpM}4I$S;O8KOoUZU zxAWi&wt?J5U+hW9dJ~!%RIy|G6Li#|h7YeRTlI~QJ@3RUu;j-sHrTy|-QrSjUXleT zC*F)Qv&o7@jbLi-a6Nfe$M)pu` zH}ZM=!_?m0Ml`Ly(tY-BFW&V>qcnL?6HvW8rW9)j*E(h#7dkDl|F6(Id5oJI3K>E0 zjx7HGf@<7yhngIRy2V=weYvh%Zq()+JL2*Y)5Ku@uwwoj*)$fpx*)je*vy0>J|vnd zAB1F>*S0K;J+Wzn-&|1YMh(rltUOhNsc0hpGzRer>{)8Y-Buw9{3IWZAX8G%mQjR2 zFoj^CSw97yhH>KWqOW37W7#nL!8y#P=Q>P-P#N3umuMFdRLa9Q>tL1r6Z$HIReE#V z8`)l@^5o^6u?+*m02=}^32IZ??735?wr!j3=t=hY{j*0-EMxj|cJqPbAePNGwY0Z% zch4^D+c(>cg`@VY{mVq$)fOhpvW%%(Bi2@jH7BvlXsqy>_cfIvki}*C|YoVYtC9O-BrfWKrgY*1ksEL8me3+X#99ngQ7PYfetF@ zI|Q{+l@r^OaJ@niFKCstwmwBS#=-DqrL1Se;u_!8wJrmIZXKbU)SpaZW|^uFZ-*dt zD9^+H;?~*YE0=PM>3v*p@Axanjx8>ZA6hyI4#4<;&o{pF{K514_KimjjEcAP_m5AW zJsTg7*Fb6B4XcLGnp@}@hb~?TRYMsO1;NkDe^#fk=tO({fTl`Z^(@Jd=e2bQ#md?S z&Z_#6Di=s*lI0}%UNRmwJ#t1w1xYp@OiFwd9t^cU#JxEy#@fiqQRcW{DlK9!$5GT9kCDsfbg5H!-?L;*UE#w49Rc=I*YP5) zT|L(>+kvkzkrmhr;fO>p76*b93&38}m2q?m%)@nf0jl57&{mJVln*fWEa6D7?C1Z2 zw2&Jil`GS!>E~=#c8;qp#xT&5z3}&=zw=rj$f`z85=xy^%)lI1NMfA}d}wJhND~|orinI?qsgEO4d>5A z4co@WgozzooUR8G5D$vEk*Li#wzraG&>MBGkZdqz+f_hzGtyGCz?nVJDuR%Rg|TS} zrf47@5*PZr9B_54U`)scV~FT{V#u3%Tmztb9iaaLi&L$+3%#E!*eUax?*Wv3-tz4l z%SX@enLn|8%gERpPaZuwapL^#dk^ou@y7Z6*Y94xb?f}4t5=84zc>-1I|!Ma61pAj ziAGB7Tf{d)vb~MAG?PWvCdmeRSHg6>Hl3H|vhRNmI`x9#`i5kUMpgB_pCW5c{8#p-kg3PCm$!%gt>rxC38gz%CG z;HA!yfuyr}Dq=*^M8gDnxwVWh%u)r9Pj+tKH__R7oYB6HkM(XE9zO1IzK&<=>yLYU zuj4V>=K15Gd-WeL;}GPmVa;{ptq0wDU-c{wE3f5oGZ8s>WY`4&pJ$yY8jZanEUw33 z|0*dF!YHJ{LfLiGw?BuezZgpTTXi1~R2)2fk!ylxvnDqw;HNB3n9iuF?~$R;hGBC% z8Ni^*Rt_4{NTN;|ZWm|$NYbrEt{KS{Yt7S?3brE!BLbE$MWw7tDQ~_sqw-!9N{C>U z3j%OL-G%%!G}M64b3_FfZpCdY2GO(NuDO_y+({_Kb{o5191`963Tc!kPeB%12a^)| zP}u=XkI=s7Rr#(CdwS7Wgc5_v(4}QIKSX=KUh^T_ZJLk1U$5u~(_y^&oiUVZU;}gtjHXPXp4SGQ_@kee0>OH_9 zrVZe^goGSPIMnl;x8hzj_0wSQ&2z1J(XcDMez;h#?L`U>U|?1h9DWjX^DVYphtap! zL5j)gZk?&vfG}`Xy8}wtmE%Jgv?v1YwOwq22r)SyP?dhb>v501XMjEnRwkG4!TbSw z|7)Bw*_GxVe-532VJOF}MGeo64FEBmS{xPY&R@QK?dHbKJI|cC^y-P_uBPaQ59_$a zx|^F{U2fX2p=tTm%{S{7m6oFzuAG>FO_|5-3`B=JOD{*tE|`6#)VjpS_>V5>s!&V* zwjWB43|(TTjIwz#lIN;^fl-?Z@T-K<%P+m6FOI>lr?Ac-vo8khh*?yX1k_E zfjn@ewW08?yFHW1+{d*7l|HLS0<4yS*eT*ObbNw-je5?CKjh?HovrqZyAbuTg2<52 zI}Y2nU%BnZunG!{$!t{OeaaPBZ@*~Hu_}?uQ+Ka{4y%Ogu9>q{uUS=Aq z9PtrER+^x6%9qodem5B7>>uE5JHh|=lzFFs)tCFuw|%$9hKund<69SQUc0uiaAbHy z8o?gZS1(gn-QECOBPig8JCAZLK&7+|4d3Qm$_g5Yi0 zXj&O8>}?7wiRLXz_DV{zuqIaqu>&*(=oMhokSV`7NA{r`H&9kQ# z&18~E%`>N#599)oh}L2jun$9nReQ9a7iLQ(Gp;f%bGX%zyM}FBEn#6FuQ6SVH{j#a z#jVt|-lcuHUCG)=zt<^+KAM=AXa<8VX*h#n-RY{c*zmzd^0TeP2HhO6CW!4m4lm4y z6Ca^FvkyZF@V8(~m&QXd?HMhB`m5U1`aXJ+;sX_(AfiOIC}=-#~}N6xfNPM*1b`|jM7Aj|deDh_TMT4#L)=i@f?fq50~Jj) zp^*N4SbL7^$Qgl3(uAzn0;J*BFy4T1-D=YGTTT$eBSs)YHqHp@=A(@=XOcOS0D z?jzd|#VW%8{i&oRSg}wTx{axJGX!QzD7sz3+9uKZp-@k3h0@YV)M>FnONWm}s<&!R z%fziFb`Wj#m5~#-GC#d#6+Z~}x0C}TW4-NrJYo>GY^D>51GwL1j?l2rSLO-T>*1_E zG(=pX<^#>OcY4hMSZjXfxS5Y8FI}2br4Y(Gs_UEuIuLzPGCYn$xe-K)S6|;%WrclNghSf#eg@>k@cg&x1elYwru$c4%BXnm=EVHP8w zTQyzDrsWGR{!W(OY zFa|FP6(KXrU!ssOQrM^m#==(JiAOoNAAS|W(E&qrRLtLF#1tiu2mt++B)#0`WOP#^ z{*WR_G0D+`E(Ccwqt($Jdc>?a_yQ?yH@8E|I@n)U)`91Ks*nT^zH1iN&Rf*ZqKzz!W7BHL+ z3}?3n4d-t`+XrSJR}rpDXd%i^o6IPRo}y*7jn+^!lx!0N?19;1nWFr0w+6lQ4-%F} zl8Nm`pc6!85W>+b{fZb3V0V#R%RKr3(VmEbb-cBcMIK&6nk@f`^~=a(Mt}it#RSXg z5|{EeHYH-ZXli)JQpfP{iPvu4Tv|GTr6?yZUAuAZ&YctBrJdOQ>Qw~C6L6m=&@wv_ z^!bt}YL&Uxnr4mBDt;0+V%G)}ujM~=sWhQ00XjcbDxQS~!5^1u<>@3=#xOa17|ly& z*Ue?=2Ci?j52mK3AVf4pY0XyIIo^PVqvi(z7JPEM`FI$L2#{t5fTv1UEQlHAh-Uwl zLhwN`Nkf-qE(7*xdMZVXomVyA@267Gk;~RMpnWZwQ--3Oe~A4gmL;m~v51CkZcZ?0 zq-{QeL|Op0H;}P(xhWE~rzMwKF&r^usc8n2E~qA->jJjTsx8Zcvozr9(##ojf`14~M4*7Y?FXHVwN@ zL+)-m>GNf$*S0~)w&g3g`a>_fWwx(!R7&=R5udYhndIP^zVK2bzPP*n`6kR+?b)*j zd%!l4A)zFG4)1nT@5S14mK7j%Ass`^o{=^MSQ@k@?J*U$7S^ zpWjbUqRO9RZLo!fZd@#MKk~RuXjZajCf@7nIjAe_<(gBLTXBit*jY(b5?V>)w}Ra4 zZ)>~U{sd$%L;iZwl4F5C|Iv>+qP8Xjf@uJ=B$h!(TZ%OWqy|BKo86-C`zzyRa&Qh} zvXM<_z||r)tk|cCK4Jy^4bYmctJnj$Intrgo-K2Qo}LnAAV1)2+H~mbh07OKRt|yv za|i*emOzk<#fA>m_Dt5?nwn2bnMuVbGCPrtP#_>ZD1|4+2=U?r(9@QZBVsl~5y^$15)e730RoDsBM7ritslJe&iV5A!u{?EkOvE7e2Jl@e`Jt2)nPO9+P}MB|S?55+K|h=nTpcV@%Y+w??OgX=_7)3{r^-30V-N;}lEEJ>L~1 z2wWK0>nvafQ1;t=(J;l(oE`HE;Iq)`Q6VBaF;f)6HydpM`=?cx*3{{4J=Wm5`TG!# z!(Q?)IVAx|fr=GVj$jueUk?O^ri-5Ij1gW(x)zC&3g}_q?GhK|9p4A2JqO==_Uzy} z$l3PKJbLov>AP*&?ELQI_wK#%@aCO>{pcKbZsy(H5AWFaork;MojE7VE031AC2X=n zK76DmAznWnW+ulQvUgMpMI#OM9X$3lmAWUg6b?l^XIs90uyajXTysbY-XQ^Bw;^1? zc3y7z7YF5EVB`+OG2X=D8?>X;BZR8^Paq|8U955KMyS-W9oE3atQ*Dw34=;N)Rk}% z^CcPA)!k2^ehI;*G@@vvtUQMv8d}?MwiJp>Y)-bh1e=!YqS#VY*VfSl$r6|@U1;nI z2a!2v(XitU5y%B!hm^X>l(iNSQ-_x67d25)!KJWyf19!aKx5lwKe1IHn&}3KtjmVW z0yGp|*9-3bb1s)wjj4PrM>6WdR`33q)KoWU~x{;}`=*rx2R+19NOrcVz%*mT-_ z5IoJbwdHcBi+NwZwe|GFyLS&CK3#}4G@M?!_1dim4^A&!zIplDwbRhD37xK`;*-6f zcj47%JReYfTaM4R9)^qGHJ`F#u z534XY%e^2x4Ms0#&Vs4NS#$Mf{Tw`jW&}khcxM>$E2^c2u>}=#p_U__Iw4hZUVrf5*s*iH?d|7YyZQL${rl%qEs?rHB%eRG@7kSfH*TDBa0XTN z+=a`RN6(GE*w4fEwZ^A&z#KlgeBA$P)$2_{MZG6hJq;Q+_1ad4aDY;X00{Mn^vuvr z1z7kchJG=8@gr-PO{dHluIc(um)i)dg zNKEDy&y~kX*`+3g<2e&oZv5&??%AC1C=bu|JU&~b!>a3A<5!M=ciHh1HM7B`3C9p| z8rj|cWiR({#p}3u58n|XUjBwCde^$5reOB~9R{Ezie~4qPS4~5TMTEo!E!gp8yz9* za1(Qq5#D8BxX{}UfXvO0$$Xj(R!UGwg=_k)Z1xX={l%D&0XH8rJ>sySMnM$~=Fm`0 zrJyJR`db1^js23@FoNbE@MO$_tI^g?W_wg~1@~)ctRnz`#Dt#+&Vy$h8DL7&Rs7N8 zNsw3nJH&LFz|e?~2vj)%CgKn#F%FjcH#Dgauin0Kb1)tXb$0G`j2O0?@4fWut2=k@ zwfl8_@5$5WPG7vZS7~hAyXEL93}Wm}$@1R)hYsz<{?+ci-8C1TUF914RzEB!>D6c0 zm8VR-l%?inns+lj+S@e7l=D`yR787oN#wlo;I z*#_)OpR;-y7&c&XM>uPi?)EOleh3bVGpF%-(9`dwYmC1&7Mx-}4lCajrnjJn`v7D9 zOLW{4_4SyK^Vr>A(suSF78a^DqTe^8GI z#$iqu1;3>7hoEu^l5co%MzbdkJ$1>zx*9FyZdV*W>v4+t9WYcJ>WFv{wPjw`^Y`&GXNI3>t6MuY~%h5o7gDbMz{5O9rhY!QNV=b)yQb)M}&fOMYsahBD(ueJ6t z;EvYhW;GvrmzchcSE|o&dski2a^HyA+QUdAk-;z|RhkMcG8b?rA_&`6bFX`Ssn7Hx ztmLWPLyH3KKIqK%_4OTmRd+@by3=oE0uEQ#Zkc&54SuOCn*mJ0O2rn$;yorRrV0`& z8+)MgNa;Fhz=v)%LUXq zVGO{D!&_fyDX$+y?sx%6cKx6Xhy=tyb2V>`u+V?-{lDkwq#(FE=JR#zUaQhoW3`$O%cwSNM=`pDlTa6k z9^`uIu@=-Sxm$GGsTu>WN#V6={qXu?yL|#3!O0*X{@^^}AFL6yF~V8XV3W$$CB$5P z9?8#wDHzztP?G3|z)dL5VT3h?wS2mMpp>ncQHp6PR0+Jw>Coz-*WezYA57urf5I+LO^6Vw8XRm(7 z+lS}HEiRvc^85dTv$mmg=im={xHQ?eC~C5L$#AFrdKx&f6AIV6LOkscH}Q>Xd^c8^ z%$e|<6}fvE6r&K;H*54!et$E5kEDb*p#nDfG+r7gaQ?caF}ijn5L5w7Wn@9KJ96_; zA)~iPG&DCpDkdi-25-de5k)?;f{6Sj+M6z>_=@= zp0ardorjIjo;=yVeDBetH=c4cGo20MbB{G|=&Ds)fAE=f-$Io*>D4zSseCNK zlBjJ|sd2Fyt6a9OxtFX(h+oBiUCGGgc%KI%ZsHDA5 z^7+|<4mXO0>HTfcfoRgXXwZsc#VB{w#=<@g<2j)Fp&WubYhpA;3DjspGL$1=mFDxU zjg8+9s{wdhh$!L+1h6Pk3e1DJ)Y{}2h{Cm%ElYo?`|ee?7N#qt*Iqj`(9;QW>HRxRE%TQy-MHEi%9>}-C+fw_mo2~3!f!j&d8g%S$UKj2 zIQ8ev(AAbZorkvRqo-zYt!u4M-0uqUyJGdK@!3;20jt{vYiSlGKg^;i@ar-N*1)XG zRx|d~&LtgJ5X)#)hW`cy`YTzuEA>9qshmrG2=`b+p{&);qL;R6k z0JarrW%N!!*qtGo(1<}pCll6q6QX2X7<=;K5M<(<&-n&2wxdviG-n_JZwxTUy(Ukl zKGH9c75xnLZI0>7}}q*23$SRQhRk6aY(rQ*hm-suqE>7sw?>r>LP& zPK`?Y+e_bsFX8v#2D3M%Yg~(HvEb~n)9}5L{D%PhRZ$Ygp_r^-Vk*iDJwi0fgW|-w z5;8j|f$&)k`xmp8{$`gG z`XF%!`va#myP%<^2~dhK1j*J+Tw`6DK!vRxAm3jaiPZwqeKfJ7ijPgiQl|Si_{dXG znq0$&LL@$6#JBHUVx1(Te|+5N-JH)G*Dl=w&)?WEGGcg?D5GU~*uV-310AKXQ7e~8 zxlv7iRP$jaPBVLZC`A*yk#yzQpPv>MR{FAp%Rz2bH^>dfO*xR@>l}>=*HP9EEc&H3#hJ$%ngQK1^n>$)ZqMpw z0Jj|LnsH?zX&wM6yo^Az&Jw$_|1%#$qu1i?X6u_t{3s9G#o}NUM}wiHBcxjV{zw6u zXOO3Lv2jDw?D^iUTNg63~)aVaE;Rg7Xrs)p@RoQ zvEzXY1JjLai?rC(-oBBBa}a+!duxVsI*%Nwanme5uW{0Nj{G!`24?GOTrG!Pb{0xJ z5HB;XiqcUr`>Xh6P(4gn;e(3Z#q#6rcsY6yf&)Nzd+JU1BAoI#u*t_x(2Qst8WZtCpd7)B;X}19{^)fP{GTo6PiOh z7WIAM&w>6i#n!e47Yrz~4x-Mb*5GsYQ^3ukne}#5F*HrJZIuQS_=-oRt=kq^_g?DR zxKZ*Hn4|#QuH@-2NuwPd1d(svEJ1=PFRc>Is@y>`5c9${u9$8vUcH;i?Br#$<@|^4 z8ml(h9YqaFyvm5#Qx z$^iRfXasdxvZ6%Hh~jX;MyP6K`u3SfdqCJ%PKo(MVv}NtLm@uXC7enmK8PZGx*w}7 zUG^-wh`mL*L5a;OuW8=H!g(l>gyu`0NZw5gIpv%W9g;`K!$UuNFV5kmp6>q#!$ z6Bbbp83&+O#zUM5O;#bRg)vN*L>nM6DD;MQ41ZWU-i3y6Dx$cU;DIcN zC1GB`bogeZ(yAZ34n`AvZo?}nH1W~W-Qh@vA979O0z^sCI@T-~s|h(wI~zX`bW%sA zMxd@l=2e}mACMK257z^$Kne?))PDdovdURaAaABVVD01%It3d#cg?m(eeM}k^-pZ` zx3{11rgsdbR}{WD>R`+re*>ZGN10z4bA}`rLUgRA$0jaF?2cXYbb5tI}C*5K5}N#=X#&i3HrMZ z9Ns;=~N?Z)lf*CJU+FLzuk zLs2CZqw2CtmM$B-f>;BX8;qmpJSSFK>`p*BB6=BqHY zmpD_-MF+%l5{31w{4(@o~nTXpm&1 zA@KTiJ%Ics7))j`;|`j+sn)rH>>uJpK>boiyI)1)PYUvNekoU{xB!iH-0p+{3MUPL z^fK@N8QbUNorB;4P_O);pE|%*<_8@!bcRgm$`ZqN2wwkSjTZXbU}oMO+c;c&2O7Z7 zo)tau-{Rqi#~!}&O7XQrhl;%86#L_mxX)M2cBQ)d`if(l_U1yQ4~id@u6o7r z&z%Lj^|d!2!GOheFRFV+!wqGjn+hK!Rg4khac;f0I97=46;#Nq)vO=~msFgr+e zy~`)0{Jt_!LRt8#B8>gEdU+?ur!g-ps95%BLE79X@&)V^(AAA>#)RfE`vIdQH5)x4 zt38H(U`SQEOecjYyOiMvw>!sE`K6jd5Q=-6awy!dPeQNaG9LH2K!^`_Vv~T>2;mE- zgZ4~Vm$&?DGw>It{x%qK7&!{?GA+)F)e%5QLh1IgRlaY8gMq;Mi#9Pri{w!uU{|? zTT&bLwn(jJ?P4vNiLULZ2!my3p#FP0()XKusGE4viaT*QuBPwt&?77az4 z7?9P7lz}`a7@nm~BEOrW9nS`2+jz9Rkfx{+98pMPND|TpV6qU$1(hI(hyZb8NrUKd z?8hA)r13alp!DAni)Dab!#NOIUYb~eH&tSQzxn& z>VC6q-{?K2U_`93uMxAm|LBQ}`{#FUYyIfG_by(%6=`j~)iE(~>&dfspMCh@t)OAt zT7LBO(Hn2vLPzQrnv}P&;yryUy(Uel@e*r3^gITokCa1FPlKYt^Y)~ts-ySbxxk?q ze8KY+dP?|AP0WGOUtHL|xO#ugEK9R5WZBal2nBpF?$}(T-!fZqBsR2BbO^>!E@U9Q zn}dLv#Jj4D;3DkgF>O!W5^G*G(2+Jm6-g^v!x#bbMq7SJOT#X&{=3}Sf{uvPX8?Gc zgmvTb4KVhB0HlpTCTK{RwwT7kIox=94n>5TPnxEZXcIIZ60LsBvjuob_frB=j6#|j zw1ax&ASKqpf~E4=UU0f`EbP@;1!3=hhpDH(DxHfs5V<1T4zL|L#<@}#g}9^WUGLm| zaAM@%;K6RAt?ORn!J={h&Ygn?m#^NqedFG}TZUTiawH()a4eS( z$8#wLC5!M5)f9t1qH|Gt$4&>XKeIV07?t5QmMT!~!HNlHWXeVg0|TokfGcMLY|@t< zg%{_KRO9b~v5i?Y!}L%CNp3_kYB0hlm7tQ2@Mc`e+P}3d9@zIdqs^uuF1my6q~mNRJ)- z)c1I7^ZeeEnN7J1kxhYX<|b9SCS2Il+uPcD;mya7PoBImJUuYId-sJq_aEJV^5nvf z$xWLs9Jp~03FQSa2b(Xf8uj)9K&_3dre;xr?97bqnH;t!e^81IC<(n}(#tBrCiZOX ziGecrkN&0?9m*MocLqFts}kF&P%`{4n^Rs*>;QSNp&>6uNWKVS+MOX002`;yDy|DK zPC(|!ne#I6*|1WdMtInqv`k)y@T#P4GMrxMPL573fg2ZNPgr%;Lo_rVZ<>U-Dsq3;vQ zC2#x3j-J@Ql$|q%wr}@;{QmowF8Od+21bU{C2V$MgF zL~AprU~otAH{km7LMtfzyliR!By1Vl`Gfo*dZ>CV#8jYpJ-HiYKlm%A87Z&vk#Ok) z9>;u@>fw(;qu{YO1k|NEEeWz|S_>d|hy^9+FNTNE48TZ_hzJ0VDJIkFH)d4sY0BKe)f6!+7u6CrBBL*|Ej+(#YbWL&nTx zXwR0=!h&)3$-7UUK81`w2BmiHG%z35X4C==%qvs_1GxzAyi`9boul$s=$P$Xcl($N5gtdR@*ic1Ut~bi>*_nFL`DwyAM5I|K z(>&Y41Ex3Rq%8!sa0Uu7E(vpKW`Z*V(Hv*`Q#w8}xlkQn9|UVP%Mwl^Ai!g{rsPkXfHieDg|=Nx za}v6&_UeM5g?lyxm3@0;x1%mBP=0~2gruOR1cBkrj8cB_5>3;@VY-O+Vh3`AQuYBJan?BMW<5#}=vZc4F3t|N;pMCuC zTW_sQPc=>r46MBU{zvbB`svE}#vL0cCs*!&=e_Sdd$w}$_|ozD`IWR~t=#(NH&?<* zHIPiD7FQO_WeJV|OD-w0)Eu7DNm=h*^*K5`-sve<8>BAIunNZ4pl8!O^L^JN31Q}nDpC#$gp@EdbdXOJV>3F z*3N~nvYf~Sl3oLk{SkZ!#gN9v!MePhBE^&xvfKUrL1-lJAdki5TvjUD7b0~9Xt+AL;WMRGd6-RP2H`2Ohv8M zWB$?Dsm&Y31@3zbzrXNb7leha<0Q&Fz3tZByANLP=- zuVj<4N87kZ{hY6TtewBo{-~XQ)XqIpxQ*k-x4quqep9&;i(OG}w)elj?fCdceK`H< z>@X2bR<$m{FgbGd8uc&f$ke`}ju^hV^c;N=A0D~tO;wfL3)!5gN62-0*PI(VE8&Jg zJj(Aq=Tr_}C53$QDL5G~qF%r3y!>0WfO4mq;}wtzWC=i4vx!qPYdAek3e-K8ve~gr zW;~l6&tw`nb2GkntQT(et)_t-mS%J#jR}0>(3(PqnM#30;4RsH z5X>|Oa<#ScR+i6TnCV{wJ$0ejT@PiQ{n!HiN`)u*q3?6jH`~}(cOcz|hIG+Bt{0^P zzP^vHUcC6$TYaa_T{w5;O5gog&c3p|+;{8v@xJcCw!vbtZ({VoflvEBE&GX@xKr~X zS(f}qxw7?4?Y%|5Qn}cLXsN)dJ_F++MwFtC7mwgS$}y@OI*{jr+)x9=Ggsj87d!$= z+542v7e~t3LZynMeRlx)=+xb{OlEr z3q-j@ar!T<;9r{hUm|c|M%J(}>+YC*+(dFK%GjQ<(G;RWtSM(ngMISGO;WL_T= zPtk)VQCJe5KyfC3`|miifEo6&@cDZh~sKEP9&)g2&=v=WCl>5L+1yaMl}`$Q36mH^rGy|+3Z0G8u0e#SfQaSo*rUw-jMkm zG7-V8Rl=Z<OWevxexO-)2_`j+vn8rxSb z%h=u}OP75Iv-;|zfRq*9gBgnzx|B&qBG4K}K!ArJC*plF07MiPhQEEjjY9P>UHG*J zgLx4A2)>4ryLz6=UV`Y1gRExqW(sOrI&f1__B-q4Nl_U#+=Cd%a8P(~7_^FX2~k-@ z<`wA^61=iR{g~UfGHmYXF?+7!fht<=M1G+`D4yZ_^`L)3+X$|)X?fe` zuEJ$tV86}G%b>-gQmPXT!fL@TZ2+#GHUiGxKd?eS)%8CU5luoMEM|g6E2P50VN*$B z0!0)(@JV??TGO6L z@_FSNzdz~6zM=+M>F$y#2x&DdfR}c8bgs7q;+gGfWfuz;R1Et zJso)nuA91z)F$l$`!lcx&Xp0647UgY2?Z0K_EefJ;NtJN^{OiU8?;7vMN;+%r^wJU#FPo^@4uJvgA6< zFb;#mOB$55+%m+x>6Oj{hja4}XYAO+fL-6+y^_i0Rv5=@r8o%fwUsB2-hK4+>B{kY zZ`^zMa0Mi@6`yUdY@eL$U0E;Rp@UKNLf$8(x2w)g86AdGAfLk06>>O;d*$X|wB(k& znbLBb*b^QY7+m#J1=zjjClPpFSSGzJ{khyuOl&I&bgvHe5$2y*A5cp}4Z78poi398 zV!F?^p^b88lDG6aqJ_37<}enP(6oj&hIt%)FM?cY0S@}dm_m0`7<{8WROM+ZM*96z z6g?X)r6Gdj5p5A95L<|Dpk2sj8#9?{+U;lh$Fctgr0(sG8acSxQkpR#En-P6w!}d~ z5i^gVnST@WR)Np-M779X0J5FfjFcT25y;)OMHCnYq!~o4eFOdD4e%(3YqkS^2(N<4 zDF{(@GR`eQ0~Gu z2{K%cfok|!e97w=;0bh)nmi9g@h1{3{HkExIpdV>JQ8~NA|G)@S`*1D8)OW2nsp|o zrcD0;-+?7Xn%~8)Rb6c`gl^FfFN1ssa(r0afK@kP-5-<(xmX5=fwKeu4x~liL1K%& z8gT>_M|KIrsfyNO6BaaxtPyTR{0qP?gI8Mlo>Oh2WyAQk#5Jk*Xusm`meip*pY4(~ zu}>3=qo}Q2D}dn*KFUQB4j1i6>3=NM_l?B`dvK#BVQR0-*^k(hZ9~fJH&vV`93}q* zCh1pA1z>ggT}%Z;*i-;9Rf%(~fN{JXzT}|q1m>Y>XOh=H_|DkOt&y3-$CkD>Zcd2z zeIxsK?;crLS{h;WgOOaaSZr(@@z@6=9g$XS931fo2qS%Nw;K+RY%m55#~A??VRmG8 zRX$zoQ&yjy(r2Y|>Ls40a*Rr8a!s1sTRt}|;VC1*RrF+I&{W!!kjcpZ~s)# zb4&VR&K#%G45J5&<39%2HV2+7(N@Y8n8u^KO~TdCIjP;d^)u5VF>FOJpm!0)rY_BC ziD5n@3N%jzy9v85p+Of8oX0>kC~vwol_MV{)it6v6YJ|6p-GMv>ObW3WrrihXuLB! z0Ky{;9N4S4t>ykCX&g~3@-`U`paMUO)AJj?hhrmGPxwa;4f+RqzkKi8Klt{SU-~;* zTB1?^$6tK##kaoYKY!zfzp1{xzPZ_-v2s>pqkrqs?MDwC@~g?@SN^a5TSukF@l>Nz z8N#8uo4FE7E12)7wIaT>PN^lc15*q4upcG4D}ru3#Lx3jbc(zb8b5;_S@g@jub@t= zggWnkz?02d)nV{D--vZ+Kgfj?G$+y~#4V&c*)}3B!}q(eI18LQ&jIZZt3M;gyat91mg?#*bnZDVkgmfNOE%>QVXU?&SgPEZvFrmO)MH!XeEkMV zhIbSpo~EH+nrWL38=5~@5YzzL=hPt4oSZJ3O)~NwuaiJCOIj&c?ttF!W^_1-_wo+- zl%M*(?)$dyOX^p>IdkE1=+wK%W@Ii@?_`}&Xy(_x`OUj`XYxmm%nUU&%zW+hZ+!lp z@62FuV&>WhpMCK0$1}x=#s1dC&d!+~dlshl6bduX-hDSZ6RkaXWw(U)wce`s?3EJh zboyNMF5dOYDBd~VqEZ8gZ*A!YIoh;*a_AMx~0OW(grf);67_cmC@D0_oo0CpiJB7NQ(b6>Z4$hmH-~VZLRh;fDp8+r ze`tT{U{Oua4pYr3Dxb6JDOx|>?yYpuy)w)@8J;Wh-r{H=Q-XKG(ICH6V%bzbDh07} z9!@8%9k6@xAN&f&Y^{K<`N8MK=19#ncm>N2T^H+j6p(mq z$?t4{Q*6SxGyqH>&qW1d7)CiW8%w;&1-=_kR47pNNB7wutZk@V9^X&;PmD(%C7> zoQ{zY@w?yq-UV@;C5AP}Yt4u2b~>21s`f6}gaA$w0gr>do`zr(oeFk1yi+9?D4QPu z{RgMcJCNkeYMm0L`DFnch}-v8Bz{3Bt}O$~i5&ht`~xqdZ@l=p-7*KEBn0jHP7V?< z0l!2o^pOgb88QIR0JP6J3@VpctiN+O{7 zu}P#pn!t7+@W_LDgOiaVJ{fe8u7#2)Lrq@XlIK#RV5DpQdOxy(&SY}GjDHoym;TSP zCVD-7B_fid6^HCG#DV;lv7w%1LVqU&oFkI(_+^3`FDGzva4+(ObT3F|l)$Z-I1J)^ z(!}V`eeu#vzt^1|LJwt*O)i`T-;5?#K1TKU4d3_1_MbWkqR{@c$G2_%;*(FVPaNwR zc=y8(zxH`&A)5`IfBN);cN&t=Qq6Qcegay8UY}_B@)-B!0QV;$?qLVF`TDVe&qMEY zJZWip((z8{^MPa6H*3nS{SSE5megvk9VzX+%7#ikXGtEDc};ptuik&&$Lw?VY$pNk zYn-8nZ6e-6;uxNej^~>9%u51+s(vRO=StWnksb1$l=J;}v|;F**Y}9u1}`KCh%>~b z;pZvG4~0THP)G>(htHnYo#Uns0f7;~PUa@r+=FzUPNg;}Lz>ii6>)b~@%N1!-UEiw z9#aKNs$3F)Q63Y6l7Tfv#9OZDMEp2tLDwOKUxbQQZpZdbQEG0MrD!xAi=}JccB4j! z1P%1x{P7gZfo7}~1j$|laKhGDxo$%|-VuUqh)pU25Wy@Dw1Vi?Z=)uCj?wO^h7i_C zn;J+pgfyuqF%3D3I`djZ5%C%Mzl-9+zNzVLBO~I()Rg$v>#x7^ir5ElSC>eLuRVAS z-7T@JtxY_5^FFXDF%ReGX0zgzl@(F-`Al=SxVxOSRU#|-yfuE04oNv(qxY512%}*B z&x@PXm|+(8JX`r-^s$q(#@SKqD`#WK*2;&g^b5QqWPNw$9jx`w%9T-o+oIg4(?ToB z+0M2?&OoVlW;3)UprsczjA)|Z3|vZefxsZmJ)ohdNm2-iJ4H&` zvW`X)_J@4NTVayL#pDHPHi67uKLjxZj6<&VIK%|;_76nRtEFz;EX(EJEqR#l_`XZ5 zptlx%(F>Qmy7%pip6=?3{`$ARb?;uZ{nV-G;kLHuCtrN?i(mV-=;r?Zsj2A7ho67= zwXa3re(${~bXTH@OlE(yoM+XVx@_yUCxU%XIi}DKn0?j-RKJ7y93BV*(O-6{rwwvb8P@C{bCEw3liw#oF<~bsqjZR^y{HY)a`ka zVcEK}$FCdnlstu*rZ(t{k^;pxFx6O&1;7CbydLVoOy(lsbskdtn1gWm2#|CIh^k)+Tm~KA0y@4B13K!Dp(YGNiikuH zf}irCplZllp|p%0q_c{`EyBS14+?Fb}g4Q}Z-8GdWhbG&i$- zY|~(`o=oO})aSeX{(MJQSH6(TwYLZJ!54cB#tmbg5AW*JQD8+EsLRy&8WjmrnxkU#l*!d|b(SK2gz*JCY6$@? zxI?wV=kRhCv&!g4fGa`6YLpDfo6|(Y5&TX^QkBpom7O29Ym$uJz(G(*i^vrW?B3=Q zEs~fYZct)qGJsAD%A6FL!Nh}Rg}HPHbRiL>K-qz0y%kVQ8^0Q@cp!m+0ym4maq;YiQfU$Q3gz~BOk&&rlTieuPp)fVOurRe_Vq(vp zsaQDNKUKR}u7%ZIU;h$0g$U$^rhRvl&jaXil^bTo>j;) zWedn?DY41-!SWp@wrAN;KkUZ9H%d~;&_+-nM5AgRL3a{7;GU4ujG(+-wT^AkaDGKJ zeWEc`t6On>(BlzY)ooGD5cc#GT!AH%YP|udMhIbK0GE-IQlM#Jo=nDd4dsFv-r)a# z+TQ!St~0w5d^hLxazuCt4>>1-AOZn`06~BNK@tEn#Y{0NkP?++NmY_6*yVDS?Q%I+ zmAf3;o?6rG?&+THS)Li&Jw0}n=TC6=>NRV6)=aynf1Q24`|f=gfhtO(NDG7@iYnuL zC+)M(K1o?`?(4;QNUWY;>jpdKCuKM=D7%QJQg6W&b;!)~&X^?TkCfE30p&!^N~0@I zCJ&?V(*YQJP$frS>m|VCvc*Ik{2f77pkb%R9Qeh5LGMwAee)G)(?+dWxIg}E;rjS9 zh4bTEh4pbGlbI6>g}ILL@j3LZb8F4bb1SQ>bBAYUmY3`1>K^MUp(VH3kTPjzq{?VX zL5d4h|InbAEX!yucbkxHrTUIV_dxdYtYC%|IvE_w_qM1N9mvQ#V;Y8n?F!yFY8pfD zOYP%YTK^Oapr07-k3P|CS;94!B3Fcj68W4P2cn^QCt$*R_>s>m@GC*KS5qRk(s@B^ z&vR6a3HAiOKtv}gWt7WMtCSjz6tba!o}s<5sQeWq%Smq-=$TmdG!d5q6i%&(Vg^4{ zER2Y_G6#(dS?_~zA{+BahK)amq>5!3=LF*5H1NEvBw$0@0QtY+iNQYk1>h6UVWa%a zbZ28~L4ElAotsxKp4sS~npyz*uyCrqeZkFHIZ0YLe)8nP(xF3ZYoiMROSa~KK{gC3 zq-wmQDhLHM3vaLyIy>L*M%aB8Rud^K0#=#%+r#3MIv`mLMY?Y~EDc3X_xp8_5Uud_ zWxkMyj}aw+%NvlxgQ%-uJABfRu`OZa&mImlbDC;eIAE7 zoKi@LWI0Z6p}>i1MJ$Wj=7m0C;IyFiVMn_UnhmE?e98TGD-LtOR)h$4)Pws20X!}} zq)5p#2{mnMn7C8e%q0?sEgT>~DeGtnPr^$PT^zqNF{*QAfye$$8rEv9X1_So;Gr$t zEig0g$Cjs?Z(hB4`sCWt`JR|CTG!Jvnk$t?u?{*qGdDLnJ~T8v-8$O3%T%=(N&e;k zr1*&MH|RFuuppWFg65&bhME-S2~8GBZLMUK1`E5>GPH7kfX&&{hWlU>1W#VFoIJD1 zY2PN;PBw>hD~Z+G!8mM!lmeU3Xp{qORA4=+ii3>;MK3;^`Bw=|nRJtq2v(K-YT_>{ zXcJO~mqY}tG+>|vbe2mGDnjyPMnx+sA-lnIV2wp=LW`(IY+Sg;sMQrgAx8)_T`W9+ zd;{IzAO`+dU=)6RcYvwsT!`Hvdz?ABdgS2bzQG1bx(#jK+XMOhZE(eJdxp{7ef!qM zi*2{t0()%h_X3;L?6G%Iw>wMW8%%zIzaqA)M846H?|torx}89X!=X$uzLr+vx+z#F2AhG9WBm|2h*G7fgKqLsGFeEa4&%lmdImer zXHt|TL1Mt{iI?CTaiF$9nheMKWME+;FO&}7bagu!6H!t4H%)v?tWk|UdE`j*=*miS zP-72Jjoshx*Vt>#Yr%KF)?!8bZ+wo3wfmdQh9i%uvGJW(KE1a1mz?wbcMSKRehc4A zSuz|hpD`8rmmw?Tq-_zE^}24Qo`3%N?k+sE4t(#8eG0y(K>7@0+Uw!!+y1zoR{IUl zhJ;9+2jU^P$2<<63h^VJ>X{}F#l5)WWaIH)k9Rkse3k|@ui#`vkO9Wp8Vy7dy&6Sw z)ycvJ6yk4U`(ZP-r>&q>}!;=lo&67v#>n9hMmL?^vXHU-T-+%aU_hfk3 zr`oaZ__hTPm*s2Pq)fAXT_KPPWwPI=?Ec1nTJy3q+_OTN#gpA7)?iXs_&U%KgtQCj zUOS9lkr$w9nf@VXA6V9%Ys*N`@NKAca2Z1tAsLMftq}7C;XZZXz=0lwdwSe@Cumtn z%sG#Rdz{kZk?Ro#MBM55-m#MrBJYk+*90B0N_eWimGIr<>sGb6RuVzQ-y`-g6it}Gv~L~ zJNNIO!wTHo@s^gkm9@3GSgGV!#)ESqS8C7q9T*93oQ$$-G)&)I@P5(T?BN5g7!Xnc z_V|t_4D)_Z!%P)^EfSFuQ@EUBU^Uf`7^w!n-gQ!Z5pTTCGX4c;Pae~q8_Svv@XxfQ zbk>rq_JV|hZgs<6NYCA%MlySKdkWf7DVxBKEN=PeO}vgw0H*ElqN?u9BC#rTW~H@G zXl+ergp8GK5$w=tw%C)mMO#KrNDfOvVv~%fNq%F4oG@>ifCiA06_<>LN7wTk4?8cclXu?!={|>LBv=A80#{>6rAuN79p^{u$I_aCfb&!TH6PPWXNES{vJT! zL%MSw?WO{ybW2L4u-trvd(#6t33>|_lbtI~wh?)J36TB%vx zsiY0JpYwP+N7Ik%VgDTVS~1+4%Q~{V0Fqv&2sq~$Rb{HiK}V;@k9(c2PF50(ZWr78 za^7KG3a7R3n!u~FCjGhY9x}WOadjGs4~GP<84I#h{-P@AOFLNEB@AbuDkjb*)U1Ya zOwf$r2q~N!<*$lM7J_M;Kwd@kIT$@ttV2J7ScjYQ$WZ?uFaWwYa*9MIlF~2xI8ehztq^cKPgH37mLOHhZYw0JBh^p$+5Ayxeiio?Tu5k+h(Gm4Bi&^ zf{ILLQHffAN?riCGkXQY?JnhuKl)(k&U!+Y(d=fH#I)g+j;HbLmQgA zwsP^JjrzvkIDVYx?MidAZ8kLAweJQN3UbmeOGUkizPZs#7|8@3e)Z5F%P7^|A0H~) z@twE%Y7PqEGf;B0I(b;L&o5HF2qiZu4vkk?SVFF| zUWcxl>ptp#X;?RGx&66(3+I(I(dwAq*f`bn7g#fO-*G$GjbN z?yz#ize;c$$W(ylUM|1S*@rd^_xTOxT1Xc;=31NNTDX!!zJ==I(4j*EzsR>TndfkW z&5|!BfSi4B<%-0T6zlxu)-n#JF~34daW0`2CHPek`4*qduM9RT{5fNn(j0>7hFj>N z-j1D{?t10nbI;yD{m?fva|H5;N2F%H8RYuSj*cTIHa3ndA3nUkexwOY%wtD_8|6=y zqzIc~Y)$roEQDDEoC}i&4=~ymhP_Ad>3(Pi@G60MDk#inIxJ5)ToR#(J@OYQXxb)z!0S53U~!G9WW+VB=lsFo>Z(Un5F@9IZ}isnL#f0_2q$B(TS{ z*-yu1Gp)2K+XbRy3TJjOP6e(B_zqMtQBRe*`Z)Fxi>9GMsuGpw6jh$S3j<>E1Msfe zruQ-Nw>j|O`?z^nhq-*C?zXFz+>lKdWz&flQ)0f9%nMmNT@q$@IC3;5f1X;0s!^J@ z`|OQLHf`Tzn?_sH9j7*rF3h6X$#-o%c;n9H%UfIJ z8^KZeNICjgU#497i(R`fLpu_g@93$gQoTRW27KfT+X;wUIe5aX0*& z3`7lg-W`BQal!Y#e;XE2*UNoBXnEC;p zHHUaqoSLSXzw(!L66enGz`)|T=D-l&U*Y1V`b;jDhgJ(DMR6-0s z>ezBU`13(7b)m0O!8DjQeXg>7Q+9LwwU=MGbL-lrGmV*9Z%d!Gk2d2R*x>B!QJC-O z>F(~Mr?$3^9$Q>Id2;{J{oDLB+C#9<$#L1waMs~RMa(9uI7eh1km4+eGCpj%S4w?K z8Fisuf(}6@*}`WFTt>mM4&Wu!Z4Z>q#twMy5#7F0O|8dJ7~wkzEiPnMNnG98bMyp$ z*~2nxF6cQ32xC3RPwNvHbYUNTpjl{`GYoMI7&2li7HH;Hq@$=??W<4fmcYaO7DV-1 z5G?HYEr?ueL435C_9Qx)U1>k!KKL3R#BgVzV>S2IYcBy6yLw^t@Zr^gk&)E~r39#Z z^?ZN-YK3dYa^LFdbLUpqmzTG;rdET?YBkr4MB?bDwV^RQlH(HgoCsVCR#Dd;bL484|E$XQ=<3tlC+# ztG(r5VCTNa^p^i)2PoyxZ8L3*fU$y}@b=XU?MG;ujD;<&14BGjB@}xn?yK)x(Ir z62Mh|5H=SW8DmN6GeaY*H6z1^eeT@Pk#m!gZ2JIee;>y#P4~S2_G=F**B)`Yv~_Wx zx*jCmN-C0b_e{2d6W4-p)rTV!%TeNjR{%-ZVk?IC6fUc*D9}8RW$E{z_x!@X4CJ&L zlB+>GQfA>EfRo|9G*|ReR168W-UGr1`cZ7EB{(nwP*G)tcA)`t<3Hn^$zxbPAh+g4 zNVGC2LD=TjX>_%_V1b;U$FY}VBlGje`iF;)o$Kp6hHIq948RM=jvqa`xjA`ka$DH0S-MtW!R9++ zHk&8|8K`AbX5LywMboA)Z0g4wdIUR*gpBIF5>E7>%Ee{79Of4(+@!^YB!Ps#m%y8@ zR#YowVhL~nObqQ92IfW4qA+rIKPGbjd+=d#1;$PcHFkJK8RY&{qPI?{^u_D29$dju zaV(BRjN4waw{^MODyp5K8+W?=&@Dy0T4UNH#I_S6GpH+!ZwH@#@&2<{qcf;DCpy@u z3TIJ_p*2^CA&%6hQDDcDQMZ|x5$AWK5LH+Y(U}YzZF?C=`z4xo7?-~tF2}X;b=2%a zC-I18XGCy&V9Z_qs_@(V^@*UrKVMi_IU85{=T_VJ-ot{nfD+4D09qR{U`u`Aoj`&B z&~7u}leD(}1d(!YD-b{O&MV;dyoi_#Bwcv);QnnQjSL(-xP-gWOIuxCOJ)YJZfxn~ z=H}AM!orCYOKFUf$Ct*d?zzKuJIxqmT_2@|-Kx_JzYhvJAOPb~u*3jy_(@QuCxIz; z2jN37A6QkO&O!fFThg6w;5(|KdY1eeOt@yaw}X&N9gZ#UHer8|VXKu?oR(~G5G1Um zKK$5LIv?Iw6IUG#%?|n;gxj+!NbBIpapL*Lh$&maZrPDxYe?>FkYNKP*Y;44Sy4|U zOA=%9=ctemLs#P%+l9Z4sUpxO%BvU7oLX%g8=GmWRAw>~I%93-Sh+m2w6ZcYHwhxd zj2O%3`)2y~HYB-Z#F&vt8(C-nReH`2yb5A4D24k!zv0gYRi6l|ypy9Tg zhFhud#*Ad)7$MBq0;m8J;aRGW*8Td3>fk)0=?Sv6PS|@Nuy<%@gx1?pA60@n_|FY* z-0-GxJgE+xZhcPB#)XK%x^j-_n3(#HRk6I~-U{*-;Z|JEEu0Rn|kc@&(LB zXo8R2n5Gdv2$ClcC|qT4nzCcm*VlN;JDe{li;x$?)JTjAzoB8tk&K7^M`{@Z2@06) zORRC1v9}FaK@gXY>Rvmh6EghJEee@}fF10A8Sy+!A)UR79SWXdCVbr7l3BGKjx%PoXql!I5r}2DlIHQGJKM^?X|(t(X|T$18Zl_pIEDZcNDGLYMMw$ z4Gava8HNkO#uC;6bg5tKOUzapAuT_RDyNYr!I)H!ptTzMyNRNLBg5&s8_e7w%3>ad zEs@>kW}IfQaH#Sj7J)5$an-hL33D@Wa{R7@F$kz`_2<$eG<|6{a~5i?ggU%OsKbG_ zl{bMp+`e)7-0-18EA@O4c3#0rtCh38y(^n%&aAY^W!QOTZE0y^BfFCQjCMviMjV#6 zSvk<@U@6qMHXDMHwfA!8&%om$cER>;lmKSJ5dSI1HP(YRuIkRD3q}VHx~fp|R(-62 zgT))U^fG6UFJdfu2%GJQ%4k7To+8jacrX-+0u9!Ba(sNeoj6*sF}8!@o+2kFsRae0 z2LgDsv4uN#-yZO0d)vX;nbO@U7Yu~*_(<(n8$VX^&Q#l?2HWJl&nx!x9+;Ln1SWngKWm*8#^ z&`!~$i7_988{a=;)75U~zZcQDJdeuhtK`A&yz%G-Y$se= z>=7evw zCas|iRc;A0tlzSvVbf&Li~8%d!LHVqXx)0JLimyHB#%G}v-e3)V4V?D)v%>`{YQO}36^<=3DPi7qv>_V(*9 zv!uMx)iOY7Ihv1?c{R`TPn?gVr83LJ!8QsFVSLsJ1W73*Q+7tXgR+_Z9nELIL<65z zOZ+I`#pgg)#ZfmNEooXUYOZFgIV|KUc|Nax3@2ukuxjJO26GC(!b}_?9d++$TXzir z-bmjW6DF=f;F_haAM_(<6pCPm>~R{RiMTlgCyH5%XE;7-8a$jy6MniA~OD6nzhx6yRe zA)_8<#$KK+x4AARvkDswxIBgd|0Y^s12C+zD0Wxap{XC&C;g48)Y-USTGY!1}aJv;ZelM?R6oMBD8W1qIfbZlLF{JLgUfj!8nM`PTDM>Z8GpE<|$xf zv*1`^|KKdx&&yyxFN6KO4EFOfTYFw!nw?E7Z{t7jHt~*bcdwlKsoZp8DMdTtN_9Db z1^Zw$j{Vh2KBiU;Kr=&taq^(dC0j1ot&)DcIq zg#HIBG?JKENP$41@z_^LcqAEoL=)R&`E^rmxsk)UuNmj`sYZU_+feO{f6aDq2h5U4 z*B&J^NP?jE=}`W4lGrLk0H7@t+Lk&;l%A@*Q2hfX|>tw9zaEq zVF_o7poG-SQk~2SV#>3A73C*esOkFE@}3U)l>9NN0pd}$MiM$a3Y|G@2ehbq#xv3t zzT)Op;zJPN>!bI!;qxIv^gf)&{X(wib4tm?PQw8L3J)0G9dHhzPbWxQ{Y^sOfD)xb zRLaKAoLU>lg`QZ2p7sLni9zl6x;xQA_~A~p5RkfphHAxzloQR5m?bX$Xh2rwb6br`$Ss;b4sEr^JmkUjxe9|@g1!HGOH3B6tU zQHfKx3dh?$BlmgK{|z|(ZvF%2EP)HoHtD61_kf{p=!Bl7>w6O*cE``KfvMS!anZ=t zsvBB30pJf#hbomC67eNkamWD-TNXO_R_p+3aJK^-Wb&{E4VJrr%jryE;-73YscHM3 zDC{z6$SvG~{Dy;4S>l|to9+DYD>N~KFoJjrD<+!xzp?Ee%r{#iw(ZP0Rp4F{;{cwv z**1g_Kh+n5ZM#6Rf->TZ=wwjc(g^1IrLB{Ie|e}>@aw?4S3$jIDiwSIw_atOVH0D3 zf%!nLf|)c#>vtJA2(PGlD3~I;;^SWE17hwIn3Tn5yau8zAv|N89#qN^oEhoT2bl0R z|C82VGTb#qe#Z39)=xUZaH+n2ft$?Jfu9Xo>9mY*aL$cy815f_pkeVE(krkgj&X=z z#UiAa!KR|_E~rlW27WvMLmGGk1k;`+!5^>-?d2>QP%vbSPRJM16x{eFm~qgqXxFI>i-^rECS-*ibxh#AKcpwtySAh+=v__Ihz56^lfq17wb5!DGdel9Gg0 z3|d~?juE{$G)LkRwpD;bfQ3yg(fDlk{Q{~ZdZeI`XqrjB61m`I1_;ua+ z;fJ7%(r{YI)Il%vYh=bcm{E<-RLz)7k&-8*pVy#H0(22Xv`$FZGPdXh=GwITW61xV zZJTa`q=7tYC6ZPG5H!r1MI=aL4+YmU?7m!mmuFuv z@66sZugzXE&&<~00y6%DFbD_aGprcy9e;yNx$Rfhp49Lo`YeJWk-s8;B8}GUR5dxH zitc6ar;|(zI0$LD%U!xNr&x!vnTibwaCarujq?eTOv)(6JBY$GJ!OeiGAx;RX!7nT z9P*QP^d{l-RQ&;9Bk%X2Fl2tq6g%Sy+Dr4CLV_<9k|{o86gq2RSZb@oUM9o;{Y{uB z3&Ub$8b|oQKaI0-KV^_92$FKpLtOm(D$V2Gf9utkz-YLBtTVrvyy_~k&8cI@HpeF? zH?Qs6xB1M~tD9#|p1gGF@aEyi_n!#9WX;+@jyg~3H!u%n#q3BX2$2|p$e@5X(4jNRmQ6u<^YlWJ)EQGfcsbkMTJm^zcF8 zzbZtrx@}ObAs_>5$J088PH+HPCi^w}I7t3rq>@GxhX^Yj!s-hYg-EcGpnp;nO7aTh zemCHHF()P*^fe&GC?!sXx{UC*nmDFPA8XzRIgc+L5pd573$%TcNkuuxo7nrGikES_ zOOuS|@g~rj`XJE2RE981A4!>Hbcv7elf=Rrv6nS59!Q%U#yu3gAf#T|0#D9%K?HYj z;t#kNmI~7`aMH-)q)^jDATx{Zmu* z*T=`}uUxxUe{N&r^5y!0-roAw{{H$RpTotnh5Cg69)^XfhzkCyeOCQSBm=YTOB6J^ zqC`qV(Pk`M6fF(jV7JAy8 ztpc>KR|ffZ#7K}3c`iML0vXLK9U~dYa?UN}@jv=1ifC~89r$|MLvW`ey3Q0KvOJ^P z>09`bPm@L|SpG{%jLd0&v=S)B??W(0c+{2uMWGF<64Yr(Im*d&ri5Ix0P!4U(RHA3 zgF38E2UV@RzJ58SLmiH-1xV>MREe;C#n~mcJCK1C1THCouS!wAOC|UiQC{>p6F37( z`@m2^u&}3qAdg9b0gan~z?J&Hhf+}owtNp^=Jx>CC*H%Q>R*ffK@79MA8h^lrSEKg z^U_CK?_YXr>y@=jm$r_su5P`&w6yi$rI)tu-njANi(50DQ&U@wLY>guyag(af4+wN z9d`F0!S1I((V+Izj|Q+eQ?A9B03bt^d5onFSeR1!2t|Hmek$M4No`O13QGZdz7a@v zKk*w0ay{Nv@M)y7oA(s80ZRfhaCuzqLuS@W&3rjyW+Ca1chaHph6u>s$S%Wto|CDw zqaUYdO83eEGd`qM4n!bS8qtJZA?{PPKvZbkYmhMXn`=+ zb4NxXW}|5Ahb4J>I`ZE`ehjliTIWJ9fFc6>PO4zwUF$YxOKAw?;841ZmDRLu~8YWaQ+9XP!B^dHneK^K&QX9-mGqpoBkbbs^3=*6c>5!3gADs_~ya zE~dGFhlR)TC2y8Yq!bC)qft4lnM9)y&*wQ*auAPgnpa(?n83QDsuy@8k%m|u_#d^V z9Fs;dzjy6WYsw$PZT=bb$kI7ndyQvvef4~LqBoVoQ%H~Mt}tqPpiO(I{lkYmfjevurpLbB`pt76wSI8! zz1FwRz1sTV+=157!vin$ToYSkhYPK(*Ot$nyS8xj=(QIQAHH_~g%_^fynOlIy_45Y zKH(FnJ%->jL=-qs(2`|XO#w^|DceW7D>bCs2h)OwlBvC*(Y?!!&x&?eA7CWelz1K^ zBs>k?Lzz*~ad|oe?Q(;Ypx%qhF<~S?T+MNQf8U4A5efkMTL4#ST*(M}l5I#CMmk^| zOPpsk%x(;`0Iv4o{1GJ`t&3qdSp)!vHfBaltmrwQ1t4e&KE^l@^ zSpllVP&g7Yf9}S?X?8Z#4o28kJQ-astTdtkVQ)qelRMwcJc=SFULg4#FbNq5@=y_S zG}~Pcmb4;u@wr6ojnj(y(E7CeM9G6+mv3l5Y~2GMs_ z_g$Vscu2}D($o@3(Wp1ge!{Fxv{3&VHyTk-KUFzPq@6y8N=B3%ghcDeb zc<|D*ckf;TYx>fa^XG5fTD=rrA=*_;L@LfODMaExb!53s**BWs{RtRV9=_`3@L;+s zV~V13?+{QeC=gW!@s|8zmTJzuJC3lDKt%F;j!%|#Plwi*evC7)eI#o_9+PV#k=S}# zZ8conpKHL93fLq#3U6txsaDROnA4qevjqQP;vpqD4j)lB>49J zR_Z&Lq@pyKBY84``VLtvp7hit`VNmV7$B)Q?*an==OGctY>w`U;!nb3g8+>VtpS0~ zY3M)|$nSs7?hf^1C*l(J+3sTw_D<~Uq*VLCyKlVw;JMq^4y>$f^ps6(Zf}fDOl({o z9o=Z?=E8wNaQhdFFSwpb zY7I9T^B&d*>U)b+8>VsEI6aNY-l^DP-}LliXK(M~Mn}h@;W&%yr%o*%ou5CBL3p4L z0AH_Ke%r5MEZBxR)Y3Zx4}tZfC?xw=Ujq5_Q%d~d3y9deGs|?Ld9yTUdIt@|f)tzH zT;V{~bQ@EU*LZ+h@Py&sBOD2LpB{_mhqd4i#!86h|8*Q{QeXon_d)r@Y-v()x%I3e z=22Uy$C8FP9;pFa%0Pgt`JD7rK6?%5Ga2YAMFxlhRsGk&N}^u!n}jGVWWW0UTd%zI z!rdFI&Nx6N^pH*M0}btk!WICAEdUH#m#n6@K_jcXAwLb6ELLtK~#e^2>jot(NaOliOkP5IX!@gLeT*l8~(h;THI_ z(A^dNpGO`*GX!;_43p~(bQ}^is}ngTwXayQBv436*p+0H zs*7)Xl3X2gFTKRj!#8Q0b&O!cYtNk9Di@1K0+AO| zcS$rhMu??QC3Tb|O4ZGM6Ynx~5X=KhlbtCu105na$CeaL>S}qLR%_^x$75?Y9|ii% zMO%#n_r@91O{F>L?&?FhaNw|G3w8#FJTeDC7ABo}R-cg|BkD6xlDIkKXIocEjR3fC z3UuKLnH!`R zMk7u~RO$D0<|;#G8Xr8p$y zU?f7Cc91Qs&Uybc-bw~HfzG3Dqm8XsV(;S$45mbR`)gl$8*3tWu1~J4*!vC~u&<7d z+0R_LVzcRx-O}H0gC8|-&+mLGk9{R<`bTL!AkFysn?eA49*nuz8g^|M7Xk5UDnI5` zRI~c$8Whwfzi;bZ-HMR|FELBpM9t}H*OA8iO-rAK=qhRZpkEtI^>NP4j}7;SU&Wa* z;Ik;>O2HJrgezu-GoyMLIuw#gm|(k!vb~bQtQUhOs{@xn3BEBWIXnT>aGLT>tjH^# z*r)4KyEvt5G9*A76?M#2mAnT`IgSsWX9}8FNSFYB4ZzK|n1#M4@y)FwFGAM>2g>nu zAhzI-fpHy~774HsAIC2)WJ&P9U4!H#UC$#pmraWN>(oEPtueY3TiXpH7BVV!6D;IP zm4@6=sjLM&L4e=&s~;xVxR7wXkcJb+2>+hJ=MrQ4yo;CJNo;{| zBdQDWBV1f{2hpQJJlVs&d7iWVgPMuNcef+CRh6JmnF8-9nK7Y?{Tx>u!!5a)wdm&3v?@mSR$fU;cG+P zoE~Thq@i+cZJ|;{Hd$4w;B1>IL@~9Bbtx8$$U{+H*zM_2(+A0c@;s&SZJB)-d}KI2 zeIN{%)%nQh)VuG^OGbt8H0t=a?)`L~0%N~!n~Q@vcff|wo{AxxkburI2(5~xgGBK^ z0h?Vn+`FrY_;6jut3!Xj79w>dOiI|SzYr#BJsz^Z7|PIuhW}?>U35`gYPT>^k`t-q zg5iPlB~QA(pt(M#m>9JkiP*ih!LF)d`rDklx;K9*tcu14W!-kWr>ebq6Z|~j06Yi8 z?p+}G;6_pvK(W2IJ(&Hs06Mg+C!+vFEFTz|Rqcr9%%xe??oa!ZJCPZ@glMVoCAMri z&gyh*48wG%StpVV&WC1noHOO~kXJM73>jzn2&2>ffV1XK>CU}%++Ks`kR@gq7;^#~ z00&1Z41@ND=H})`9t*`(xBuL4$3emZ(fOe6HuvdGTrQ~!+0mA*4BrZy|MvcA{s#&j zzrgSMKC?J2mzZ)T?AQ0ScomJQi4XZ`jKWwS0UARZ>V(D!xW;Ae+MY)(AMjyu)~HaJ z33lkQ;ENHkeUIzTvtTo0R}3;?*~g4le2a=|4;!t7?i)5_KN%Pp>*+aFz|F;!lD?Lv(d=bM zjk~Y31?Ntn+>Mc2AbL<6xtUqE;rAqg+Q-reU$@YSrI4NHpj~?u`I%It9#HL0(ow;= zf-z8s0MFxj@n+g&ks z2mZ-3#o_3lwa=3zk1NIw;t~pRE#3md>f5-44to`@C$#VV$~V786Y}#Dt=Cu1pTEAi zynOw^!oqd5lGmSm@x|-6u3Wi)|J3zUK?S|HpG85&n% zVyxkkF~?xxcpHue=o)|jMS-$U(}lWds3rvSbr_cfv`ulC@5ac{=2B`4S&RQBqI}Qe+>&Cqb ziru1CaUp*%a8f!r_*PH2I3^XszZp_Z@m!Y!s*E6uJ!f9*6b5ebYEMG_ZEl~7p^LB( z$C=jA2FQUoHnxbi&3P_@1<0|Q`fc`Ba7za_5j&x-u*Z5jq(q~C8vgY6^L^-)>M-`A{M*q!Rf}OUi0EJNr6fN^ z4%zHONX_XE8eVW&2MAb6098v4ya_dGx?XaWPCA1=AwjAEZ(y0d0ZPXmxQm2k{GK2k zcez+;$OVIureGKUdlmFkZMr*(YWp;38(Mv-uB40#;|mMxLGr~F^5#Zt3$Zf$(~>Xv z>DBS5pL`=*_y(Jf5>~FG%Fg1>xX-|&dh2bVFNg+xr{90)b*i{-I>wqDo1R%)J3TQy zefq}!{im;7zkV7Tou?TaZ}Ifv6GsCI46L6D0qbA@&d5`v=(M+!s)E3Ps(Vjn6}4uc zhk6xZu{g0cM{Sf4ii@GG{67B=^kCf&t7*#k)h0xQjDEwzpZhSB~m znO(Ebu@iy{PA(+5ILMbiyvpX^RkOE(`#=M4z0u+@|4y20{>_1QiyNMF$n%3-f;N0{ zHcn5u5PHS&1{}E69ZQo>H}M1Qyw-I^5zp5DNeyU~2CxT%{}s&I3};Q^`b}i;jh#hO zWB|@;fOLza@Ctx6$@P$=kjc{UbE>xgD`Q%=!QKImLKVPAw737>M^J%;zzWPP!_4ye z!9n@VxpOiTRFUnLrp|mrXFM)rc&oLy&&V@Xr>}-^8jC%aYFV3n6Qmm63}8(c`Fkq3 zlT2e0blw11Q3>pQI3iTvpg)PqK)jc51*SH2i40((;A)MKHIB-g=Mo~{jegm2Qde51 z+=+UxaEzO17{{b!tW^?iN!$l^>#eVu-VeVDKBcT-hcuOSe4?#Yrezp=3Y``aZF4w- z4$w@t*Ib&qV2sv*WX)i-{h}e#(L4Fq8+FygDIN=OT;56569#TKHQ-`vouHLUS~8`U zPI*|@(1{W0h#7Dx!LXIBf*|yg)(@5_{4=0N2RcHaXPBocrYI1%6R;^rwO|WN1pvW# zULLF-?2qbT!30r0;8}y^6!5IqvJq zsSPtS(f!^k58?|8&#~=bc5O2Bc9vuOI5XtxWE-GnIPIe0#G^JxC-NYJli}d!S%I^& zxKf|v<0y(gs-EUqK~|>~h${DqE<31h`&Y5ia8>?A)|n0O;>x&Sep4hb=q0f{xmlWm=Dil%i9 zAkNDdE#p3YN&IkT0X9UHh0Z&}K}l&)G9{JjO@RaQTo4IWq(e$9&jks+q)0 z6zoRk;99sK9cb=OMUq$2V9rbD6N-H>siqg~R|oK8thcu>+SQfzYQ%Sry+iBn z0iF3bnW(Glh4LUxMeeX2#;+1O&YyVqjYkijzkBoY{-vc8Bje*I%0@j%EGM2B9zJpY z(xnrgZ z`4>kLF2of*c-1HUNK>KjX7K@k&?OQxmJNRw7j~w z#e2QF!4;y)ugy&X&m~g22i{Ces|+a(aWhE7m~mL2`Z5V>05P?Snbl#_v7f1Rkml<{ zRPCQo)&7-tUZ+i|tIJ)j<(AO{%gd)gUORPVboA84%a>1Osbo8~wZ4Ag!l6?kbM5gZ zTcnRC%q0@K;iawH3N}!52}H|OL;f)R(=XbxKc2I8T0f*oq?s;=4Y+QP%d<*RcQ6aZ zNUDL)3(ZN|PvB(ro4{wPqOck@W>_{Sm9!{fIRM3(OYcP0LiL^3OGyyp&?sayBdPP) zK_!)6!8PN`LYePc;yaqL-)OpBr6{Y3v_(IqQG3jlsOWB-8OwzzDP8i)<1YJRY#Exd zXW3rEE3_j+`wW-PZ5|)zibc{*;X$zB{9%AUJ$ADCkA9t-A=sA5LZ^vjrHe`0#HjIK#2fYl5wx``jq7IVo2sl`S=mZC9s zHm&$u%*!5K9L12N!^71Kw07ErNEa4VL;P!q7zl7&E5UmJ^sJQL3f1pM9j7t*bd`>r z9xdSHgJs5T6yPYw7+;CA8$>a;4@=XyYh!BIhIM3fKxImJ*tEsjOxj2?u$AtY-~fgo z?2hV-Hj*--2P@muo~iPBX?kDl(yK2We7ZO4jZ~HZT4a}Qa)~=RWfL5u23XNU;%y)9c^Y9<|fEycoKb^TIO+h@} zY14^mJUBp}Z4VNLg01l%M|>M$yE+Wvm@s>F&xD2TP>#0K-!lp7u*N_m07by$6lYFm=dmi=a)YD;JvqAeQ+*UPPn5T9c=Sx1S_p<{Rnq6!xbbMZ^w1_-b5mc z2EHEowf4oR^CN;Ie-8%ja=7UlWNV@wQ2|%R_8N_>DU-9h4PRr=!#Dev_ZG}9iBHMc zLvn^a2)l##Y3zr_A@=?BL~ECZiHm`4L0M>_Q8%v8YAg7iRtw$?a1J0bG={0Bc?kIj z@8!wUe3%PfbfyYA)}orQzj#H;16mhx0S3y(ct*(*X(|3V@_@SX zpC{W#r{F5o*!-F3&WjD`)q{%-(PIrMwWS?PHSA~uyVr0mLC3(uqYXQ1yO6vbHOqePDV&G$0!Tg9GeB^fy9UzQnq&-vMHdOY$66KDAZdX;*AqsDe1W-~y!4?cV~< z4k@Us%OrX$0qI~kyRfnoXYUPg_8l7tjRDYZz5F#*|5#VSgn~KsdKmUKRFj4z^3p4J zloy}>4znwhyp51nBQ<*v7!C%T2erVk3vOpD$N$8(%~~R=w|B91@-Ah7*Tk0(y&&E@ zbX&Y}=(2e3P(>71NdC5L7_F_L`mI;8ajBJw;4<~w11kr%RdEy#c7}x=@gOJ){0u+p-r_hQAWt~rTjPe_AvKflwvD><4F57I_MwT?L0c_3> zyitW;d}C`4j7{38B&)a$ehJ&OE~br|1-q5CY2j35c3yETHJi)jRA}9T7A-+-E)ep3Y?pik=o zOSQINM%R{Jo!;LmZoJ?A_R4GRFRwgke{SV=`?VFWy?vuE7TW-Ab)%uTcLUVb4X04p z0DZN#ZZ^LW(pGCu9m)LLssWb#YtHWHe^h+*G*}hj?-`EPR*;8MJIHQCfct`xJ{YC$ zcKnXMsg%+N?dV~>f>9T0X4%ksT?Z63RDpeX`9(H)YNsFicNHqXo zfzd>qAA+seKoMJ;ntrS*&7NzE$*k(d%{Z0{orN3J?#+5otWfHTMO;!o8(vDcq;^_J z-#K3mWRmF}_(6a)&gm8iG|mwOXg0!zI*~oI1nR&^s9Ml2Ix*S426dAk(6puhyWjrC zM?`76RCpnI3!)acAZl@If5TYA)YL6#Tikl_rI&7D_4F1ax^LYgO^dzna7QCPGkXMQ zC6mgmuk$z2M@OjhLqey$;Ogi^4uz(w0fFd@kh-AJ3e&pyVpZSc-$0pzthsFIqA|}A z?-&#_ArHM`4G0^k=naa4A)HH;bhL18vcflc@N8UcMz+SmF3EB&nH~utc@S5oy01ES z7nt&{4&7Fh#Fg<#Liy}Yn!95io%Y&!jTRDV_f`B8U3Yk}YKs8KL`}<<4HJv-B1Euf zr3S;4dlT4|l_kw7cw!1#W!a*j)jLCtuB2pJ79tUZ^ag#+<>-D(z^k%M)M}U@ zL`)PTkS49^}1YZ`s&q|q-NC<1oQ?ohG6 z1<6APp;33zhQ!fouc2c6>OlJ^uf}o4#O7oh`pkcfx8O^uqi7dVE)diwMNr*N^!wWb z22JOqA*0HP{3*05dUW@ps`EI{1{m?aup%ZBHs6^#D7C2a2}5g}(LAB6GZmWNQaT~F z#r9L9l|xV^MuJ8XR|WT~9DGeA!trhJ>2_w0Gt-^mWwFiVmA>poV$8WH`5A+<#gk_W zDjDeKwvAMnk~u&7Fhs&sR1~s8!p{~pI44+F{$f$#@g-qjLgqX9G6&HRy^xPv${3fB zUBT1y1s^X$QIUrL%qOrmn!xKz@O%#6Q6IzSmUkA1;cRXPh97nUf1}Bx&o>J#`@#C) zt*iB^wCdQYH@}xw<*9;WiH$Y{@DcAF^GI4KS*GOktbB>}7Vw@Q3mMdG9`K&oF$|xP z=U0pVHk;3ZEkFUOcBPNB3*VidI;OO}{%HQi*8B5!T5rx@X+1yBwYDng0F_cKrr>0s z;-u4wgo49;3J&+-G;QJqEFaj*2+D?#xi{?7^um^awTF9czI|D5 zqPKl{5F0KS>-2kuJB!w^6B8ZFZe!I#yUqRgRo7<&9a67h1D$H8K!dxWRtN@n)lMO} z8y2GcOOulu&Dg7}GrTqfA_Z;2G|^|L3^kro?Gxuhcemxe$Fjt}p*tu(T7t zMOu9$=3wvb|3sgV#bmxaHpaG@=t@2DF@BXMvV8fQAAdl%IiEc-bhXE=yP7M{oj6gR znw>4*oSZCQyK$p@VQcH^)w1lmWiggcA1xoPmI*aO*FFo39U8e>D6n3T0=?hvvltK} zL_Rb);>UvO9^6PJ9P;cfaf!{y5k|}TTojGkrc?T|;ZCSZ2VA^sp4;En6R+c%s9Ag~ ztwOlF2lGC~;EP;I`Zn(55~UInh-~ZaYna$evf(Je2ONdTqB#v9Z<-pR#l+S~rF;QJ z^B6`&_*Vs^&1Y*!Ms?{))uq3rEhfzt`W(^i#xi>fEDcR6SZaOKjH4)rpc0Ks3=-d< z;sg&knA(1TRMp)l+(ZX-j82j>!0qjAS8!oj#-0Y#Mr&6!x|U9>Pv8aMG_wP25kNKg zCD^3GLLM;#p#JUe!u)JoHXxk}RFDOJBao_~zJanptKJ0X50k-w)Q&&V7pvIWJNLyiP z4G$sS#5Xe0(~&IhAemN5(f*_g2-0wf0A!z+{W-eH-)?kNwLy1#4bL(%p5i5)wYZvI zX=xPNhXk!ROBeh*x25(Lu=-J8y zVg?08k8OE%sXFKwkfs4?8MGK>jQB%IgUCQ#G3@lOI@frJ2PNaJ*+b6a%o(1D_hEVZep%xGn$utuK zt-4#n#^Z2<(AbZY1335EDrgl@bHF4_Msh}5y}3tsu#4!b*4D(J+$T>?PQ3H}`xE=P5!~{gc=f@9x8J@#aeZ5-8F?R{`e_g~ zf;(zqvEa{>s;R}_nu~~Sf)6$d8ejCqP{aX|WEjl{9#2?!J~g0fcZYE#tvkILwqcj! z_!6LH0s5!_t0XW;>aA|BSN!`t30}os<$e=@BF>8v3j5atm zRWG!Rs0OaWq`<_?3tHCHW|U;1vFI6xp{yurSW_@RioChj#ytopyW5h-*D1mNt%|vI zdu$(5YP}8Q`VFSl3XTytgm02s+Q~w)&z;kyKJNUXlPAwl&&{2`JvDXy#sZT=L{c5s&26S%BcyY^%g$AKh%t1&==5(G{bQ}|xH-<60$Qi2EquIs$ zrASHwp!JIuybyTUjzA5~rWv-PN&k*_J+vdeJmZ2Hw!>|vGp;EqG71a@bp_8^T)pmc z#*1{g_@3ck@AETLTSzxkq|{E?yh9*0>Cwbl@oRlwS%16l_4SwgUR=M|_v|{?*LQYyef?}D7CSq6@Zi~72M(OQ zcJt=h^uWMbR=+NtUE1~}qJ_z}&)KsG+7s5o*0_Ys?7rd-Ay-H_gj9sf1QBo(!pi`| zKNp|er?rugb5j}1XThV~rrGcty$3iBmrDvM3urf=(UOwYM_g0WER;>LE(HjZt^7H? zoMb^#{XBT(AfuioUOBkD8swZ)5K<3$<%Zo3q?2Sj;sD8LCR#Q*64VkBHk6`?-(A36 z8cvo~aUTBWEd%us+?sL=jRu9gRRW(zjY}e_@;SOm&!gf>(AmZ6Hza(~8pWlao{f}+Q?O>7 zWF0bbUBvE-#92jAN~JRyB@Uh=R9{>s?;q+qK+pjp$To?3gIhMH$t64-RPvP_NU!TZ zuvn4}^%-Ab+ehD}NYeAIPdYz*XY9)PMZlRsiOl1M&8N}l;N5)s+0b#fpS>?XCWd&*I{v}EQ*NiMP2V^ zz&OrI5_3u|2Xpej!yOJs7vm~#$7M;ER8?2v^`jae&p@FZqE79GH)^WgXpGwvc#4gK zl~A!yt~B5>Kt!Vz*CwIZS3M(IL&xa&j(`42BACrjH$FZVWz^(QeFS?-bZ_!i#1y=f zw_aO(sTmjQnr|;&Z@#qXjKz+3;z%8BD-}9A*v3*Kli7ZGa@W4n&Ke~6`yCm_?}_mo z!m_kNd1r)mK!D44gq5c-LJJz7-Sr37lcYveo*=*^q1%`&=K2j6GF-CL!~#eQhG;Fo zL#Bz*&YB$@gr;Y(z1cxU8r6j8t~NW>5qemW{;h`io{~h>O~r=_LJs#1Jt0A%V%*YF zDJc6D%(1bHQKhdC8jVas0^^57=Ndj%yA#Yh9gXcPkutm;tKB6ep7Y1Cd(*?t`_u0% zygvQX!t>L&7p_lVg6hjOZW2!88uawp^XI48fzjz~eSNVw-I6Hd1x!O;ew!|QHHU1& zLAFH)KT1?10|uv6!~95zK+8s(wx`& zhG{kqK}fINaBji($D8nBE|*M=3poAqiQ)d}Lv$i23tc%?(p8yV@M)n{HESPWFuLHA zO3~7iC_8HqeIjXhy({HQH=73pOC+E|{(Dg z6~JB)anHpy5TQlIEaC7AWNa0jIELzb75AdlpkirB!l3|2w{YN?oo4rKfUiKXjgMLBst~4I33M5;pqAD-Z5%j8tao=W|wS!?g}?Y+O7zKY#J= z%*@4GckW!&Vlm6Qc=_D9n>UYLJQkD^zQuRhJxB_ELhu_}9~-TvgsPWkSY?S?qL$%V zMY$_1P%7E$F+3gmq%$B}eB4w(mstcd6<4vM%BNfTR2(8;k}~GuTN+p0gn#|P%r$cL zDbxKa0s`HL@#UN${$G=G_E%hL0^a_LOArv)1w<&u1;ol9r95mdLhT=MK*8RrXA5;X z!GexBNbq%@T|_U@P;d$4bkmiLP*+JLqlz(~s%8L){})1J;8YPhO0T3C+o|{nrcFW! z6(0{bmsUp)AKoVSsKxU6CzN~K{va5Wl2rrLU!pC=D4mr9tOG$Dz&nTpi#@}^(|G~I zb-sFMmIKv60}g7XXvamhlUl-5h-|}K*(fto#8ea+prA=&bOFMLyAq(?BK1e$t}2PD z+IIeGQ(BkXL48c%w!CfKjjNRtl@dR+PnglAep>mVC>F_`z&#CW;|R-eix&!}kuqh=@mfLw514H1ap-nouKYYgy%3iv^7;u^R@ zK?Mq-0)7G(7*j)+qw~yFR?8C{?B0wxn<#2JKoo|5bE0_!^tbx-qG7if#RXt7LEi+57s#F*e8t8%^J^#a|{61*}1j-@DhEodGM4`-xEb*MTQ$@}ASIzJzh zD}!(_iy=Oni_|2%c_v{Ku{)`S`uv!&y?VyXrP#MdKiT|n6n*39tD6r;?{AKejIZiGL|EwS&tMmdbpY&D09Il#AQ*Zu1S<4@ycM8QReXUqU7u1w z2;xh$XKcfn7l-$Xrf&1#gR3o05}Ln4Qq`LvFNFduX|iQD*NfXt0K7T7rR7aL4dT$R z5VsngzTYeC9+}~3P?LyC(cig<<6<8rjxa8y68p0nZUB|y8d_1PkQ9@AvJc0tApi_v zP|pTI3MiukIYUU*Oc-)Jd3I1vHN6 zV1rc!bqhQ4PJDH$|AP47-@875ow-%q0(u7X_1Dos0Ec=u@v8K&d1Gzm$ic~dgE)HK z3`nN=`sEj1XvXF1W?a5*K6~+EGrNBMe)Id=i^rfpWZ|LuH$jY`hr;y0_p1FKfBg|$ z>`1a84o;wrL1$!qv@tOCC>|0T4_1&;0vZB6-xnjM>VqC6D?(~z$#+1gq?2(d`ys1} zvq^E+6!~!?+r!V}iq(La-`Ce?IwE$ckS#JibY~$^BA}>*gn!us*aMrZ{h(o?%W%dF z7a~N!fxyOkDFJXZ$rl=-{fn2xX&zr^{b4Kky(wQLxI2eK=`x5^seVb!ZaQ*C(|9Be zUnBUajmbCJPcoAhK~-vwPkNZEc?RvWLxA3R9nA*V+Arfhpboy2Z$AV6%&mSV6Vowurze_5KHD9M(Oem>f)fxqB7UaS$7w zIH=eT`nMKn5R~a&2WrMNG6N*d(&;~nsQyFj04F?m3xaPy%lw!NP(Or3aIyu(XWH;O zb+=!4$5L_{$FS%xe)mlDKdNO;+R0a8f0HR+sC$Hf{0u<;Mc-H-b3Dn!=J@XjLU;FIdwZp3OS!vXd^#0w zPg_Rh>GW6}mHz()#HR>-ikg;zuK)_h3(=)<$@lV7=ed?x`CKUm>Z=V&1N+kOuzmjG zMVql+Z7q?J6S3H=9f%o(?3Ufu40C#IdQkJr=z@C_`!XTH%(%6x{t5cK>OAVnMQUmc zsH?ClfjT#Ehl2+ramk7w!I#d066q%R#<$uvpy`^C1s&?V0!$* zNNZE-!LbV$ZX8)zx$$su@y7EH9^7y-{*A*@g3&f84`@B-d$o}$npg+r6E5B#(cObiHpxV&5|HENh-ks z0K_(H`-3B)9jwaBp!;KZ09|my{6-W0ZOQOX&Xt6Qg(U!i31v(blah-|ueMch<6^o3 z298NPvpCe4xA~44V3;IUWu@m6QzsshL-;4cT>`!B#Owavz{rB(x*7~pA|JC(hzW??0 z5APpXAH6WJ-gBXCz3KkK`ud}b_wPSCbK%0HRAb|#4^E$c^zK)_@(9};k6wHD@SS%a zX|jCd(T(60eQHvuri?JC>}(m3D=63dJ!04jB%!7fy(loq+<%nei!lE1P!wonz!Up7 z{2O5qoBtBqh&*<2$_PI*khbKkeyt0`JFMkPxcd+X848!2poF3{@h%T0M3zqzLz@#O zInZozaf=;ox9W{Q!;|whQo*bdvG9>);)tuXv}w{TitdJC2+O`o|bTRS*_OqI$EM8mh1C?AoU3@lf+e2ED{rWgwx($d~R;8c<288A{&7hk^cNS z#rEnWOkUL(_Lx`Z-=e7zAA;$WABQ4f6`NSl%xYIk`&`tBYM4T+f)Pgz83);-HoN$7 zN-2~Lxxp!x_(UN$q&xLR!yU!#uuR+py;2(h?h83;Gr?!4aykZ=g5+&+_Sm%UY$1VR zY7WJ&6o;(Z3(uTAd*jB+g_R&K zeM-6Nm$E^6^CucR)q8whHvcprp%my#@GgL64nx$bGE$+(!YbS+2sY7jXJ=E3*HMGd z0Gvll*`ip+cZtUnEdqhiRY5%@Lh?i9NB@7?-YYoHGs_ap-+PnZA>lINJwSL81idFk z(TN5m=qZw*7eG%+lvE<+N-C+UBvq-pyzQzs(bF5V9o@0f5i`B96S33Pv#}5RvM=2+ zyBoU^8xtGzID78*oBR_-QWsUA00N05ORBuM=G=47(d=Hs+?7*JA>PU3aKq4W^VL{9 z@0T*_aYb|?WMPCOt$lO?0tG(M{(Ero6WwmEq9G<>j0zC&ri z;s1uRV@l@OwkE!FiXg2ubvMIoLXJkY{JM;RC3kd&2@i%DlDQP(wtR&9AHnxdvfg)N zYzMlYyI|Nog?HI!v7giA`X}G}&Ij*3d*jjh=7XhcxxJ}t&OuGRBV0Rl{`|GJb(_{r zOklT|aMf!6^Q8g!u^T5>=aY z{$f!@C)9)kk`j(m(GlIj6|1I*yxcvgsM^@nTlILWG~(^1XWgV54biNHJ5{<+SQd$= z>!sSTTAH=0muoKL`c?1T={^P5iotP8|FLpoe0JxtV-s6;?3g&adGiDuR43Mqj?T_b zxF)0rC-(a>vr-L1=|YaG<|WEK1h6ph3{{CrRW(I zFxgN~vtrfS*2nFKLQEZKk+fmy>PX5k=%GHCS2UYXOks|~YL(4SuvWENY0lD;I@Ko7 z{FvV4UbHrV+ybkf7a=hj(U|mLHZ(T`%xWPp(;gQqpknCHs3a9Nq3E3p*k&%lw|7C$ z)N!%)v2rfg(jVEiRM#<<)Corc|9bJr7aKp+D$-^C8)=!4#z7MNjGl-Np@-F=T6Hxs zw1$)jp>A-Hgb4d$F(yWshdBia5`ufmL@mt1RSlbwRoSm&{Sw?Phk+82H>-?H**H4%h@4i>I(rpfZd{ZllG+G}StHOk ziQsddSr2S=sdqtmFsV_C@VQk9#oNR6COA40kRS=}1yjhx*ilz^n{-AChJu?n$909K zrZJ4o@9@o~2$GNdFb|-+isJRtb z_Dq0{){*Yzi$`sS%2GTmnQfM&ijh%@lxXC9g%_Q{cRVMN0dh!lRQ;l{^p^3Wv);^5oIkkLafDjNyB9h8;;j*4Z*L z@_>k(rcjr0$@~H5VLc#&$7LS24_19nNcWk)E091A0%^#GP0wF+;absO+ji6~qd*+A zxJ2b!7TS%hLx^&&bU-|sgkKZRT>H}xbUU^~v{wt%a zR$aNjXU`SAp&^;Pa{J!BD=ktp&Ka*tU4SNtwpToY+ zD2l=#UIb7c3U5)+yU?@o8{-YG0JlVOV)~0$iX)nYYPZAD-SKM%sKHkA4$v)&$SFWn z(4^pe2<(8&U>$KkAv=Pkq(Ed3{CqQ8F~wrG)WS7GWC30_ITQKHwol+jWlDDrtp~vf zR{(~@Zd9ZVC|5Q>n4}(9UbK>@4f+%v8w3nv0^~D27^aSyAHehCyFwSD8knKZyRc?g zRR#LJFom=XA)i92!G_mLcD%kZ{^*4!H&W$%74{;e&8cu5x zog>)e1j~>S21c#G2xBue^JT!uaW(ED@x{SMLvyPb3E4^*zNrFC9BJ|N5ar z^N*iAnZI-M=A%bv=g)6qi+3Km)sk_n5hQ95yAo97j> zR5ZH&&}w#mN>j8FoJ4I~TMxfHp?+O_J0QeAp|MV{Ne)V+Wztel|vTlut+(j_xNfo;!JT zXv2n`y@P{0aY458NKensmRM}(!NZ4l?%B5Oz=55OmCEGK$sn-4ut^TG744@(s!@cy zhQXLpP|*6|IoYopqp1SFo&6Rz3GFBVd19Gj?TFV%1SdtaHuY009CSGl=JTA$C2>hB z9IEawav~4KJKk(;EJLY7+m?pVd&b5Yfnumd)0WhC<7klirY0d$ljs(E2jL|sK9&h&#;ra&5?txXS zPF}il#UnSK?8im&3nyRjBWn@D5(VY_*sAG(YPuhL$}x0Ah=i` z%@{B!Q(q?yW@&T{KuvNZb_S}ICY^3sX=ammGrHC!U#Hkw4m>yL3zkY8*U;Sj0KvqF zj+nCGd#;NGF6W5+Qu~L10Nu$5(AnS;JCu(40I`8UYEtb+T*k!>5nqg2DzrxJP06@W zX@Ls_u4F2eN@vPy+BGq8Im|znJPDO^0(SF#k;sV-Ro>npIF9o)2CMd|7A~>9$Pu76 zO}+rlHP>+uusgUuJ@VSaJ2$Ugj-Nldt+Uctgo`6Pj3XPbTr9?p;!-${J9grPXXN!F zECM3OabH+rf>h)|wv?2-TC5Vz~DI55K@8T+w4Ha+o0q3x52=5>Y z7z>jbttG@~pxMzM0C9^5@nL28YXKfi5@_(?AfU;_Sxd=PjB;~Q$aTZpi{rlo`8dos zM$4wW(69{+iF`g16P?)e5FqbhhKaznpvaP(SP&B-6UJ{xBJ?>-$ibzI3sklh^<+AB z3EnW|oc;~$5x+kZNGUB2dIBehvHj9hC zc;2Qo0BM(2jq5w1Ayngq2eGPVv#Tet)F<#>x5}=TgaQme zSY9{pV_>1Cm6nBYjkL)sipzr!}z3p@A4WLeOlWEoF$`HaBBm zr%w=!KjMCfb2^w+Kmi|qH`F0EhWs*vR?|Xs}?I z?j-F8qc|>cXua820H1|ioNuyT_DwhneHR=muvv~J=Dz>QNAHn%^%;GWIJf`InK`au zqM@&EZqL4bb89!pHrLnB-P^r;ZsG3TIVZh7y=l|jwTl<$=LhE&JI&O@PbAv}pRzEj zLF~{zMAmss7RZA`!r1V*b>5L}BntuCgSrqkB9R#gBeN%L{s;2$ma8^xLM{`>c@>3* zGZ5#KMjD)WK)9JA>oF9Kw^8f)64Ft!#FrePz=~ieaiPw~JSa<% zroF9EDD@zeNVl{qUIDWJMo(V0oA?D!(u(tbg8V)Q7Wy`&jL z8=`HPbRXbm`wiru@5Fu-`z?8ruTj}z_M%L5q)6w%DXK{9lPjVJJ2RcHWc>w-bnz#t93WiSO;E2Yd&27V+%#Dlmqx@ z+Nu6JO>p+&0#L&ZxBOd5QkEI!DAkgCpqWfLYWa0DsvB|??m!bb=rM8bN0d9tQjkK# zf10QOq0<;U{Qm+wd>c5Pgw4GLE$z>N`~DTN{4=HB{_3Yc`1GUqpI+O$c1H=6&Jrk{ zCD1ubufO?b>A}LnlP9GnyI>U7uDwtS=$v63)kc%o_AZJjI zbCN4dwg|l$_z?r4lWf7xn2IbrI2c6uVQFCsImZ!14o0a6OFiS_7%2gwo+0f8fB;z; z#WdlOlm+xV}50H_NxXLBhWPU7 z(^s#Gy~D$UgW_bzSVvEf*j|~M+AjvJ6ALiPQq_@aNz4Vf4w4%>ry!KTK2X>t!r(}l zqgZxB)CIN7W0@1Cqg>rm1TpK9Q>7Dp@phI;!Y?BQ@W5VsA`Ox9bPqXni$y zzjZ!#v-N81V(Xb0gq#ob#9{|l@7#G{baL`QBA?G>4xAntIdJ0CsRN2tXT{?OUV8Dx zW0BmG=leC-N(@5wBK3#tHVKh9b(37~q87K72InufFz%si%7k zFC&&nim5v-aD3Z^z!<`vvS4lI>~3Ok!c6-jn(Tm)Cz8596RTL}R$(#f=XXZoY_@K4 z@*do>OIby2!9^M=I}apmzA`%+m%$D%VDk+i=Uk+z?ksr)D>zKZ>Je7wMp*uUAN7U8 z1=Wp`jBGL%i+X{*4^AiYN#Pv!NuCwhnw#V2#(J7|&CD2FmXARQRqAY(4O~^9kgK$ zmC1OrcgrS}uYS)GNL(!)#4<&2qz!c|4of&_mL*ND3DK~g1E!+e&B_6&hA9@_0q>=_ zL3JA@B;1nn${o&LOG_hkJZN1Qoi1;Q0=p{+?U^yU4+V0Y?WA#)@dq%q6lh%iPPK)P z>p2KoVf-Eg4SXoB$-|n{za}GWNNLh$@kmOQn-ptA5i{Dqhr}?tF!;>UUAxyZlg;On z5p1c}Q6eSzejzw&@kTKJp1=$>E)?t{tL~6AyFZJ)GCkJaw2#L2>oADS7I1i*-3NQf zeXxhzhwatAldD$kLmk~WGdsJlQePj7?PF$<>-T-BO=L~fL;@zj@(8%2cXnRP%1#h8 zLt*tGIs`cXf4pol&`ocZq9*4C_>N=_(UI{Emo*cF2!u)LN50a0dKDcC_*B&W zIvTq%@ys7+iR4o&F+|A)tgC6dS1Um<{Hj=NDwWC&4X0#L85_t8^&NtCIH#s?Dh0-Z z^b=^>>1NgS&60=H-VIY?L=fG@lA0U5R6$HC?^u1Aa}rb!a%uO}ENXWE?_dJQtKVhT z;CUkxL$m}4@CU{{+HEsL9hM@+6%9n2r~rL3pBdaE>yvr z$h;l0aQ}$0P{dT6^%QuMj3bj(F=$&kCr#UC*(EdYI=()U$eFo$&R#?AFys*dTNe@m z&*KViCzTiG4$}kwc6hz^c_Wdi_V{|di|faxN{iAUXek(rW_1^4aZ=fYa=QwTPjElo zt*+G7-;)(uyVc<~dW$TGhLT=tuqPtX5u}Ey23{B)IDx2@T#XUZ|1Y?4`$zCCHGfM~ zMfPa2{$A|W>8Z1Mheqlrk1U{j+{nO)W#!SP=Fz6+C#F_S#bSAMtNA8njWRx-2f~+U z2wxsu&;ESSrq;F-kuZsTO3$G$!>dVe4~Z;+jWSwN+A~t77-0+MAWJke0*l9-qPd!w z+ij%t+=f3$jO{;S%I>;)`Tn3V8 zncMIgBzF`mSET-p4|wueDePM$_kJtW2SBpzlDqU1VKI5Gu7T2^E@}U(w#A znoY9Hq#Witi8d9j3w5b19kG&wIKpibrKDwhlW^EUCJVyw4;pnklimnxbvP(J{ZQS? z>&_sy(-T$!51e)ksH+@9Gb>x!wA#yoy~pX$Y^9NzU1Y<>)SGag5gOBst2NVDiwI&y z6iIJlw)Q32nSf~aWJt3Og5qm=NRTTyh5Dal&|7fXZ%w2HEeW<$L3h!5WF*`GtTTlK zA73|}(4;Mjj@xQc#MVKTTg=XIJ_fVgWs0q`SrWwVPR!Yc6b{DULoU{>)2c@q zU^_wQj2Mrq5KfySLohLrYI)B!vxtbJZTPTt2p{(9;5fN!MFaLRM!lA^ExFOuwT#Id zU_^1?<~4HlxC5~#*Xz#F^>{WEm25~r$FU6B$gn%;HQGi8+Ly`6$u^Q2Csd^gz=a6y zM*51wjU(7~?D&Y8Rnd%F0*}syxK7+@u&p@frV4nG8&)5MI;^Ij=kK?amKe_ostk@sdoCWr7%?fC(OBc_z#+>^gu!!9fxrFb?G>C{*-4S`b8*49n(| zuRiO1(ZNW&qHE)}n6#3X;T8je#kmqJp?*Be=AOKdB2_MZ8bo+c( z6cjxB5fL~LAjS**0j+NZIhG^1S!{r0XrmFIGU7A3+`46ZneSLHXsBPqkc1Tt!*LrU zv#)=YuejrpmL(`T;VQD)&@O3N2><`jh=KnE2h{47>#LY#zD-z2?8N&`Z;!s&^xDA( zO?M97YPxc8tf}cluC;Y^^aS0#b|*WM*=%_D+HWTk?DBQ_o7b95!M>;#9`7?24$gJ^!;Qryam)z?>Qrn$xU9-pQ0ZarxoM9UV%epfwBd$`tbB?{s$Fjs#0z zUT0RB@zG_1g@6+DCjd%PaZ$IJp#WVcR%tBkmY%v>x+YSPGZs6V04Es_{7m3xa$Cyh zZ^O#u_U_Tq+wd{Djj{JOOiXSw_mbPVGrA4Y*YmeS7n2}ARD&XTB=UPuT_RI2iU1W9 zZ?t9oD(h*7S7n#y+5%Ih!r}j!k-#sT9{9TC|CS;rm3TZ}LOwQR(Aqc?bcYP6)GuMi z!L|q>1$qVmp!kQ+nV>+WF)Ar42fY{cyoMs31FL(h?ws6)MilpFY-onf$PPRgH7a4~ z?T8;35A?YbfKL2{t;opWbjKNqlUM6-Swu?=e+di^TOdK+HrdM8 zk5ww?vWBPwafd)`GM%@u!%F3D$nM{os3c-17`KXy_P6r|NW@pJR2yHZ8|-w?LuuK- zBHAul(Yeg~KnuEbQ2@c|${ku>Yl(gu$`(W81e2kN52p?mv1YymIyGy?X+I zG<9_+g_E_NFLF#YsH$HEg$duStxbf>p(-g}3aZIT;BgaPhm1p*9U5P>JbsV`1GzVg z(*Q+Jqu-x9Ij!V&V)j5@639tOcSePZi-RRaFTif8MaAJ`B5O8sb!Zy1)UeR*GKIN` zvohtZ2}B)-)vIxJaE8WkkQ>-$a#5NxQ%F;tY3h5)vmnl!oRG$5ft^h@21)AA^sEXA z2;Eg}x?D0`x5*WB&MvL5+9*-0qpnSE`a(8;+I-l&RJ{MhEP9h z*f~fjGOV9%63@X(khWJoEPM#hyS!NcrOi>hEuq%n>>>Q$rXj0_r?SE@BzD|-aP_2r9!aJhLYt2ZK0(4S^( ztD-ygWcAmNl8+`<(6=RwjNqcm_^fVJ87T13vJg3hSlwPT>|23DWs0FI;J@&M{flfN zgdl-{t?&PgJEAN^Oyx}wGRBQqW?j*gv*>|TE1ql3=q^+(9UFs_2BMX0s0F?h?TFhO zEZ_BHneYfRO4t#z#wAi(d=>(A#APU&%`(5Wz+sCj%aLczZ`!XmKiGS_`IddP`Q^P% zbMp}d+!0_ZN7n7#dt~+W^bxF*k6f6XJaXpz`6F%p{YPdF9Xfq_+mUTGL-gX*vE=Jz zCMPDPzy@hw+0G+bQ6WL>c=d%M1YgMrFJJyNTP-|niQseZMk0vI7hR#zjiZOUEbW0a zXlx;}WMV^WH%+U$R@CuM2LRS|GNYPJV0303Ay;uTd@}h{^ddV9_Z$;HmvI|}l>juQ zs!`&POktFCIiU4PS)XjDhP_Cms=NA!vm?yz{QB`fUfCA!o$0RrRX5tg<;Is0T%aw-79`ZyMV$O zfld{P{C`yIlsjXwGla*j8EqYn#~Ca~h}_V?z zOb;8)T!WfMaXilsa*q9m2$0E99j+0x6H+@XHwDLx!DqPMze;I1~??Qy6y>n$5P+s_K5`2TIM9gB}(mk>!IiEKvG! zMTTJ-{7Z+q_=y>c6*`%2AfY;RvBG}*%|Z$cP(^A?HZ|QNb&o$&HQ9!k2Pgg6%UcV4 z*R>v1Ny=s;^vSeF9`b*cv5tyHfM9CI|{fUZFy z1YG3Uqmd|DmBf|Omrh2o3KdQ0ioh9(~DyPKHbcRc~a&_v>x1hY^w4aGK#nTECx_rb3t^bXCI+6GFiRxR%z8twu7 ziD)rdJbW0j7WswJMZ8POL17*WGSez#8=^+}A8TUmYrQU58cE$fJw2077Xd0{3hCq# zFv#aOhq4MsRV#MX1b=7wwZF=l?&5HlLbvF<7 zsX#>!VZAMNz;Yn%=NwcJ+n9T3?Q8^HsZ*t3Hac8LCQGPMrA$6wLX9ek>2wJ-sx&z= zQbLI;^-N5ZyaA~cmZ+7hQVXrOMZ&PvtUn#BxoV~V7& zkYW60nJuQhO=DP%mMEqoCh{8SVh~Q7d^ty5IT0Y;9 z&%dMMClwH^@xRm$?<$h7N5+!W@zvSi;pjF@Dwc#p0M^F@-7m9*40cN!Epqk%s;k74 zUTIp4yLrxVRF{g_E-t;g2b1CYnjg%5cH!HzA6|HW_U#LA&OW}dy>H9I#zS=vafCnH z(zUUxuWuGd__MgapT+h4Ea>91-UU8}t>u(=qlJitM>K0xKlhY(+2q4^!U&hq41kmo ze+I$`?f-N~vPd<6SkKG~8WIWve7{2QeDTnXHRNj`}S0+Z?tc4Fm-c& zK6Uxrxf?f9+3xO_QZEIgw--WwzKM1|c*y@UXpzBopiU?2fpN4EAnHB^3Hsq+#;%>a zeGXQ72(uKPF{}{tfyST}qKU%OUn_+Ah?ItwrlOUiX%n1-2e>vZWdV!f?W~xV?FK;o zNfSglOyPExPgr$vS(wM1uzE0)+W~Dk^A&5YH0M9Czu29z~GkMdMcSecTfEPr; zW+1FtqF_y}t_bbJP;po-K=O4kPBS?47a=bpwZtWL3wjghZ}N&*>Flpdm975GoRa`f z_b^OOw%k^SYbQv+ESk-OtpI$7NEH)jN+B3ryUf&>D;Z^{CNREF$IgRiHIMtZHxW6w zy~X+D!+Q%iF1Iu^%nZr$%*OruXVz}mFmq{YYQ`KKoXNDe&z!$_ac1_&k#px}(miq8 z-Z`@~STT8}>q`q*5IX2&5GQDU@d2&N5QAy_z9oQZz}h8_CwrRL=};`CSBR9aDj5`v z-%DGWTYD_6(SSrMhdU%gdl3h21}jrmv5mvI1^nv)_?qAn_%QMB4dH?w4# z3N#wpDZ3Dq$5ux5K{FH2L!Wkx4jmIpKbS9WKjNX^k+eQVA2RVBUFsb)WNQo$5B)f_ zpt7aTJgBrwy5DLj(8U^oyeotPHUY$!`mfkOrl8F*7CX!?)<|vlbLct$CF#R#Xngpa zU;Ow7-}~;j-aY%uD-UPSoO!r<>(+-tI{omS6DJ%?8r0=9 zq!u!ggZWv8$Q0J!lEEA9Ut`6+U3X4zXGBii!DhKEt+-hnsYzOKn<=cgyZt!QIg%-K_|tz8O+TLJ`Hm-grH!Vd7#Mn z7aJJM3W>2%IJIh`gkwC=viS5=9ZNgxdO!lUBbkii8Nqh+Fw_D+0#>wK2{hH(tm8Rk zQr2mR4WedkVs~q##QF>ul0P71r=7p}-H+aXnFyh6L!}Js> z=E@Y5RqwJa8s@AQQ~{adkCuui8A&sv**zSOLjiWOXf*H*V8B4r|B&IP6)Tn0`pH=r ztxtmD1y}gr2+|Vj8zeiKS_C4MTIm{)rZRw1?W7jAa-SLEJb%3&~EMcv=og zxH>pvi@I2N7q!F-Zjb1JdwTQG5Shr3;`}>rzIqS(-x&yhXYTCUm6^YNJHw>DGjvN^ zU!Un+vuf4ROd$KsGE)#JOKMd$F(EHi`&|#v^K!~kS&?iegBFFp>-W)q=i}Y{`|-kp ziP9WfEMQ8*lY_1%cs_MB$W)Ou7Wp)S3Pp9R_Tro%RpN_qnSeV*3f2=nrfuXXZn9*( zB+7^J(g-=DhpQ-g*XE4`pHlQmxV0l#g=fAJKXXc>%JxFq4w@fpyZc%ve_ zx(OO^nrOh;giXhUvb{S+M%7q6=hPLdon z#`Fv$#dC?4E>}pG(;9D8pnT|{wQhmepDtxHns@RDT0|}ZQF$3g7G?=TTO-he1mnSo z9?OEUV@NP?B5Q6N`&P_l7~FZ#SdraCEWXW9{j33AO})UAs|sjzm;Ecca9e-9_+vWC z#?9=7;WgVkFSNdhA?!M)uj`n;u4|2r*D--z-#j(7efxE92D`pU1#L+Xv2;Tr7J`9( zmrVT*UiYAEMP6JMJguJECLZ=06Ka$rp6+c!?8uhYLImVbmN!65)pF&ysFkqh z)@R@`N03`y8Z=}032R~xqCutw>MGXj^Ow*hm;-zsHDrjr)qL;$44xOg~Y^L2d< znh5bcxupWFOnCO1iI${LY{?H6lkrT4Vd}b~TRl>nB;S&gr(KiJ4JFZ2sl4StSyNCV zy>x&FB}SrpHhyw~zO+B+13d&UuzK;o1V8*Q$WIN}gtlQK3%q`>v3cyh*vHdb8xCi` zk$&PnOy722Nndv_r!TzF-_(6L-qDdxA8s+*P1g`l(|1RM+I zx?_^u`GEbgPvg`r^UN8llXve_GPpRy%8`FSQa)5RidGjh6GL)q<_bk znfYTM8g2u3*vYrCM^BICN4n&`zTy7f!3lOdw_hryF+GulO=g?ssJh8(+hL?6ifCK;1mtpYMv!l7A*&=w$-Lvk z&1~Hj?kSd1wt55jrvvRV>#SK?)5Fmn_AAgnf=Q?*=H>qtUKx-MX;QF0hl4##nDFX? z5oXrI(FwXt&6&I{%982iqlEPiI@Vq?tI^E@w6hqQk5C`PipSxCb{4p&NIIna;Gxf+ z1`_qqB~-Gbu{+Q``bF$FvA>S}ZS3D813|UsKm5br|J~pGcYpb(Z+!gm=doh(^WLtm z&mX`3`scrS^yu?n{QB3Q|M0WVe*W{%k1Z^GK6Uu;yPv-s#7vM%mM>)ZZqOAWTBw7e zZrKYFuWaE5JBus;r>;d`Gr~orxBlWk9X@;6zkAs>>R*5F;D>fZC1PDO9oK;dj&g&M z%uev|`E_{NRVCgs%7)8B2oLL2@Q?Ae)(i*`DhudL;M0?XGqt8D5OSr9T^aOV-PLv8 zg3AHIb{ffC!ch|=@!-3#yN09^)E-0`qUV3_H|jgtJ+Mx5Uw|LrScO5}wQGB@fiU@Z=rDG@_rog&2;wmhIrJ7t}{#u zN172liW?ZHqEUVm7R2^Szq1z2Yt#_k42KBkJJdr!6DWdVYNYs%J_dZ^>(LEenQE4^ zVJ-$f>NqSzMevr1LsZWd^+Q>Rt-;d=3$~`xp7HTS-3IOn(x#-rp;|4z}S3~*I7rwj9+QAyeGts4Q&8I+U` z_hVT2)Ya9{hkRX%+TaLMop)|Q$L0xYtB4g3?je@4B%=hOcORAd|B%sasD@Ura|orR z$N*DycN4byz$q&?t{g0Mr|LUWl?pq{35@8*be)~!xH#8gCpjlL$7wy$8cldBCOg(% zp;qD_G)t^bviq#s*dQbTkrBoRn-#qokdZ$qQcx_LDMH%3h+5n^MbXM&CZMkAt9MRs zIg@mHW32@pb?rb4YY@H zF8ILU5@6;)NH%(>3SID#{$CS@MNY(F7S%)6JAvJS-bwriFutT7SBBV;wjL?wXr;$A z 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%0Db8?AEwoH~wH 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

  • 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
  • eTLrZ{@(yIQAHBwm=o<^n8gxZ-QRU_D_fw4S- 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�WOSNFT& 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