Files
contract-manager/client/src/main/java/com/ecep/contract/task/ContractRepairTask.java
songqq 87290f15b0 feat(SMB): 重构SMB文件服务支持多服务器配置和连接池优化
重构SmbFileService以支持多服务器配置,引入连接池和会话池管理机制。主要变更包括:
1. 实现基于主机的多服务器认证配置
2. 新增连接池和会话池管理,提高连接复用率
3. 添加定时清理空闲连接和会话的功能
4. 优化异常处理和重试机制
5. 改进日志记录和资源释放

同时更新相关配置文件和应用属性以支持新功能:
1. 修改application.properties支持多服务器SMB配置
2. 增强SmbConfig类以管理多服务器配置
3. 添加任务映射到tasker_mapper.json
4. 新增客户端和服务端任务规则文档
2025-11-17 12:55:31 +08:00

59 lines
1.5 KiB
Java

package com.ecep.contract.task;
import com.ecep.contract.MessageHolder;
import com.ecep.contract.SpringApp;
import com.ecep.contract.WebSocketClientTasker;
import com.ecep.contract.service.ContractService;
import com.ecep.contract.vo.ContractVo;
import lombok.Getter;
import lombok.Setter;
/**
* 合同修复任务
*/
public class ContractRepairTask extends Tasker<Object> implements WebSocketClientTasker {
@Getter
@Setter
private ContractVo contract;
@Getter
@Setter
private boolean repaired = false;
@Getter
@Setter
protected boolean filesUpdated = false;
@Getter
@Setter
protected boolean itemsUpdated = false;
@Getter
@Setter
protected boolean playPlanUpdated = false;
@Getter
@Setter
protected boolean saleOrderUpdated = false;
public ContractRepairTask() {
}
@Override
public String getTaskName() {
return "ContractRepairTask";
}
@Override
public void updateProgress(long current, long total) {
double d = (double) current / total;
super.updateProgress(d, 1);
System.out.println("current = " + d + ", total = " + total);
}
@Override
protected Object execute(MessageHolder holder) throws Exception {
ContractService contractService = SpringApp.getBean(ContractService.class);
updateTitle("修复合同 " + contractService.getStringConverter().toString(contract));
return callRemoteTask(holder, getLocale(), contract.getId());
}
}