job增加异常处理

segment2.0
beeajax 2 years ago
parent 72d8db7d26
commit 13bbe0e203

@ -3,7 +3,7 @@ package com.docus.server.collect.basic.http;
import com.docus.infrastructure.web.api.CommonResult; import com.docus.infrastructure.web.api.CommonResult;
import com.docus.log.context.TrackContext; import com.docus.log.context.TrackContext;
import com.docus.server.collect.IHttpResult; import com.docus.server.collect.IHttpResult;
import com.docus.server.collect.web.processor.VisitorProcessor; import com.docus.server.collect.web.process.VisitorProcessor;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import java.util.Map; import java.util.Map;

@ -3,7 +3,7 @@ package com.docus.server.collect.basic.http;
import com.docus.core.util.DateUtil; import com.docus.core.util.DateUtil;
import com.docus.log.context.TrackContext; import com.docus.log.context.TrackContext;
import com.docus.server.collect.basic.ws.impl.BasicServerImpl; import com.docus.server.collect.basic.ws.impl.BasicServerImpl;
import com.docus.server.collect.web.processor.VisitorProcessor; import com.docus.server.collect.web.process.VisitorProcessor;
import com.docus.server.record.pojo.dto.TBasicDTO; import com.docus.server.record.pojo.dto.TBasicDTO;
import com.docus.server.collect.IConverter; import com.docus.server.collect.IConverter;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;

@ -5,7 +5,7 @@ import com.docus.core.util.Func;
import com.docus.log.context.TrackContext; import com.docus.log.context.TrackContext;
import com.docus.server.collect.basic.ws.impl.BasicServerImpl; import com.docus.server.collect.basic.ws.impl.BasicServerImpl;
import com.docus.server.collect.IWsResult; import com.docus.server.collect.IWsResult;
import com.docus.server.collect.web.processor.VisitorProcessor; import com.docus.server.collect.web.process.VisitorProcessor;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import java.util.Date; import java.util.Date;

@ -3,7 +3,7 @@ package com.docus.server.collect.basic.ws;
import com.docus.core.util.DateUtil; import com.docus.core.util.DateUtil;
import com.docus.log.context.TrackContext; import com.docus.log.context.TrackContext;
import com.docus.server.collect.basic.ws.impl.BasicServerImpl; import com.docus.server.collect.basic.ws.impl.BasicServerImpl;
import com.docus.server.collect.web.processor.VisitorProcessor; import com.docus.server.collect.web.process.VisitorProcessor;
import com.docus.server.record.pojo.dto.TBasicDTO; import com.docus.server.record.pojo.dto.TBasicDTO;
import com.docus.server.collect.IConverter; import com.docus.server.collect.IConverter;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;

@ -3,7 +3,7 @@ package com.docus.server.collect.user.mq.test;
import com.docus.server.collect.IConverter; import com.docus.server.collect.IConverter;
import com.docus.server.collect.IHttpResult; import com.docus.server.collect.IHttpResult;
import com.docus.server.collect.web.enums.CollectTypeEnum; import com.docus.server.collect.web.enums.CollectTypeEnum;
import com.docus.server.collect.web.processor.VisitorProcessor; import com.docus.server.collect.web.process.VisitorProcessor;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;

@ -7,7 +7,7 @@ import com.docus.log.context.TrackHelper;
import com.docus.server.collect.IConverter; import com.docus.server.collect.IConverter;
import com.docus.server.collect.IHttpResult; import com.docus.server.collect.IHttpResult;
import com.docus.server.collect.web.enums.CollectTypeEnum; import com.docus.server.collect.web.enums.CollectTypeEnum;
import com.docus.server.collect.web.processor.VisitorProcessor; import com.docus.server.collect.web.process.VisitorProcessor;
import com.docus.server.collect.web.service.CollectService; import com.docus.server.collect.web.service.CollectService;
import com.docus.server.record.pojo.dto.TBasicDTO; import com.docus.server.record.pojo.dto.TBasicDTO;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;

