feat(dms): 添加租户ID和用户ID参数

- 润滑工单dms_bills_lube_instance表新增租户id字段,相应实体类字段更新
- DmsPlanInspectService、DmsPlanLubeService 和 DmsPlanMaintService 中添加租户ID和用户ID传给定时任务job
- 更新 RemoteInspectInstanceService、RemoteLubeInstanceService 和 RemoteMaintInstanceService 接口,增加租户ID和用户ID参数
- 在 RemoteInspectInstanceServiceImpl、RemoteLubeInstanceServiceImpl 和 RemoteMaintInstanceServiceImpl 中实现新增参数的传递
- 更新 RemoteJobServiceImpl,将租户ID和用户ID作为任务参数添加到集群任务中
master
zch 1 month ago
parent a0a25ec1f9
commit 489bf79700

@ -4,6 +4,6 @@ import org.dromara.common.core.domain.R;
public interface RemoteInspectInstanceService { public interface RemoteInspectInstanceService {
public R<Integer> insertInspectInstance(String planInspectCode); public R<Integer> insertInspectInstance(String planInspectCode, String tenantId, Long userId);
} }

@ -6,7 +6,7 @@ import org.dromara.common.core.domain.R;
public interface RemoteLubeInstanceService { public interface RemoteLubeInstanceService {
public R<Void> insertLubeInstance(String lubeInstanceCode); public R<Void> insertLubeInstance(String lubeInstanceCode, String tenantId, Long userId);

@ -4,5 +4,5 @@ import org.dromara.common.core.domain.R;
public interface RemoteMaintInstanceService { public interface RemoteMaintInstanceService {
public R<Integer> insertDmsBillsMaintInstance(String planMaintCode); public R<Integer> insertDmsBillsMaintInstance(String planMaintCode, String tenantId, Long userId);
} }

@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data; import lombok.Data;
import lombok.EqualsAndHashCode; import lombok.EqualsAndHashCode;
import org.dromara.common.mybatis.core.domain.BaseEntity; import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.common.tenant.core.TenantEntity;
import org.dromara.dms.domain.vo.DmsBillsLubeDetailVo; import org.dromara.dms.domain.vo.DmsBillsLubeDetailVo;
import java.io.Serial; import java.io.Serial;
@ -22,7 +23,7 @@ import java.util.List;
@Data @Data
@EqualsAndHashCode(callSuper = true) @EqualsAndHashCode(callSuper = true)
@TableName("dms_bills_lube_instance") @TableName("dms_bills_lube_instance")
public class DmsBillsLubeInstance extends BaseEntity { public class DmsBillsLubeInstance extends TenantEntity {
@Serial @Serial
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;

@ -38,7 +38,7 @@ public class RemoteInspectInstanceServiceImpl implements RemoteInspectInstanceSe
@Override @Override
@Transactional( rollbackFor = Exception.class ) @Transactional( rollbackFor = Exception.class )
public R<Integer> insertInspectInstance(String planInspectCode){ public R<Integer> insertInspectInstance(String planInspectCode, String tenantId, Long userId){
// 使用 replaceAll 方法将双引号替换为空字符串 // 使用 replaceAll 方法将双引号替换为空字符串
@ -71,8 +71,6 @@ public class RemoteInspectInstanceServiceImpl implements RemoteInspectInstanceSe
// dmsBillsInspectInstance.setPerformer(dmsPlanInspect.getPerformer());//执行人 // dmsBillsInspectInstance.setPerformer(dmsPlanInspect.getPerformer());//执行人
//写死105也可根据传入对象的wfprocessid作为传参。 //写死105也可根据传入对象的wfprocessid作为传参。
/* /*
Long aLong = dmsRepairInstanceMapper.selectWfProcessActivityId(105l); Long aLong = dmsRepairInstanceMapper.selectWfProcessActivityId(105l);
@ -85,6 +83,10 @@ public class RemoteInspectInstanceServiceImpl implements RemoteInspectInstanceSe
// dmsBillsInspectInstance.setIsFlag("1"); // dmsBillsInspectInstance.setIsFlag("1");
dmsBillsInspectInstance.setInspectStatus(DmsConstants.DMS_BILLS_INSPECT_INSTANCE_INSPECT_STATUS_TO_INSPECT);//待巡检 dmsBillsInspectInstance.setInspectStatus(DmsConstants.DMS_BILLS_INSPECT_INSTANCE_INSPECT_STATUS_TO_INSPECT);//待巡检
dmsBillsInspectInstance.setCreateBy(userId);
// dmsBillsInspectInstance.setCreateTime(new Date());
dmsBillsInspectInstance.setTenantId(tenantId);
int i = dmsBillsInspectInstanceMapper.insert(dmsBillsInspectInstance); int i = dmsBillsInspectInstanceMapper.insert(dmsBillsInspectInstance);
// List<DmsBillsInspectInstance> dmsBillsInspectInstances = dmsBillsInspectInstanceMapper.selectDmsBillsInspectInstanceList(dmsBillsInspectInstance); // List<DmsBillsInspectInstance> dmsBillsInspectInstances = dmsBillsInspectInstanceMapper.selectDmsBillsInspectInstanceList(dmsBillsInspectInstance);
@ -118,6 +120,10 @@ public class RemoteInspectInstanceServiceImpl implements RemoteInspectInstanceSe
dmsInspectInstanceDetail.setInspectStatus("0");//TODO:为什么设置为异常? dmsInspectInstanceDetail.setInspectStatus("0");//TODO:为什么设置为异常?
// dmsInspectInstanceDetailMapper.insertDmsInspectInstanceDetail(dmsInspectInstanceDetail); // dmsInspectInstanceDetailMapper.insertDmsInspectInstanceDetail(dmsInspectInstanceDetail);
dmsInspectInstanceDetail.setTenantId(tenantId);
dmsInspectInstanceDetail.setCreateBy(userId);
// dmsInspectInstanceDetail.setCreateTime(new Date());
dmsInspectInstanceDetailMapper.insert(dmsInspectInstanceDetail); dmsInspectInstanceDetailMapper.insert(dmsInspectInstanceDetail);
Long projectId = dmsInspectInstanceDetailMapper.selectProjectId(dmsInspectRouteDetail.getInspectStandard()); Long projectId = dmsInspectInstanceDetailMapper.selectProjectId(dmsInspectRouteDetail.getInspectStandard());
@ -138,6 +144,11 @@ public class RemoteInspectInstanceServiceImpl implements RemoteInspectInstanceSe
dmsInspectInstanceDetailProject.setInstanceDetailId(dmsInspectInstanceDetail.getInstanceDetailId()); dmsInspectInstanceDetailProject.setInstanceDetailId(dmsInspectInstanceDetail.getInstanceDetailId());
dmsInspectInstanceDetailProject.setInspectProjectId(projectId); dmsInspectInstanceDetailProject.setInspectProjectId(projectId);
// dmsInspectInstanceDetailProjectMapper.insertDmsInspectInstanceDetailProject(dmsInspectInstanceDetailProject); // dmsInspectInstanceDetailProjectMapper.insertDmsInspectInstanceDetailProject(dmsInspectInstanceDetailProject);
dmsInspectInstanceDetailProject.setTenantId(tenantId);
dmsInspectInstanceDetailProject.setCreateBy(userId);
// dmsInspectInstanceDetailProject.setCreateTime(new Date());
dmsInspectInstanceDetailProjectMapper.insert(dmsInspectInstanceDetailProject); dmsInspectInstanceDetailProjectMapper.insert(dmsInspectInstanceDetailProject);
// } // }

@ -52,7 +52,7 @@ public class RemoteLubeInstanceServiceImpl implements RemoteLubeInstanceService
@Override @Override
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public R<Void> insertLubeInstance(String planLubeCode) { public R<Void> insertLubeInstance(String planLubeCode, String tenantId, Long userId) {
// 去除润滑计划编号中的双引号 // 去除润滑计划编号中的双引号
// String lubeInstanceCodeS = planLubeCode.replaceAll("\"", ""); // String lubeInstanceCodeS = planLubeCode.replaceAll("\"", "");
@ -76,32 +76,35 @@ public class RemoteLubeInstanceServiceImpl implements RemoteLubeInstanceService
} }
// 创建新的润滑工单实例对象 // 创建新的润滑工单实例对象
DmsBillsLubeInstanceBo dmsBillsLubeInstanceBo = new DmsBillsLubeInstanceBo(); DmsBillsLubeInstance dmsBillsLubeInstance = new DmsBillsLubeInstance();
// 设置创建人 // 设置创建人
dmsBillsLubeInstanceBo.setCreateBy(dmsPlanLube.getCreateBy()); dmsBillsLubeInstance.setCreateBy(dmsPlanLube.getCreateBy());
// 设置润滑工单的计划ID // 设置润滑工单的计划ID
dmsBillsLubeInstanceBo.setPlanLubeId(dmsPlanLube.getPlanLubeId()); dmsBillsLubeInstance.setPlanLubeId(dmsPlanLube.getPlanLubeId());
// 设置计划开始时间为润滑时间 // 设置计划开始时间为润滑时间
dmsBillsLubeInstanceBo.setPlanBeginTime(dmsPlanLube.getLubeTime()); dmsBillsLubeInstance.setPlanBeginTime(dmsPlanLube.getLubeTime());
// 生成并设置润滑工单编码 // 生成并设置润滑工单编码
dmsBillsLubeInstanceBo.setBillsLubeCode(Seq.getId(Seq.dmsLubeInstanceSeqType, Seq.dmsLubeInstanceCode)); dmsBillsLubeInstance.setBillsLubeCode(Seq.getId(Seq.dmsLubeInstanceSeqType, Seq.dmsLubeInstanceCode));
// 设置润滑状态为待润滑 // 设置润滑状态为待润滑
dmsBillsLubeInstanceBo.setLubeStatus(DmsConstants.DMS_BILLS_LUBE_INSTANCE_STATUS_TO_LUBE); dmsBillsLubeInstance.setLubeStatus(DmsConstants.DMS_BILLS_LUBE_INSTANCE_STATUS_TO_LUBE);
// 设置润滑组 // 设置润滑组
dmsBillsLubeInstanceBo.setLubeGroup(dmsPlanLube.getLubeGroup()); dmsBillsLubeInstance.setLubeGroup(dmsPlanLube.getLubeGroup());
// 设置润滑监督人 // 设置润滑监督人
dmsBillsLubeInstanceBo.setLubeSupervisor(dmsPlanLube.getLubeSupervisor()); dmsBillsLubeInstance.setLubeSupervisor(dmsPlanLube.getLubeSupervisor());
// 设置润滑级别 // 设置润滑级别
dmsBillsLubeInstanceBo.setLubeLevel(dmsPlanLube.getLubeLevel()); dmsBillsLubeInstance.setLubeLevel(dmsPlanLube.getLubeLevel());
// 获取时间限制 // 获取时间限制
Long timeLimit = dmsPlanLube.getTimeLimit(); Long timeLimit = dmsPlanLube.getTimeLimit();
// 计算并设置计划结束时间 // 计算并设置计划结束时间
Date planEndTime = new Date(dmsPlanLube.getLubeTime().getTime() + timeLimit * 1000L); Date planEndTime = new Date(dmsPlanLube.getLubeTime().getTime() + timeLimit * 1000L);
dmsBillsLubeInstanceBo.setPlanEndTime(planEndTime); dmsBillsLubeInstance.setPlanEndTime(planEndTime);
dmsBillsLubeInstance.setCreateBy(userId);
// dmsBillsLubeInstance.setCreateTime(new Date());
dmsBillsLubeInstance.setTenantId(tenantId);
// 插入润滑工单实例到数据库 // 插入润滑工单实例到数据库
DmsBillsLubeInstanceVo BillsLubeInstance = dmsBillsLubeInstanceService.insertByBo(dmsBillsLubeInstanceBo); int i = dmsBillsLubeInstanceMapper.insert(dmsBillsLubeInstance);
DmsPlanLubeBo dmsPlanLubeBo = MapstructUtils.convert(dmsPlanLube, DmsPlanLubeBo.class); DmsPlanLubeBo dmsPlanLubeBo = MapstructUtils.convert(dmsPlanLube, DmsPlanLubeBo.class);
@ -110,25 +113,19 @@ public class RemoteLubeInstanceServiceImpl implements RemoteLubeInstanceService
List<DmsBillsLubeDetail> billsLubeDetails = new ArrayList<>(); List<DmsBillsLubeDetail> billsLubeDetails = new ArrayList<>();
for (DmsPlanLubeDetailVo planLubeDetail : lubeDetails) { for (DmsPlanLubeDetailVo planLubeDetail : lubeDetails) {
DmsBillsLubeDetail dmsBillsLubeDetail = new DmsBillsLubeDetail(); DmsBillsLubeDetail dmsBillsLubeDetail = new DmsBillsLubeDetail();
dmsBillsLubeDetail.setLubeInstanceId(dmsBillsLubeInstanceBo.getLubeInstanceId()); dmsBillsLubeDetail.setLubeInstanceId(dmsBillsLubeInstance.getLubeInstanceId());
dmsBillsLubeDetail.setMachineId(planLubeDetail.getDeviceId()); dmsBillsLubeDetail.setMachineId(planLubeDetail.getDeviceId());
dmsBillsLubeDetail.setLubeStationId(planLubeDetail.getLubeStationId()); dmsBillsLubeDetail.setLubeStationId(planLubeDetail.getLubeStationId());
dmsBillsLubeDetail.setLubeStandardId(planLubeDetail.getLubeStandardId()); dmsBillsLubeDetail.setLubeStandardId(planLubeDetail.getLubeStandardId());
//dmsBillsLubeDetail.setActiveFlag("Y"); // 假设是否标记字段对应activeFlag //dmsBillsLubeDetail.setActiveFlag("Y"); // 假设是否标记字段对应activeFlag
billsLubeDetails.add(dmsBillsLubeDetail);
dmsBillsLubeDetail.setTenantId(tenantId);
dmsBillsLubeDetail.setCreateBy(userId);
// dmsBillsLubeDetail.setCreateTime(new Date());
dmsBillsLubeDetailMapper.insert(dmsBillsLubeDetail);
} }
/* // 使用mybatis-plus批量保存
return dmsBillsLubeDetailMapper.insertBatch(billsLubeDetails);*/
// 修改批量插入方式避免SQL Server批量插入时获取自动生成主键的问题
boolean result = true;
for (DmsBillsLubeDetail detail : billsLubeDetails) {
result = result && dmsBillsLubeDetailMapper.insert(detail) > 0;
if (!result) {
break;
}
}
return R.ok(); return R.ok();
} }

@ -37,12 +37,6 @@ public class RemoteMaintInstanceServiceImpl implements RemoteMaintInstanceServic
// 预定义系统用户相关常量,实际项目中建议从配置读取或定义在公共常量类中
private static final Long SYSTEM_USER_ID = 1L; // 假设的系统管理员用户ID
private static final Long SYSTEM_DEPT_ID = 103L; // 假设的系统默认部门ID
private static final String DEFAULT_TENANT_ID_FOR_JOBS = "000000"; // 定时任务使用的默认租户ID
/** /**
* *
* *
@ -51,7 +45,7 @@ public class RemoteMaintInstanceServiceImpl implements RemoteMaintInstanceServic
*/ */
@Override @Override
@Transactional( rollbackFor = Exception.class ) @Transactional( rollbackFor = Exception.class )
public R<Integer> insertDmsBillsMaintInstance(String planMaintCode) { public R<Integer> insertDmsBillsMaintInstance(String planMaintCode , String tenantId, Long userId) {
String planMaintCodeS = planMaintCode.replaceAll("\"", ""); String planMaintCodeS = planMaintCode.replaceAll("\"", "");
DmsPlanMaint dmsPlanMaint = dmsPlanMaintMapper.selectDmsPlanMaintJoinByPlanMaintCode(planMaintCodeS); DmsPlanMaint dmsPlanMaint = dmsPlanMaintMapper.selectDmsPlanMaintJoinByPlanMaintCode(planMaintCodeS);
List<DmsPlanMaintDetail> planMaintDetails = dmsPlanMaint.getDmsPlanMaintDetailList(); List<DmsPlanMaintDetail> planMaintDetails = dmsPlanMaint.getDmsPlanMaintDetailList();
@ -76,21 +70,8 @@ public class RemoteMaintInstanceServiceImpl implements RemoteMaintInstanceServic
dmsBillsMaintInstance.setPlanEndTime(new Date(lubeTime.getTime() + timeLimit * 1000l)); dmsBillsMaintInstance.setPlanEndTime(new Date(lubeTime.getTime() + timeLimit * 1000l));
//字段没有自动填充,只能代码手动填充 //字段没有自动填充,只能代码手动填充
dmsBillsMaintInstance.setCreateBy(userId);//暂时默认系统用户
// 获取用户信息 dmsBillsMaintInstance.setTenantId(tenantId);//暂时默认系统用户
/* SaSession session = StpUtil.getTokenSession();
if (ObjectUtil.isNull(session)) {
return R.fail("用户会话不存在");
}
LoginUser loginUser = (LoginUser) session.get("loginUser");*/
LoginUser loginUser = new LoginUser();//暂时默认系统用户
loginUser.setTenantId(DEFAULT_TENANT_ID_FOR_JOBS);//暂时默认系统用户
loginUser.setUserId(SYSTEM_USER_ID);//暂时默认系统用户
loginUser.setDeptId(SYSTEM_DEPT_ID);//暂时默认系统用户
dmsBillsMaintInstance.setCreateBy(SYSTEM_USER_ID);//暂时默认系统用户
dmsBillsMaintInstance.setCreateDept(SYSTEM_DEPT_ID);//暂时默认系统用户
dmsBillsMaintInstance.setTenantId(DEFAULT_TENANT_ID_FOR_JOBS);//暂时默认系统用户
int i = dmsBillsMaintInstanceMapper.insert(dmsBillsMaintInstance); int i = dmsBillsMaintInstanceMapper.insert(dmsBillsMaintInstance);
@ -99,18 +80,15 @@ public class RemoteMaintInstanceServiceImpl implements RemoteMaintInstanceServic
// dmsMaintInstanceActivity.setProcessStepOrder(1L); // dmsMaintInstanceActivity.setProcessStepOrder(1L);
// int i1 = dmsMaintInstanceActivityMapper.insertDmsMaintInstanceActivity(dmsMaintInstanceActivity); // int i1 = dmsMaintInstanceActivityMapper.insertDmsMaintInstanceActivity(dmsMaintInstanceActivity);
batchInsertDmsBillsMaintDetail(dmsPlanMaint, dmsBillsMaintInstance.getMaintInstanceId(), loginUser); batchInsertDmsBillsMaintDetail(dmsPlanMaint, dmsBillsMaintInstance.getMaintInstanceId(), tenantId, userId);
return R.ok(i); return R.ok(i);
} }
@Transactional( rollbackFor = Exception.class ) @Transactional( rollbackFor = Exception.class )
public void batchInsertDmsBillsMaintDetail(DmsPlanMaint dmsPlanMaint, Long maintInstanceId, LoginUser loginUser) { public void batchInsertDmsBillsMaintDetail(DmsPlanMaint dmsPlanMaint, Long maintInstanceId, String tenantId, Long userId) {
Long userId = loginUser.getUserId();
Long deptId = loginUser.getDeptId();
String tenantId = loginUser.getTenantId();
List<DmsPlanMaintDetail> planMaintDetails = dmsPlanMaint.getDmsPlanMaintDetailList(); List<DmsPlanMaintDetail> planMaintDetails = dmsPlanMaint.getDmsPlanMaintDetailList();
List<DmsBillsMaintDetail> billsMaintDetails = new ArrayList<>(); List<DmsBillsMaintDetail> billsMaintDetails = new ArrayList<>();
@ -125,7 +103,6 @@ public class RemoteMaintInstanceServiceImpl implements RemoteMaintInstanceServic
//字段没有自动填充,只能代码手动填充 //字段没有自动填充,只能代码手动填充
dmsBillsMaintDetail.setCreateBy(userId); dmsBillsMaintDetail.setCreateBy(userId);
dmsBillsMaintDetail.setCreateDept(deptId);
dmsBillsMaintDetail.setTenantId(tenantId); dmsBillsMaintDetail.setTenantId(tenantId);
dmsBillsMaintDetailMapper.insert(dmsBillsMaintDetail); dmsBillsMaintDetailMapper.insert(dmsBillsMaintDetail);
@ -147,7 +124,6 @@ public class RemoteMaintInstanceServiceImpl implements RemoteMaintInstanceServic
//字段没有自动填充,只能代码手动填充 //字段没有自动填充,只能代码手动填充
billsMaintDetailProject.setCreateBy(userId); billsMaintDetailProject.setCreateBy(userId);
billsMaintDetailProject.setCreateDept(deptId);
billsMaintDetailProject.setTenantId(tenantId); billsMaintDetailProject.setTenantId(tenantId);
dmsBillsMaintDetailProjectMapper.insert(billsMaintDetailProject); dmsBillsMaintDetailProjectMapper.insert(billsMaintDetailProject);

@ -15,10 +15,12 @@ import org.dromara.common.core.utils.StringUtils;
import org.dromara.common.core.utils.uuid.Seq; import org.dromara.common.core.utils.uuid.Seq;
import org.dromara.common.mybatis.core.page.PageQuery; import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.mybatis.core.page.TableDataInfo; import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.common.satoken.utils.LoginHelper;
import org.dromara.dms.domain.DmsBaseInspectRoute; import org.dromara.dms.domain.DmsBaseInspectRoute;
import org.dromara.dms.domain.DmsPlanInspect; import org.dromara.dms.domain.DmsPlanInspect;
import org.dromara.dms.domain.bo.DmsPlanInspectBo; import org.dromara.dms.domain.bo.DmsPlanInspectBo;
import org.dromara.dms.domain.vo.DmsPlanInspectVo; import org.dromara.dms.domain.vo.DmsPlanInspectVo;
import org.dromara.dms.domain.vo.DmsPlanMaintVo;
import org.dromara.dms.mapper.DmsBaseInspectRouteMapper; import org.dromara.dms.mapper.DmsBaseInspectRouteMapper;
import org.dromara.dms.mapper.DmsPlanInspectMapper; import org.dromara.dms.mapper.DmsPlanInspectMapper;
import org.dromara.dms.service.IDmsPlanInspectService; import org.dromara.dms.service.IDmsPlanInspectService;
@ -204,17 +206,17 @@ public class DmsPlanInspectServiceImpl implements IDmsPlanInspectService {
.setTriggerInterval(bo.getCronExpression())//间隔时长: cron表达式 .setTriggerInterval(bo.getCronExpression())//间隔时长: cron表达式
.setRetryInterval(3)//重试间隔时长 .setRetryInterval(3)//重试间隔时长
.setArgsStr("planInspectCode") .setArgsStr("planInspectCode")
.setExtAttrs(planInspectCode); .setExtAttrs(planInspectCode)
.setUserId(LoginHelper.getUserId().toString())
.setTenantId(LoginHelper.getTenantId());
R<Long> longR = remoteJobService.addClusterJob(dmsJobEntity); R<Long> longR = remoteJobService.addClusterJob(dmsJobEntity);
Long jobId = longR.getData(); Long newJobId = longR.getData();
String time = cron;
//通过cron表达式获取下一次执行时间 //通过cron表达式获取下一次执行时间
String time = cron;
Date nextExecution = CronUtils.getNextExecution(time); Date nextExecution = CronUtils.getNextExecution(time);
add.setPlanTime(nextExecution); add.setPlanTime(nextExecution);
add.setPlanInspectCode(planInspectCode); add.setPlanInspectCode(planInspectCode);
add.setJobId(jobId); add.setJobId(newJobId);
} }
Long timeLimitDays = add.getTimeLimitDays()==null ? 0L:add.getTimeLimitDays(); Long timeLimitDays = add.getTimeLimitDays()==null ? 0L:add.getTimeLimitDays();
@ -241,9 +243,83 @@ public class DmsPlanInspectServiceImpl implements IDmsPlanInspectService {
* @return * @return
*/ */
@Override @Override
@GlobalTransactional(rollbackFor = Exception.class)
public Boolean updateByBo(DmsPlanInspectBo bo) { public Boolean updateByBo(DmsPlanInspectBo bo) {
DmsPlanInspect update = MapstructUtils.convert(bo, DmsPlanInspect.class); DmsPlanInspect update = MapstructUtils.convert(bo, DmsPlanInspect.class);
String day = "*";
String month = "*";
String week = "*";
String year = "*";
String cron = "";
if (update.getDay()!=null){
day = update.getDay().toString();
}
if (update.getMonth()!=null){
month = update.getMonth().toString();
}
if (update.getWeek()!=null){
Long weekDay = update.getWeek() + 1;
week = weekDay.toString();
}
if (update.getYear()!=null){
year = update.getYear().toString();
}
if (update.getInspectLevel().equals(1l)){
cron = "0 0 "+update.getHour()+" "+day+" "+month+" ?";
}
if (update.getInspectLevel().equals(2l)){
cron = "0 0 "+update.getHour()+" ?"+" "+month+" "+week;
}
if (update.getInspectLevel().equals(3l)){
cron = "0 0 "+update.getHour()+" "+day+" "+ month+" ? "+year;
}
String time = cron;
//通过cron表达式获取下一次执行时间
Date nextExecution = CronUtils.getNextExecution(time);
update.setPlanTime(nextExecution);
//获取设备总数
Long aLong = dmsBaseInspectRouteMapper.selectAmountByInspectRouteId(update.getInspectRouteId());
update.setDeviceAmount(aLong);
validEntityBeforeSave(update); validEntityBeforeSave(update);
Long jobId = bo.getJobId();
String planInspectCode = bo.getPlanInspectCode();
// String cronExpression = bo.getCronExpression();
if (bo.getActiveFlag().equals("1")) {//激活标识1是 0否
if (StringUtils.isNull(jobId)){//之前没激活创建定时任务,创建定时任务
DmsJobEntity dmsJobEntity = new DmsJobEntity();
dmsJobEntity.setRouteKey(AllocationAlgorithmEnum.ROUND)//路由策略:轮询
.setJobName("点巡检计划编号" + planInspectCode + "工单任务")
.setExecutorInfo("stanceInspect")//执行器名称
.setExecutorTimeout(30)//执行超时时间
.setBlockStrategy(JobBlockStrategyEnum.CONCURRENCY)//阻塞策略:并发
.setMaxRetryTimes(2)//最大重试次数
.setTriggerType(TriggerTypeEnum.CRON)//触发器类型cron
.setTriggerInterval(bo.getCronExpression())//间隔时长: cron表达式
.setRetryInterval(3)//重试间隔时长
.setArgsStr("planInspectCode")
.setExtAttrs(planInspectCode)
.setUserId(LoginHelper.getUserId().toString())
.setTenantId(LoginHelper.getTenantId());
R<Long> longR = remoteJobService.addClusterJob(dmsJobEntity);
Long newJobId = longR.getData();
update.setJobId(newJobId);
}else{//之前激活了,修改定时任务
DmsJobEntity dmsJobEntity = new DmsJobEntity();
dmsJobEntity
.setId(jobId)
.setTriggerInterval(bo.getCronExpression())//间隔时长: cron表达式
.setUserId(LoginHelper.getUserId().toString())
.setTenantId(LoginHelper.getTenantId());
R<Void> updateClusterJob = remoteJobService.updateClusterJob(dmsJobEntity);
}
}else{//如果激活状态为01是 0否
if (StringUtils.isNotNull(jobId)) {//之前激活过,创建并关联了任务
//则任务状态为关闭
R<Void> voidR = remoteJobService.updateJobStatus(jobId, 0L);//任务状态0关闭1开启
}
}
return baseMapper.updateById(update) > 0; return baseMapper.updateById(update) > 0;
} }
@ -262,10 +338,19 @@ public class DmsPlanInspectServiceImpl implements IDmsPlanInspectService {
* @return * @return
*/ */
@Override @Override
@GlobalTransactional(rollbackFor = Exception.class)
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) { public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
if(isValid){ if(isValid){
//TODO 做一些业务上的校验,判断是否需要校验 //TODO 做一些业务上的校验,判断是否需要校验
} }
for (Long id : ids){
DmsPlanInspectVo dmsPlanInspectVo = baseMapper.selectVoById(id);
Long jobId = dmsPlanInspectVo.getJobId();
if (StringUtils.isNotNull(jobId)){
//则任务状态为关闭
R<Void> voidR = remoteJobService.updateJobStatus(jobId, 0L);//任务状态0关闭1开启
}
}
return baseMapper.deleteByIds(ids) > 0; return baseMapper.deleteByIds(ids) > 0;
} }
} }

@ -13,6 +13,7 @@ import org.dromara.common.core.utils.uuid.Seq;
import org.dromara.common.mybatis.Utils.UniqueCodeUtils; import org.dromara.common.mybatis.Utils.UniqueCodeUtils;
import org.dromara.common.mybatis.core.page.PageQuery; import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.mybatis.core.page.TableDataInfo; import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.common.satoken.utils.LoginHelper;
import org.dromara.dms.domain.DmsBillsLubeInstance; import org.dromara.dms.domain.DmsBillsLubeInstance;
import org.dromara.dms.domain.DmsPlanLube; import org.dromara.dms.domain.DmsPlanLube;
import org.dromara.dms.domain.bo.DmsPlanLubeBo; import org.dromara.dms.domain.bo.DmsPlanLubeBo;
@ -179,19 +180,6 @@ public class DmsPlanLubeServiceImpl implements IDmsPlanLubeService {
// 生成新的润滑计划编号 // 生成新的润滑计划编号
String planLubeCode = Seq.getId(Seq.dmsPlanLubeSeqType, Seq.dmsPlanLubeCode); String planLubeCode = Seq.getId(Seq.dmsPlanLubeSeqType, Seq.dmsPlanLubeCode);
bo.setPlanLubeCode(planLubeCode); bo.setPlanLubeCode(planLubeCode);
/*
// 创建系统任务对象
SysJob job = new SysJob();
job.setJobName("润滑计划编号" + planLubeCode + "工单任务");
job.setJobGroup("DEFAULT");
job.setInvokeTarget("ryTask.getDmsBillsLube(\"" + planLubeCode + "\")");
job.setCronExpression(bo.getCronExpression());
job.setMisfirePolicy("1");
job.setConcurrent("1");
job.setStatus("1");
// 添加任务到远程服务并获取任务ID
R<Integer> jobIdR = remoteJobService.add(SecurityConstants.INNER, job);*/
if(bo.getActiveFlag().equals("1")){//激活标识1是 0否 if(bo.getActiveFlag().equals("1")){//激活标识1是 0否
DmsJobEntity dmsJobEntity = new DmsJobEntity(); DmsJobEntity dmsJobEntity = new DmsJobEntity();
@ -205,23 +193,22 @@ public class DmsPlanLubeServiceImpl implements IDmsPlanLubeService {
.setTriggerInterval(bo.getCronExpression())//间隔时长: cron表达式 .setTriggerInterval(bo.getCronExpression())//间隔时长: cron表达式
.setRetryInterval(3)//重试间隔时长 .setRetryInterval(3)//重试间隔时长
.setArgsStr("planLubeCode") .setArgsStr("planLubeCode")
.setExtAttrs(planLubeCode); .setExtAttrs(planLubeCode)
.setUserId(LoginHelper.getUserId().toString())
.setTenantId(LoginHelper.getTenantId());
R<Long> longR = remoteJobService.addClusterJob(dmsJobEntity); R<Long> longR = remoteJobService.addClusterJob(dmsJobEntity);
Long jobId = longR.getData(); Long jobId = longR.getData();
// 通过cron表达式获取下一次执行时间 // 通过cron表达式获取下一次执行时间
String cronExpression = bo.getCronExpression(); String cronExpression = bo.getCronExpression();
if (StringUtils.isNotEmpty(cronExpression)) { if (StringUtils.isNotEmpty(cronExpression)) {
Date nextExecution = CronUtils.getNextExecution(cronExpression); Date nextExecution = CronUtils.getNextExecution(cronExpression);
bo.setLubeTime(nextExecution); bo.setLubeTime(nextExecution);
} }
// 设置润滑计划的任务ID // 设置润滑计划的任务ID
bo.setJobId(jobId); bo.setJobId(jobId);
} }
// 计算润滑计划的时间限制(天和小时) // 计算润滑计划的时间限制(天和小时)
Long timeLimitDays = bo.getTimeLimitDays() == null ? 0L : bo.getTimeLimitDays(); Long timeLimitDays = bo.getTimeLimitDays() == null ? 0L : bo.getTimeLimitDays();
Long timeLimitHours = bo.getTimeLimitHours() == null ? 0L : bo.getTimeLimitHours(); Long timeLimitHours = bo.getTimeLimitHours() == null ? 0L : bo.getTimeLimitHours();
@ -245,82 +232,65 @@ public class DmsPlanLubeServiceImpl implements IDmsPlanLubeService {
* @return * @return
*/ */
@Override @Override
@Transactional(rollbackFor = Exception.class) @GlobalTransactional(rollbackFor = Exception.class)
public Boolean updateByBo(DmsPlanLubeBo bo) { public Boolean updateByBo(DmsPlanLubeBo bo) {
Long jobId = bo.getJobId(); Long jobId = bo.getJobId();
String cronExpression = bo.getCronExpression(); String cronExpression = bo.getCronExpression();
if (StringUtils.isNotEmpty(cronExpression)) { if (bo.getActiveFlag().equals("1")){//激活标识1是 0否
// 通过cron表达式获取下一次执行时间 // 通过cron表达式获取下一次执行时间
Date nextExecution = CronUtils.getNextExecution(cronExpression); Date nextExecution = CronUtils.getNextExecution(cronExpression);
bo.setLubeTime(nextExecution); bo.setLubeTime(nextExecution);
if (bo.getActiveFlag().equals("1")){//激活标识1是 0否 if (StringUtils.isNull(jobId)) {// 如果没有关联任务,创建新任务
if (jobId == null ) {// 如果没有关联任务,创建新任务
/* String planLubeCode = bo.getPlanLubeCode();
SysJob job = new SysJob();
job.setJobName("润滑计划编号" + planLubeCode + "工单任务");
job.setJobGroup("DEFAULT");
job.setInvokeTarget("ryTask.getDmsBillsLube(\"" + planLubeCode + "\")");
job.setCronExpression(bo.getCronExpression());
job.setMisfirePolicy("1");
job.setConcurrent("1");
job.setStatus("1");
R<Integer> jobIdR = remoteJobService.add(SecurityConstants.INNER, job);
bo.setJobId(jobIdR.getData().longValue());*/
String planLubeCode = bo.getPlanLubeCode(); String planLubeCode = bo.getPlanLubeCode();
Long newJobId = SnailJobOpenApi.addClusterJob() DmsJobEntity dmsJobEntity = new DmsJobEntity();
.setRouteKey(AllocationAlgorithmEnum.ROUND)//路由策略:轮询 dmsJobEntity.setRouteKey(AllocationAlgorithmEnum.ROUND)//路由策略:轮询
.setJobName("润滑计划编号" + planLubeCode + "工单任务") .setJobName("润滑计划编号" + planLubeCode + "工单任务")
.setExecutorInfo("stanceLube")//执行器名称 .setExecutorInfo("stanceLube")//执行器名称
.addArgsStr("planLubeCode", planLubeCode)//执行任务参数
.setExecutorTimeout(30)//执行超时时间 .setExecutorTimeout(30)//执行超时时间
.setBlockStrategy(JobBlockStrategyEnum.CONCURRENCY)//阻塞策略:并发 .setBlockStrategy(JobBlockStrategyEnum.CONCURRENCY)//阻塞策略:并发
.setMaxRetryTimes(2)//最大重试次数 .setMaxRetryTimes(2)//最大重试次数
.setTriggerType(TriggerTypeEnum.CRON)//触发器类型cron .setTriggerType(TriggerTypeEnum.CRON)//触发器类型cron
.setTriggerInterval(bo.getCronExpression())//间隔时长: cron表达式 .setTriggerInterval(bo.getCronExpression())//间隔时长: cron表达式
.setRetryInterval(3)//重试间隔时长 .setRetryInterval(3)//重试间隔时长
.execute(); .setArgsStr("planLubeCode")
.setExtAttrs(planLubeCode)
.setUserId(LoginHelper.getUserId().toString())
.setTenantId(LoginHelper.getTenantId());
R<Long> longR = remoteJobService.addClusterJob(dmsJobEntity);
Long newJobId = longR.getData();
bo.setJobId(newJobId); bo.setJobId(newJobId);
} else {// 如果有关联任务,更新状态 } else {// 如果有关联任务,更新状态
/* // 更新现有任务 // 更新现有任务
SysJob sysJob = remoteJobService.getJobInfo(jobId, SecurityConstants.INNER);
if (sysJob != null) {
sysJob.setCronExpression(bo.getCronExpression());
remoteJobService.update(SecurityConstants.INNER, sysJob);
}*/
String planLubeCode = bo.getPlanLubeCode(); String planLubeCode = bo.getPlanLubeCode();
JobResponseVO execute = SnailJobOpenApi.getJobDetail(jobId).execute(); DmsJobEntity dmsJobEntity = new DmsJobEntity();
if (execute != null) { dmsJobEntity.setId(jobId);//任务ID
SnailJobOpenApi dmsJobEntity.setRouteKey(AllocationAlgorithmEnum.ROUND)//路由策略:轮询
.updateJobStatus(jobId)
.setStatus(StatusEnum.YES)
.execute();
SnailJobOpenApi.updateClusterJob(jobId)
.setRouteKey(AllocationAlgorithmEnum.ROUND)//路由策略:轮询
.setJobName("润滑计划编号" + planLubeCode + "工单任务") .setJobName("润滑计划编号" + planLubeCode + "工单任务")
.setExecutorInfo("stanceLube")//执行器名称 .setExecutorInfo("stanceLube")//执行器名称
.addArgsStr("planLubeCode", planLubeCode)//执行任务参数
.setExecutorTimeout(30)//执行超时时间 .setExecutorTimeout(30)//执行超时时间
.setBlockStrategy(JobBlockStrategyEnum.CONCURRENCY)//阻塞策略:并发 .setBlockStrategy(JobBlockStrategyEnum.CONCURRENCY)//阻塞策略:并发
.setMaxRetryTimes(2)//最大重试次数 .setMaxRetryTimes(2)//最大重试次数
.setTriggerType(TriggerTypeEnum.CRON)//触发器类型cron .setTriggerType(TriggerTypeEnum.CRON)//触发器类型cron
.setTriggerInterval(bo.getCronExpression())//间隔时长: cron表达式 .setTriggerInterval(bo.getCronExpression())//间隔时长: cron表达式
.setRetryInterval(3)//重试间隔时长 .setRetryInterval(3)//重试间隔时长
.execute(); .setArgsStr("planLubeCode")
} .setExtAttrs(planLubeCode)
.setUserId(LoginHelper.getUserId().toString())
.setTenantId(LoginHelper.getTenantId());
R<Void> longR = remoteJobService.updateClusterJob(dmsJobEntity);
} }
}else{//如果激活状态为01是 0否 }else{//如果激活状态为01是 0否
if (jobId != null) {//如果关联了任务,则任务状态为关闭 if (StringUtils.isNotNull(jobId)) {//如果关联了任务,则任务状态为关闭
SnailJobOpenApi R<Void> voidR = remoteJobService.updateJobStatus(jobId, 0L);//任务状态0关闭1开启
.updateJobStatus(jobId)
.setStatus(StatusEnum.NO)//任务状态0关闭1开启
.execute();
} }
} }
}
// 计算润滑计划的时间限制(天和小时) // 计算润滑计划的时间限制(天和小时)
Long timeLimitDays = bo.getTimeLimitDays() == null ? 0L : bo.getTimeLimitDays(); Long timeLimitDays = bo.getTimeLimitDays() == null ? 0L : bo.getTimeLimitDays();
@ -357,17 +327,20 @@ public class DmsPlanLubeServiceImpl implements IDmsPlanLubeService {
* @return * @return
*/ */
@Override @Override
@GlobalTransactional(rollbackFor = Exception.class)
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) { public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
if(isValid){ if(isValid){
//TODO 做一些业务上的校验,判断是否需要校验
}
// 删除前检查是否可以删除 // 删除前检查是否可以删除
/* for (Long id : ids) { for (Long id : ids) {
// 查询关联的任务ID // 查询关联的任务ID
DmsPlanLubeVo dmsPlanLube = baseMapper.selectVoById(id); DmsPlanLubeVo dmsPlanLube = baseMapper.selectVoById(id);
if (dmsPlanLube != null && dmsPlanLube.getJobId() != null) { Long jobId = dmsPlanLube.getJobId();
// 删除关联的定时任务 if (StringUtils.isNotNull(jobId)) {
remoteJobService.remove(dmsPlanLube.getJobId(), SecurityConstants.INNER); //则任务状态为关闭
R<Void> voidR = remoteJobService.updateJobStatus(jobId, 0L);//任务状态0关闭1开启
} }
}*/
} }
return baseMapper.deleteByIds(ids) > 0; return baseMapper.deleteByIds(ids) > 0;
} }

@ -15,6 +15,7 @@ import org.dromara.common.core.utils.StringUtils;
import org.dromara.common.core.utils.uuid.Seq; import org.dromara.common.core.utils.uuid.Seq;
import org.dromara.common.mybatis.core.page.PageQuery; import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.mybatis.core.page.TableDataInfo; import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.common.satoken.utils.LoginHelper;
import org.dromara.dms.domain.DmsPlanMaint; import org.dromara.dms.domain.DmsPlanMaint;
import org.dromara.dms.domain.bo.DmsPlanMaintBo; import org.dromara.dms.domain.bo.DmsPlanMaintBo;
import org.dromara.dms.domain.vo.DmsPlanMaintVo; import org.dromara.dms.domain.vo.DmsPlanMaintVo;
@ -217,7 +218,9 @@ public class DmsPlanMaintServiceImpl implements IDmsPlanMaintService {
.setTriggerInterval(bo.getCronExpression())//间隔时长: cron表达式 .setTriggerInterval(bo.getCronExpression())//间隔时长: cron表达式
.setRetryInterval(3)//重试间隔时长 .setRetryInterval(3)//重试间隔时长
.setArgsStr("planMaintCode") .setArgsStr("planMaintCode")
.setExtAttrs(planMaintCode); .setExtAttrs(planMaintCode)
.setUserId(LoginHelper.getUserId().toString())
.setTenantId(LoginHelper.getTenantId());
R<Long> longR = remoteJobService.addClusterJob(dmsJobEntity); R<Long> longR = remoteJobService.addClusterJob(dmsJobEntity);
Long jobId = longR.getData(); Long jobId = longR.getData();
String time = cron; String time = cron;
@ -248,9 +251,93 @@ public class DmsPlanMaintServiceImpl implements IDmsPlanMaintService {
* @return * @return
*/ */
@Override @Override
@GlobalTransactional(rollbackFor = Exception.class)
public Boolean updateByBo(DmsPlanMaintBo bo) { public Boolean updateByBo(DmsPlanMaintBo bo) {
DmsPlanMaint update = MapstructUtils.convert(bo, DmsPlanMaint.class); DmsPlanMaint update = MapstructUtils.convert(bo, DmsPlanMaint.class);
String day = "*";
String month = "*";
String week = "*";
String year = "*";
String cron = "";
if (update.getDay()!=null){
day = update.getDay().toString();
}
if (update.getMonth()!=null){
month = update.getMonth().toString();
}
if (update.getWeek()!=null){
Long weekDay = update.getWeek() + 1;
week = weekDay.toString();
}
if (update.getYear()!=null){
year = update.getYear().toString();
}
if (update.getMaintLevel().equals(1l)){
cron = "0 0 "+update.getHour()+" "+day+" "+month+" ?";
}
if (update.getMaintLevel().equals(2l)){
cron = "0 0 "+update.getHour()+" ?"+" "+month+" "+week;
}
if (update.getMaintLevel().equals(3l)){
cron = "0 0 "+update.getHour()+" "+day+" "+ month+" ? "+year;
}
Long timeLimitDays = update.getTimeLimitDays()==null?0L:update.getTimeLimitDays();
Long timeLimitHours = update.getTimeLimitHours() == null?0L:update.getTimeLimitHours();
update.setTimeLimit((timeLimitDays * SECONDS_PER_DAY)
+ (timeLimitHours * SECONDS_PER_HOUR));
String time = cron;
//通过cron表达式获取下一次执行时间
Date nextExecution = CronUtils.getNextExecution(time);
update.setMaintTime(nextExecution);
validEntityBeforeSave(update); validEntityBeforeSave(update);
Long jobId = bo.getJobId();
String planMaintCode = bo.getPlanMaintCode();
if (bo.getActiveFlag().equals("1")){
if (StringUtils.isNull(jobId)){//之前没激活创建定时任务,创建定时任务
DmsJobEntity dmsJobEntity = new DmsJobEntity();
dmsJobEntity.setRouteKey(AllocationAlgorithmEnum.ROUND)//路由策略:轮询
.setJobName("保养计划编号" + planMaintCode + "工单任务")
.setExecutorInfo("stanceMaint")//执行器名称
.setExecutorTimeout(30)//执行超时时间
.setBlockStrategy(JobBlockStrategyEnum.CONCURRENCY)//阻塞策略:并发
.setMaxRetryTimes(2)//最大重试次数
.setTriggerType(TriggerTypeEnum.CRON)//触发器类型cron
.setTriggerInterval(bo.getCronExpression())//间隔时长: cron表达式
.setRetryInterval(3)//重试间隔时长
.setArgsStr("planMaintCode")
.setExtAttrs(planMaintCode)
.setUserId(LoginHelper.getUserId().toString())
.setTenantId(LoginHelper.getTenantId());
R<Long> longR = remoteJobService.addClusterJob(dmsJobEntity);
Long newJobId = longR.getData();
update.setMaintTime(nextExecution);
update.setJobId(newJobId);
}else{//之前激活了,修改定时任务
DmsJobEntity dmsJobEntity = new DmsJobEntity();
dmsJobEntity.setId(jobId);
dmsJobEntity.setRouteKey(AllocationAlgorithmEnum.ROUND)//路由策略:轮询
.setJobName("保养计划编号" + planMaintCode + "工单任务")
.setExecutorInfo("stanceMaint")//执行器名称
.setExecutorTimeout(30)//执行超时时间
.setBlockStrategy(JobBlockStrategyEnum.CONCURRENCY)//阻塞策略:并发
.setMaxRetryTimes(2)//最大重试次数
.setTriggerType(TriggerTypeEnum.CRON)//触发器类型cron
.setTriggerInterval(bo.getCronExpression())//间隔时长: cron表达式
.setRetryInterval(3)//重试间隔时长
.setArgsStr("planMaintCode")
.setExtAttrs(planMaintCode)
.setUserId(LoginHelper.getUserId().toString())
.setTenantId(LoginHelper.getTenantId());
R<Void> updateClusterJob = remoteJobService.updateClusterJob(dmsJobEntity);
}
}else{//如果激活状态为01是 0否
if (StringUtils.isNotNull(jobId)){//之前激活过,创建并关联了任务
//则任务状态为关闭
R<Void> voidR = remoteJobService.updateJobStatus(jobId, 0L);//任务状态0关闭1开启
}
}
return baseMapper.updateById(update) > 0; return baseMapper.updateById(update) > 0;
} }
@ -269,10 +356,19 @@ public class DmsPlanMaintServiceImpl implements IDmsPlanMaintService {
* @return * @return
*/ */
@Override @Override
@GlobalTransactional(rollbackFor = Exception.class)
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) { public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
if(isValid){ if(isValid){
//TODO 做一些业务上的校验,判断是否需要校验 //TODO 做一些业务上的校验,判断是否需要校验
} }
for (Long id : ids){
DmsPlanMaintVo dmsPlanMaintVo = baseMapper.selectVoById(id);
Long jobId = dmsPlanMaintVo.getJobId();
if (StringUtils.isNotNull(jobId)){
//则任务状态为关闭
R<Void> voidR = remoteJobService.updateJobStatus(jobId, 0L);//任务状态0关闭1开启
}
}
return baseMapper.deleteByIds(ids) > 0; return baseMapper.deleteByIds(ids) > 0;
} }
} }

@ -23,6 +23,10 @@ public class RemoteJobServiceImpl implements RemoteJobService {
// private final JobMapper jobMapper; // private final JobMapper jobMapper;
//常量
private static final String tenant = "tenantId";
private static final String user = "userId";
/** /**
* *
* *
@ -43,6 +47,8 @@ public class RemoteJobServiceImpl implements RemoteJobService {
.setTriggerType(dmsJobEntity.getTriggerType())//触发类型:2. 固定时间 3.CRON 表达式 99.工作流 .setTriggerType(dmsJobEntity.getTriggerType())//触发类型:2. 固定时间 3.CRON 表达式 99.工作流
.setTriggerInterval(dmsJobEntity.getTriggerInterval())//触发间隔 .setTriggerInterval(dmsJobEntity.getTriggerInterval())//触发间隔
.addArgsStr(dmsJobEntity.getArgsStr(), dmsJobEntity.getExtAttrs())//执行任务参数 .addArgsStr(dmsJobEntity.getArgsStr(), dmsJobEntity.getExtAttrs())//执行任务参数
.addArgsStr(tenant, dmsJobEntity.getTenantId())//租户ID执行任务参数手动传参
.addArgsStr(user, dmsJobEntity.getUserId())//用户ID执行任务参数手动传参
.setRetryInterval(dmsJobEntity.getRetryInterval())//重试间隔时长(秒) .setRetryInterval(dmsJobEntity.getRetryInterval())//重试间隔时长(秒)
.execute(); .execute();
if (jobId != null) { if (jobId != null) {
@ -75,6 +81,8 @@ public class RemoteJobServiceImpl implements RemoteJobService {
.setTriggerType(dmsJobEntity.getTriggerType())//触发类型:2. 固定时间 3.CRON 表达式 99.工作流 .setTriggerType(dmsJobEntity.getTriggerType())//触发类型:2. 固定时间 3.CRON 表达式 99.工作流
.setTriggerInterval(dmsJobEntity.getTriggerInterval())//触发间隔 .setTriggerInterval(dmsJobEntity.getTriggerInterval())//触发间隔
.addArgsStr(dmsJobEntity.getArgsStr(), dmsJobEntity.getExtAttrs())//执行任务参数 .addArgsStr(dmsJobEntity.getArgsStr(), dmsJobEntity.getExtAttrs())//执行任务参数
.addArgsStr(tenant, dmsJobEntity.getTenantId())//租户ID执行任务参数手动传参
.addArgsStr(user, dmsJobEntity.getUserId())//用户ID执行任务参数手动传参
.setRetryInterval(dmsJobEntity.getRetryInterval())//重试间隔时长(秒) .setRetryInterval(dmsJobEntity.getRetryInterval())//重试间隔时长(秒)
.execute(); .execute();
return success ? R.ok() : R.fail("修改集群任务失败"); return success ? R.ok() : R.fail("修改集群任务失败");

Loading…
Cancel
Save