feat:定时任务开发

This commit is contained in:
Xiang
2026-01-05 17:49:55 +08:00
parent 49b9a8f9a5
commit 6f998d06ce
9 changed files with 119 additions and 4 deletions

View File

@@ -0,0 +1,44 @@
package com.xiang.app.common.manage;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.xiang.xmc.service.quartz.domain.entity.JobConfigDO;
import com.xiang.xmc.service.quartz.manage.IQuartzConfigManage;
import com.xiang.xmc.service.quartz.mapper.JobConfigMapper;
import com.xiang.xmc.xservice.mysql.annotation.DynamicDataSource;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* @Author: xiang
* @Date: 2026-01-05 14:21
*/
@Service
public class QuartzConfigManageImpl extends ServiceImpl<JobConfigMapper, JobConfigDO> implements IQuartzConfigManage {
@Override
@DynamicDataSource(value = "xxz-job")
public JobConfigDO getByName(String appName, String beanName) {
LambdaQueryWrapper<JobConfigDO> lqw = Wrappers.lambdaQuery();
lqw.eq(JobConfigDO::getApplicationName, appName);
lqw.eq(JobConfigDO::getBeanName, beanName);
lqw.eq(JobConfigDO::getDelFlag, 0);
return baseMapper.selectOne(lqw);
}
@Override
@DynamicDataSource(value = "xxz-job")
public List<JobConfigDO> selectByAppName(String appName) {
LambdaQueryWrapper<JobConfigDO> lqw = Wrappers.lambdaQuery();
lqw.eq(JobConfigDO::getApplicationName, appName);
lqw.eq(JobConfigDO::getDelFlag, 0);
return baseMapper.selectList(lqw);
}
@Override
@DynamicDataSource(value = "xxz-job")
public int delByAppName(String appName) {
return 0;
}
}

View File

@@ -0,0 +1,19 @@
package com.xiang.app.modules.jntyzx.schedule;
import com.xiang.xmc.service.quartz.annotation.XxzJob;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;
/**
* @Author: xiang
* @Date: 2026-01-05 08:59
*/
@Slf4j
@Component
public class TestXxzJob {
@XxzJob(name = "TestXxzJob")
public void testXxzJob() {
log.info("测试xxz-job框架");
}
}

View File

@@ -1,4 +1,4 @@
package com.xiang.app.modules.jntyzx.service;
package com.xiang.app.modules.jntyzx.service.impl;
import com.alibaba.fastjson2.JSON;
import com.alibaba.fastjson2.JSONObject;
@@ -16,6 +16,7 @@ import com.xiang.app.modules.jntyzx.entity.resp.OrderCreateResp;
import com.xiang.app.modules.jntyzx.entity.resp.query.SitePositionList;
import com.xiang.app.modules.jntyzx.entity.resp.query.VenueList;
import com.xiang.app.modules.jntyzx.manage.IOrderCreateInfoManage;
import com.xiang.app.modules.jntyzx.service.IJntyzxHttpService;
import com.xiang.xmc.service.cache.service.IRedisService;
import com.xiang.xmc.service.http.helper.HttpHelper;
import com.xiang.xservice.basic.utils.Base64;

View File

@@ -1,7 +1,8 @@
package com.xiang.app.modules.jntyzx.service;
package com.xiang.app.modules.jntyzx.service.impl;
import com.xiang.app.modules.jntyzx.entity.pojo.OrderInfoDO;
import com.xiang.app.modules.jntyzx.manage.IOrderCreateInfoManage;
import com.xiang.app.modules.jntyzx.service.IJtOrderService;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;

View File

@@ -1,9 +1,11 @@
package com.xiang.app.modules.jntyzx.service;
package com.xiang.app.modules.jntyzx.service.impl;
import com.xiang.app.common.service.dingtalk.JtDingTalkFactory;
import com.xiang.app.modules.jntyzx.entity.pojo.UserTokenInfoDO;
import com.xiang.app.modules.jntyzx.entity.resp.JntyzxResponse;
import com.xiang.app.modules.jntyzx.manage.IUserTokenInfoManage;
import com.xiang.app.modules.jntyzx.service.IJntyzxHttpService;
import com.xiang.app.modules.jntyzx.service.IUserTokenInfoService;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils;

View File

@@ -1,10 +1,13 @@
package com.xiang.app.modules.jntyzx.service;
package com.xiang.app.modules.jntyzx.service.impl;
import com.google.common.collect.Lists;
import com.google.common.collect.Maps;
import com.xiang.app.modules.jntyzx.entity.pojo.VenueInfoDO;
import com.xiang.app.modules.jntyzx.entity.resp.query.SitePositionList;
import com.xiang.app.modules.jntyzx.manage.IVenueInfoManage;
import com.xiang.app.modules.jntyzx.service.IJntyzxHttpService;
import com.xiang.app.modules.jntyzx.service.IUserTokenInfoService;
import com.xiang.app.modules.jntyzx.service.IVenueService;
import com.xiang.app.modules.jntyzx.utils.VenueInfoUtils;
import com.xiang.xservice.basic.utils.DateUtils;
import lombok.RequiredArgsConstructor;