@ -4,7 +4,7 @@ import com.docus.core.util.json.JSON;
import com.docus.log.annotation.TrackGroup; import com.docus.log.annotation.TrackGroup;
import com.docus.log.context.TrackHelper; import com.docus.log.context.TrackHelper;
import com.docus.server.collect.basic.mq.IBasicMqCollectService; import com.docus.server.collect.basic.mq.IBasicMqCollectService;
import com.docus.server.collect.web.processor.VisitorProcessor; import com.docus.server.collect.web.process.VisitorProcessor;
import com.docus.server.collect.web.service.CollectService; import com.docus.server.collect.web.service.CollectService;
import com.docus.server.record.pojo.dto.TBasicDTO; import com.docus.server.record.pojo.dto.TBasicDTO;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;

@ -4,7 +4,7 @@ import com.docus.core.util.json.JSON;
import com.docus.log.annotation.TrackGroup; import com.docus.log.annotation.TrackGroup;
import com.docus.log.context.TrackHelper; import com.docus.log.context.TrackHelper;
import com.docus.server.collect.basic.mq.IBasicMqCollectService; import com.docus.server.collect.basic.mq.IBasicMqCollectService;
import com.docus.server.collect.web.processor.VisitorProcessor; import com.docus.server.collect.web.process.VisitorProcessor;
import com.docus.server.collect.web.service.CollectService; import com.docus.server.collect.web.service.CollectService;
import com.docus.server.record.pojo.dto.TBasicDTO; import com.docus.server.record.pojo.dto.TBasicDTO;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;

@ -4,7 +4,7 @@ import com.docus.core.util.json.JSON;
import com.docus.log.annotation.TrackGroup; import com.docus.log.annotation.TrackGroup;
import com.docus.log.context.TrackHelper; import com.docus.log.context.TrackHelper;
import com.docus.server.collect.basic.mq.IBasicMqCollectService; import com.docus.server.collect.basic.mq.IBasicMqCollectService;
import com.docus.server.collect.web.processor.VisitorProcessor; import com.docus.server.collect.web.process.VisitorProcessor;
import com.docus.server.collect.web.service.CollectService; import com.docus.server.collect.web.service.CollectService;
import com.docus.server.record.pojo.dto.TBasicDTO; import com.docus.server.record.pojo.dto.TBasicDTO;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
@ -51,4 +51,4 @@ public class BasicRocketMqCollectServiceImpl implements IBasicMqCollectService {
public TBasicDTO getValue() { public TBasicDTO getValue() {
return JSON.fromJSON((String) TrackHelper.getValue("jsonStr"), TBasicDTO.class); return JSON.fromJSON((String) TrackHelper.getValue("jsonStr"), TBasicDTO.class);
} }
} }

@ -7,7 +7,7 @@ import com.docus.server.collect.IConverter;
import com.docus.server.collect.IWsResult; import com.docus.server.collect.IWsResult;
import com.docus.server.collect.basic.ws.IBasicServer; import com.docus.server.collect.basic.ws.IBasicServer;
import com.docus.server.collect.web.enums.CollectTypeEnum; import com.docus.server.collect.web.enums.CollectTypeEnum;
import com.docus.server.collect.web.processor.VisitorProcessor; import com.docus.server.collect.web.process.VisitorProcessor;
import com.docus.server.collect.web.service.CollectService; import com.docus.server.collect.web.service.CollectService;
import com.docus.server.record.pojo.dto.TBasicDTO; import com.docus.server.record.pojo.dto.TBasicDTO;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;

@ -9,7 +9,7 @@ import com.docus.server.collect.IHttpResult;
import com.docus.server.collect.web.enums.CollectTypeEnum; import com.docus.server.collect.web.enums.CollectTypeEnum;
import com.docus.server.collect.web.service.CollectService; import com.docus.server.collect.web.service.CollectService;
import com.docus.server.sys.common.pojo.dto.DeptDTO; import com.docus.server.sys.common.pojo.dto.DeptDTO;
import com.docus.server.collect.web.processor.VisitorProcessor; import com.docus.server.collect.web.process.VisitorProcessor;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;

@ -4,7 +4,7 @@ import com.docus.core.util.json.JSON;
import com.docus.log.annotation.TrackGroup; import com.docus.log.annotation.TrackGroup;
import com.docus.log.context.TrackHelper; import com.docus.log.context.TrackHelper;
import com.docus.server.collect.dept.mq.IDeptMqCollectService; import com.docus.server.collect.dept.mq.IDeptMqCollectService;
import com.docus.server.collect.web.processor.VisitorProcessor; import com.docus.server.collect.web.process.VisitorProcessor;
import com.docus.server.collect.web.service.CollectService; import com.docus.server.collect.web.service.CollectService;
import com.docus.server.sys.common.pojo.dto.DeptDTO; import com.docus.server.sys.common.pojo.dto.DeptDTO;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;

