This commit is contained in:
2025-11-26 16:10:17 +08:00
parent f0e85c5a18
commit c10bd369c0
83 changed files with 1755 additions and 541 deletions

View File

@@ -1,6 +1,5 @@
package com.ecep.contract.ui;
import java.util.HashMap;
import java.util.Locale;
import java.util.function.BiConsumer;
import java.util.logging.Level;
@@ -11,7 +10,6 @@ import org.springframework.beans.BeansException;
import com.ecep.contract.Message;
import com.ecep.contract.MessageHolder;
import com.ecep.contract.SpringApp;
import com.ecep.contract.ds.company.service.CompanyService;
import com.ecep.contract.ds.other.service.EmployeeService;
import com.ecep.contract.ds.other.service.SysConfService;
@@ -22,6 +20,27 @@ import com.ecep.contract.util.DefaultBeanContext;
import lombok.Getter;
import lombok.Setter;
/**
* Tasker基类提供任务执行和通信的核心功能
* <p>
* 该基类实现了任务执行框架,提供了以下核心功能:
* 1. 任务执行环境call方法
* 2. 消息处理和进度更新机制
* 3. Spring Bean获取和缓存功能
* 4. 当前用户和本地化支持
* <p>
* <b>主要组件:</b>
* - messageHandler: 处理消息通知
* - titleHandler: 处理标题更新
* - progressHandler: 处理进度更新
* - propertyHandler: 处理属性更新
* <p>
* <b>使用说明:</b>
* 1. 子类应继承此类并实现execute方法实现具体业务逻辑
* 2. 使用updateMessage、updateProgress等方法进行状态反馈
* 3. 对于WebSocket任务还应实现WebSocketServerTasker接口
* 4. 子类通常不需要覆盖setter方法这些由框架自动设置
*/
public abstract class Tasker<T> implements java.util.concurrent.Callable<T>, BeanContext {
private static final Logger logger = LoggerFactory.getLogger(Tasker.class);
@Setter