@ -4,7 +4,7 @@ import com.docus.core.util.json.JSON;
import com.docus.log.annotation.TrackGroup; import com.docus.log.annotation.TrackGroup;
import com.docus.log.context.TrackHelper; import com.docus.log.context.TrackHelper;
import com.docus.server.collect.dept.mq.IDeptMqCollectService; import com.docus.server.collect.dept.mq.IDeptMqCollectService;
import com.docus.server.collect.web.processor.VisitorProcessor; import com.docus.server.collect.web.process.VisitorProcessor;
import com.docus.server.collect.web.service.CollectService; import com.docus.server.collect.web.service.CollectService;
import com.docus.server.sys.common.pojo.dto.DeptDTO; import com.docus.server.sys.common.pojo.dto.DeptDTO;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;

@ -4,7 +4,7 @@ import com.docus.core.util.json.JSON;
import com.docus.log.annotation.TrackGroup; import com.docus.log.annotation.TrackGroup;
import com.docus.log.context.TrackHelper; import com.docus.log.context.TrackHelper;
import com.docus.server.collect.dept.mq.IDeptMqCollectService; import com.docus.server.collect.dept.mq.IDeptMqCollectService;
import com.docus.server.collect.web.processor.VisitorProcessor; import com.docus.server.collect.web.process.VisitorProcessor;
import com.docus.server.collect.web.service.CollectService; import com.docus.server.collect.web.service.CollectService;
import com.docus.server.sys.common.pojo.dto.DeptDTO; import com.docus.server.sys.common.pojo.dto.DeptDTO;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
@ -52,4 +52,4 @@ public class DeptRocketMqCollectServiceImpl implements IDeptMqCollectService {
public DeptDTO getValue() { public DeptDTO getValue() {
return JSON.fromJSON((String) TrackHelper.getValue("jsonStr"), DeptDTO.class); return JSON.fromJSON((String) TrackHelper.getValue("jsonStr"), DeptDTO.class);
} }
} }

@ -2,6 +2,7 @@ package com.docus.server.collect.dept.view;
import com.docus.server.collect.ICollector; import com.docus.server.collect.ICollector;
import com.docus.server.collect.web.job.AbstractCollectJob; import com.docus.server.collect.web.job.AbstractCollectJob;
import com.docus.server.collect.web.service.CollectService;
import com.docus.server.his.service.IHisService; import com.docus.server.his.service.IHisService;
import com.docus.server.sys.common.pojo.dto.DeptDTO; import com.docus.server.sys.common.pojo.dto.DeptDTO;
import com.xxl.job.core.handler.annotation.XxlJob; import com.xxl.job.core.handler.annotation.XxlJob;
@ -22,6 +23,8 @@ import java.util.List;
public class DeptViewCollectJob extends AbstractCollectJob<DeptDTO> { public class DeptViewCollectJob extends AbstractCollectJob<DeptDTO> {
@Resource @Resource
private IHisService hisService; private IHisService hisService;
@Resource
private CollectService collectService;
/** /**
* xxl jobhandler * xxl jobhandler
@ -34,6 +37,7 @@ public class DeptViewCollectJob extends AbstractCollectJob<DeptDTO> {
/** /**
* xxl jobhandler * xxl jobhandler
*/ */
@XxlJob("startIncDeptViewCollect") @XxlJob("startIncDeptViewCollect")
public void startIncDeptViewCollect() { public void startIncDeptViewCollect() {
super.startCollectIncrement(getJobParam()); super.startCollectIncrement(getJobParam());

@ -8,7 +8,7 @@ import com.docus.server.collect.IWsResult;
import com.docus.server.collect.web.enums.CollectTypeEnum; import com.docus.server.collect.web.enums.CollectTypeEnum;
import com.docus.server.collect.web.service.CollectService; import com.docus.server.collect.web.service.CollectService;
import com.docus.server.sys.common.pojo.dto.DeptDTO; import com.docus.server.sys.common.pojo.dto.DeptDTO;
import com.docus.server.collect.web.processor.VisitorProcessor; import com.docus.server.collect.web.process.VisitorProcessor;
import com.docus.server.collect.dept.ws.IDeptServer; import com.docus.server.collect.dept.ws.IDeptServer;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;

@ -7,7 +7,7 @@ import com.docus.server.collect.IConverter;
import com.docus.server.collect.IWsResult; import com.docus.server.collect.IWsResult;
import com.docus.server.archivefile.pojo.dto.ReportDTO; import com.docus.server.archivefile.pojo.dto.ReportDTO;
import com.docus.server.collect.web.enums.CollectTypeEnum; import com.docus.server.collect.web.enums.CollectTypeEnum;
import com.docus.server.collect.web.processor.VisitorProcessor; import com.docus.server.collect.web.process.VisitorProcessor;
import com.docus.server.collect.report.ws.IReportServer; import com.docus.server.collect.report.ws.IReportServer;
import com.docus.server.collect.report.service.IReportService; import com.docus.server.collect.report.service.IReportService;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;

@ -7,7 +7,7 @@ import com.docus.log.context.TrackHelper;
import com.docus.server.collect.IConverter; import com.docus.server.collect.IConverter;
import com.docus.server.collect.IHttpResult; import com.docus.server.collect.IHttpResult;
import com.docus.server.collect.web.enums.CollectTypeEnum; import com.docus.server.collect.web.enums.CollectTypeEnum;
import com.docus.server.collect.web.processor.VisitorProcessor; import com.docus.server.collect.web.process.VisitorProcessor;
import com.docus.server.collect.web.service.CollectService; import com.docus.server.collect.web.service.CollectService;
import com.docus.server.sys.common.pojo.dto.UserDTO; import com.docus.server.sys.common.pojo.dto.UserDTO;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;

@ -4,7 +4,7 @@ import com.docus.core.util.json.JSON;
import com.docus.log.annotation.TrackGroup; import com.docus.log.annotation.TrackGroup;
import com.docus.log.context.TrackHelper; import com.docus.log.context.TrackHelper;
import com.docus.server.collect.user.mq.IUserMqCollectService; import com.docus.server.collect.user.mq.IUserMqCollectService;
import com.docus.server.collect.web.processor.VisitorProcessor; import com.docus.server.collect.web.process.VisitorProcessor;
import com.docus.server.collect.web.service.CollectService; import com.docus.server.collect.web.service.CollectService;
import com.docus.server.sys.common.pojo.dto.UserDTO; import com.docus.server.sys.common.pojo.dto.UserDTO;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;

@ -4,7 +4,7 @@ import com.docus.core.util.json.JSON;
import com.docus.log.annotation.TrackGroup; import com.docus.log.annotation.TrackGroup;
import com.docus.log.context.TrackHelper; import com.docus.log.context.TrackHelper;
import com.docus.server.collect.user.mq.IUserMqCollectService; import com.docus.server.collect.user.mq.IUserMqCollectService;
import com.docus.server.collect.web.processor.VisitorProcessor; import com.docus.server.collect.web.process.VisitorProcessor;
import com.docus.server.collect.web.service.CollectService; import com.docus.server.collect.web.service.CollectService;
import com.docus.server.sys.common.pojo.dto.UserDTO; import com.docus.server.sys.common.pojo.dto.UserDTO;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;

@ -4,7 +4,7 @@ import com.docus.core.util.json.JSON;
import com.docus.log.annotation.TrackGroup; import com.docus.log.annotation.TrackGroup;
import com.docus.log.context.TrackHelper; import com.docus.log.context.TrackHelper;
import com.docus.server.collect.user.mq.IUserMqCollectService; import com.docus.server.collect.user.mq.IUserMqCollectService;
import com.docus.server.collect.web.processor.VisitorProcessor; import com.docus.server.collect.web.process.VisitorProcessor;
import com.docus.server.collect.web.service.CollectService; import com.docus.server.collect.web.service.CollectService;
import com.docus.server.sys.common.pojo.dto.UserDTO; import com.docus.server.sys.common.pojo.dto.UserDTO;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
@ -51,4 +51,4 @@ public class UserRocketMqCollectServiceImpl implements IUserMqCollectService {
public UserDTO getValue() { public UserDTO getValue() {
return JSON.fromJSON((String) TrackHelper.getValue("jsonStr"), UserDTO.class); return JSON.fromJSON((String) TrackHelper.getValue("jsonStr"), UserDTO.class);
} }
} }

@ -7,7 +7,7 @@ import com.docus.server.collect.IConverter;
import com.docus.server.collect.IWsResult; import com.docus.server.collect.IWsResult;
import com.docus.server.collect.user.ws.IUserServer; import com.docus.server.collect.user.ws.IUserServer;
import com.docus.server.collect.web.enums.CollectTypeEnum; import com.docus.server.collect.web.enums.CollectTypeEnum;
import com.docus.server.collect.web.processor.VisitorProcessor; import com.docus.server.collect.web.process.VisitorProcessor;
import com.docus.server.collect.web.service.CollectService; import com.docus.server.collect.web.service.CollectService;
import com.docus.server.sys.common.pojo.dto.UserDTO; import com.docus.server.sys.common.pojo.dto.UserDTO;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;

@ -14,7 +14,7 @@ public class TaskOriginalMessageConverter {
@Resource @Resource
private IdService idService; private IdService idService;
public TaskOriginalMessage toConvertTaskOriginalMessageDO(Object json, String xml, CollectTypeEnum collectType) { public TaskOriginalMessage toConvertTaskOriginalMessageDO(String json, String xml, CollectTypeEnum collectType) {
TaskOriginalMessage taskOriginalMessage = new TaskOriginalMessage(); TaskOriginalMessage taskOriginalMessage = new TaskOriginalMessage();
taskOriginalMessage.setId(idService.getDateSeq()); taskOriginalMessage.setId(idService.getDateSeq());
taskOriginalMessage.setName(collectType.name()); taskOriginalMessage.setName(collectType.name());

@ -1,5 +1,6 @@
package com.docus.server.collect.web.domain; package com.docus.server.collect.web.domain;
import com.docus.server.collect.web.enums.StateEnum;
import com.docus.server.collect.web.utils.DateSpiltUtil; import com.docus.server.collect.web.utils.DateSpiltUtil;
import com.docus.server.collect.web.utils.PeriodTime; import com.docus.server.collect.web.utils.PeriodTime;
import lombok.Data; import lombok.Data;
@ -58,6 +59,15 @@ public class TaskConfig {
*/ */
private Date incPointerTime; private Date incPointerTime;
/**
*
*/
private StateEnum state = StateEnum.OK;
/**
*
*/
private String errorMsg;
public List<PeriodTime> getAllPeriodTimes() { public List<PeriodTime> getAllPeriodTimes() {
List<PeriodTime> periodTimes = DateSpiltUtil.spiltDate(this.getStartTime(), this.endTime, 1000 * spiltPeriod); List<PeriodTime> periodTimes = DateSpiltUtil.spiltDate(this.getStartTime(), this.endTime, 1000 * spiltPeriod);

@ -45,6 +45,19 @@ public enum CollectTypeEnum implements IIntegerEnum {
RABBIT_MQ_PASSIVE_UPDATE_DEPT(26, "RABBIT_MQ_PASSIVE_UPDATE_DEPT", "修改-科室信息"), RABBIT_MQ_PASSIVE_UPDATE_DEPT(26, "RABBIT_MQ_PASSIVE_UPDATE_DEPT", "修改-科室信息"),
RABBIT_MQ_PASSIVE_INSERT_BASIC(27, "RABBIT_MQ_PASSIVE_INSERT_BASIC", "新增-基础数据"), RABBIT_MQ_PASSIVE_INSERT_BASIC(27, "RABBIT_MQ_PASSIVE_INSERT_BASIC", "新增-基础数据"),
RABBIT_MQ_PASSIVE_UPDATE_BASIC(28, "RABBIT_MQ_PASSIVE_UPDATE_BASIC", "修改-基础数据"), RABBIT_MQ_PASSIVE_UPDATE_BASIC(28, "RABBIT_MQ_PASSIVE_UPDATE_BASIC", "修改-基础数据"),
/**
* JOB
*/
JOB_VIEW_DEPT(29, "JOB_VIEW_DEPT", "新增/修改-科室信息"),
JOB_USER(30, "JOB_USER", "新增/修改-用户信息"),
JOB_INSERT_BASIC(31, "JOB_INSERT_BASIC", "新增/修改-基础数据"),
JOB_UPDATE_BASIC(32, "JOB_UPDATE_BASIC", "新增/修改-基础数据"),
JOB_SA_REPORT(33, "JOB_SA_REPORT", "新增-手麻报告信息"),
JOB_ICU_REPORT(34, "JOB_ICU_REPORT", "新增-重症报告信息"),
JOB_REPORT(35, "JOB_REPORT", "新增-检验报告信息"),
JOB_INSERT_REPORT(36, "JOB_INSERT_REPORT", "新增-检查报告的信息"),
JOB_UPDATE_REPORT(37, "JOB_UPDATE_REPORT", "更新-检查报告的信息"),
; ;
private Integer value; private Integer value;

@ -45,7 +45,7 @@ public class TaskOriginalMessage implements Serializable {
@ApiModelProperty(value = "原始报文转对象json") @ApiModelProperty(value = "原始报文转对象json")
@TableField("json_str") @TableField("json_str")
private Object jsonStr; private String jsonStr;
@ApiModelProperty(value = "原始报文") @ApiModelProperty(value = "原始报文")
@TableField("source") @TableField("source")
@ -55,6 +55,10 @@ public class TaskOriginalMessage implements Serializable {
@TableField("state") @TableField("state")
private StateEnum state; private StateEnum state;
@ApiModelProperty(value = "本批次异常信息")
@TableField("error_msg")
private String errorMsg;
@ApiModelProperty(value = "入库时间") @ApiModelProperty(value = "入库时间")
@TableField("create_time") @TableField("create_time")
private Date createTime; private Date createTime;

@ -3,6 +3,7 @@ package com.docus.server.collect.web.job;
import com.docus.core.util.Func; import com.docus.core.util.Func;
import com.docus.server.collect.IJob; import com.docus.server.collect.IJob;
import com.docus.server.collect.web.domain.TaskConfig; import com.docus.server.collect.web.domain.TaskConfig;
import com.docus.server.collect.web.enums.StateEnum;
import com.docus.server.collect.web.service.ITaskConfigService; import com.docus.server.collect.web.service.ITaskConfigService;
import com.docus.server.collect.web.utils.PeriodTime; import com.docus.server.collect.web.utils.PeriodTime;
import com.docus.server.record.service.ITBasicService; import com.docus.server.record.service.ITBasicService;
@ -27,25 +28,34 @@ public abstract class AbstractCollectJob<T> implements IJob<T> {
@Override @Override
public void startCollectAll(String taskConfigId) { public void startCollectAll(String taskConfigId) {
TaskConfig taskConfig = taskConfigService.getTaskConfig(taskConfigId); TaskConfig taskConfig = getTaskConfig(taskConfigId);
List<PeriodTime> periodTimes = taskConfig.getAllPeriodTimes(); try {
for (PeriodTime periodTime : periodTimes) { List<PeriodTime> periodTimes = taskConfig.getAllPeriodTimes();
get(periodTime, taskConfig); for (PeriodTime periodTime : periodTimes) {
taskConfigService.updateAllPointerDate(taskConfigId, periodTime.getPeriodEndDate()); get(periodTime, taskConfig);
taskConfigService.updateAllPointerDate(taskConfigId, periodTime.getPeriodEndDate());
}
} catch (Exception ex) {
updateTaskState(ex, taskConfig);
} }
} }
@Override @Override
public void startCollectIncrement(String taskConfigId) { public void startCollectIncrement(String taskConfigId) {
TaskConfig taskConfig = taskConfigService.getTaskConfig(taskConfigId); TaskConfig taskConfig = taskConfigService.getTaskConfig(taskConfigId);
try {
List<PeriodTime> periodTimes = taskConfig.getIncPeriodTimes(); List<PeriodTime> periodTimes = taskConfig.getIncPeriodTimes();
periodTimes.forEach(periodTime -> { periodTimes.forEach(periodTime -> {
get(periodTime, taskConfig); get(periodTime, taskConfig);
taskConfigService.updateIncPointerDate(taskConfigId, periodTime.getPeriodEndDate()); taskConfigService.updateIncPointerDate(taskConfigId, periodTime.getPeriodEndDate());
}); });
} catch (Exception ex) {
updateTaskState(ex, taskConfig);
}
} }
@Override @Override
@ -68,6 +78,17 @@ public abstract class AbstractCollectJob<T> implements IJob<T> {
} }
} }
private void updateTaskState(Exception ex, TaskConfig taskConfig) {
taskConfig.setState(StateEnum.FAIL);
String message = ex.getMessage();
taskConfig.setErrorMsg(message.length() > 500 ? message.substring(0, 500) : message);
taskConfigService.updateByTaskId(taskConfig);
}
private TaskConfig getTaskConfig(String taskConfigId) {
return taskConfigService.getTaskConfig(taskConfigId);
}
protected String getJobParam() { protected String getJobParam() {
return XxlJobHelper.getJobParam(); return XxlJobHelper.getJobParam();
} }

@ -0,0 +1,91 @@
package com.docus.server.collect.web.process;
import com.docus.core.util.Func;
import com.docus.core.util.json.JSON;
import com.docus.log.context.TrackContext;
import com.docus.log.processor.AbstractProcessor;
import com.docus.server.collect.IConverter;
import com.docus.server.collect.IResult;
import com.docus.server.collect.web.enums.CollectTypeEnum;
import com.docus.server.collect.web.enums.IIntegerEnum;
import com.docus.server.collect.web.enums.StateEnum;
import com.docus.server.collect.web.service.ITaskOriginalMessageService;
import com.docus.server.collect.web.utils.SpringUtils;
import com.fasterxml.jackson.core.type.TypeReference;
import com.xxl.job.core.context.XxlJobHelper;
import lombok.extern.slf4j.Slf4j;
import java.util.Map;
/**
* @author linruifeng
*/
@Slf4j
public class JobProcessor extends AbstractProcessor {
private ITaskOriginalMessageService messageService;
private IConverter converter;
private IResult result;
/**
*
*/
@Override
public Object beforeProcess(TrackContext context) {
super.beforeProcess(context);
initBeans(context.getBeanNames());
String message = XxlJobHelper.getJobParam();
context.setArgs(new Object[]{message});
if (Func.isEmpty(message)) {
throw new RuntimeException("参数为空");
}
// String jsonStr = JSON.toJSON(converter.convert(message, context.getGroup()));
Long taskId = messageService.insertTaskOriginalMessage("", message, IIntegerEnum.fromDisplay(CollectTypeEnum.class, context.getGroup()));
Map<String, Object> params = context.getParams();
params.put("taskId", taskId);
// params.put("jsonStr", jsonStr);
params.put("group", context.getGroup());
return null;
}
/**
*
*/
@Override
public Object doProcess(TrackContext context) {
Map<String, Object> params = context.getParams();
try {
Long taskId = (Long) params.get("taskId");
String afterReturnResult = (String) params.get("jsonStr");
params.put("msg", context.getExMessageResult());
if (Func.isNotEmpty(afterReturnResult)) {
params.putAll(JSON.fromJSONWithGeneric(afterReturnResult, new TypeReference<Map<? extends String, ?>>() {
}));
}
if (!context.isError()) {
log.info("=== AOP 后置通知 ===");
params.put("msg", "操作成功!");
messageService.updateTaskOriginalMessage(taskId, afterReturnResult, context.getExMessageResult(), StateEnum.OK);
return result.ok(params);
} else {
log.info("=== AOP 异常通知 ===");
log.error((String) params.get(context.getExMessageResult()));
messageService.updateTaskOriginalMessage(taskId, afterReturnResult, context.getExMessageResult(), StateEnum.FAIL);
return result.fail(params);
}
} catch (Exception e) {
log.error(e.getMessage(), e);
return result.fail(params);
}
}
/**
* bean
*/
private void initBeans(String[] beanNames) {
// this.converter = (IConverter) SpringUtils.getBean(beanNames[0]);
// this.result = (IResult) SpringUtils.getBean(beanNames[1]);
this.messageService = SpringUtils.getBean(ITaskOriginalMessageService.class);
}
}

@ -1,4 +1,4 @@
package com.docus.server.collect.web.processor; package com.docus.server.collect.web.process;
import com.docus.core.util.Func; import com.docus.core.util.Func;
import com.docus.core.util.json.JSON; import com.docus.core.util.json.JSON;
@ -36,8 +36,9 @@ public class VisitorProcessor extends AbstractProcessor {
if (Func.isEmpty(message)) { if (Func.isEmpty(message)) {
throw new RuntimeException("参数为空"); throw new RuntimeException("参数为空");
} }
Long taskId = messageService.insertTaskOriginalMessage("", message, IIntegerEnum.fromDisplay(CollectTypeEnum.class, context.getGroup()));
String jsonStr = JSON.toJSON(converter.convert(message, context.getGroup())); String jsonStr = JSON.toJSON(converter.convert(message, context.getGroup()));
Long taskId = messageService.insertTaskOriginalMessage(jsonStr, message, IIntegerEnum.fromDisplay(CollectTypeEnum.class, context.getGroup())); messageService.updateTaskOriginalMessage(taskId, jsonStr, context.getExMessageResult(), StateEnum.OK);
Map<String, Object> params = context.getParams(); Map<String, Object> params = context.getParams();
params.put("taskId", taskId); params.put("taskId", taskId);
params.put("jsonStr", jsonStr); params.put("jsonStr", jsonStr);
@ -68,7 +69,7 @@ public class VisitorProcessor extends AbstractProcessor {
} else { } else {
log.info("=== AOP 异常通知 ==="); log.info("=== AOP 异常通知 ===");
log.error((String) params.get(context.getExMessageResult())); log.error((String) params.get(context.getExMessageResult()));
messageService.updateTaskOriginalMessage(taskId, afterReturnResult, StateEnum.FAIL); messageService.updateTaskOriginalMessage(taskId, afterReturnResult, context.getExMessageResult(), StateEnum.FAIL);
return result.fail(params); return result.fail(params);
} }
} catch (Exception e) { } catch (Exception e) {

@ -10,4 +10,6 @@ public interface ITaskConfigService {
void updateIncPointerDate(String id, Date date); void updateIncPointerDate(String id, Date date);
TaskConfig getTaskConfig(String id); TaskConfig getTaskConfig(String id);
void updateByTaskId(TaskConfig taskConfig);
} }

@ -5,7 +5,7 @@ import com.docus.server.collect.web.enums.StateEnum;
public interface ITaskOriginalMessageService { public interface ITaskOriginalMessageService {
Long insertTaskOriginalMessage(Object json, String xml, CollectTypeEnum collectType); Long insertTaskOriginalMessage(String json, String xml, CollectTypeEnum collectType);
void updateTaskOriginalMessage(Long id, Object json, StateEnum stateEnum); void updateTaskOriginalMessage(Long id, String json, String exMessageResult, StateEnum stateEnum);
} }

@ -33,4 +33,10 @@ public class TaskConfigServiceImpl extends ServiceImpl<TaskConfigMapper, TaskCon
return super.getById(id); return super.getById(id);
} }
@Transactional
@Override
public void updateByTaskId(TaskConfig taskConfig) {
super.updateById(taskConfig);
}
} }

@ -24,7 +24,7 @@ public class TaskOriginalMessageServiceImpl extends ServiceImpl<TaskOriginalMess
*/ */
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
@Override @Override
public Long insertTaskOriginalMessage(Object json, String xml, CollectTypeEnum collectType) { public Long insertTaskOriginalMessage(String json, String xml, CollectTypeEnum collectType) {
TaskOriginalMessage taskOriginalMessage = converter.toConvertTaskOriginalMessageDO(json, xml, collectType); TaskOriginalMessage taskOriginalMessage = converter.toConvertTaskOriginalMessageDO(json, xml, collectType);
super.save(taskOriginalMessage); super.save(taskOriginalMessage);
return taskOriginalMessage.getId(); return taskOriginalMessage.getId();
@ -32,7 +32,7 @@ public class TaskOriginalMessageServiceImpl extends ServiceImpl<TaskOriginalMess
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
@Override @Override
public void updateTaskOriginalMessage(Long id, Object json, StateEnum stateEnum) { public void updateTaskOriginalMessage(Long id, String json, String exMessageResult, StateEnum stateEnum) {
if (null == id) { if (null == id) {
return; return;
} }
@ -41,6 +41,7 @@ public class TaskOriginalMessageServiceImpl extends ServiceImpl<TaskOriginalMess
taskOriginalMessage.setJsonStr(json); taskOriginalMessage.setJsonStr(json);
taskOriginalMessage.setUpdateTime(DateUtil.now()); taskOriginalMessage.setUpdateTime(DateUtil.now());
taskOriginalMessage.setState(stateEnum); taskOriginalMessage.setState(stateEnum);
taskOriginalMessage.setErrorMsg(exMessageResult.length() > 500 ? exMessageResult.substring(0, 500) : exMessageResult);
super.updateById(taskOriginalMessage); super.updateById(taskOriginalMessage);
} }
} }

Loading…
Cancel
Save