|
@@ -0,0 +1,88 @@
|
|
|
|
+package com.simuwang.manage.task;
|
|
|
|
+
|
|
|
|
+import com.github.junrar.unpack.decode.LitDecode;
|
|
|
|
+import com.simuwang.base.common.enums.Frequency;
|
|
|
|
+import com.simuwang.base.common.enums.TaskType;
|
|
|
|
+import com.simuwang.base.common.util.DateUtils;
|
|
|
|
+import com.simuwang.base.mapper.daq.*;
|
|
|
|
+import com.simuwang.base.pojo.dos.*;
|
|
|
|
+import com.simuwang.shiro.utils.UserUtils;
|
|
|
|
+import org.slf4j.Logger;
|
|
|
|
+import org.slf4j.LoggerFactory;
|
|
|
|
+import org.springframework.beans.factory.annotation.Autowired;
|
|
|
|
+import org.springframework.stereotype.Component;
|
|
|
|
+
|
|
|
|
+import java.util.List;
|
|
|
|
+
|
|
|
|
+/**
|
|
|
|
+ * FileName: NavFrequencyComputeTask
|
|
|
|
+ * Author: chenjianhua
|
|
|
|
+ * Date: 2024/12/9 15:46
|
|
|
|
+ * Description: ${DESCRIPTION}
|
|
|
|
+ */
|
|
|
|
+@Component
|
|
|
|
+public class ParseEmailFailTask {
|
|
|
|
+ private static final Logger log = LoggerFactory.getLogger(ParseEmailFailTask.class);
|
|
|
|
+ @Autowired
|
|
|
|
+ private EmailTaskInfoMapper emailTaskInfoMapper;
|
|
|
|
+ @Autowired
|
|
|
|
+ private EmailParseInfoMapper emailParseInfoMapper;
|
|
|
|
+ @Autowired
|
|
|
|
+ private ChannelMapper channelMapper;
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * 取近一月(35天)净值数量判断
|
|
|
|
+ * 净值数 >= 8, 设置为“日频”
|
|
|
|
+ * 2 < 净值数 < 8, 设置为“周频”
|
|
|
|
+ * 1 <= 净值数 <= 2, 设置为“月频”
|
|
|
|
+ * 不满足上述规则,默认为空。
|
|
|
|
+ */
|
|
|
|
+ public void emailParseFailTaskStaticis(){
|
|
|
|
+ EmailTaskInfoDO emailTaskInfoDO = startEmailTask(null, 1);
|
|
|
|
+ //获取净值振幅错误的数据总量
|
|
|
|
+ List<ChannelInfoDO> channelInfoDOList = channelMapper.selectAllChannel();
|
|
|
|
+ String parseDate = DateUtils.getAroundToday(-1);
|
|
|
|
+ for (ChannelInfoDO channelInfoDO : channelInfoDOList) {
|
|
|
|
+ String email = emailTaskInfoDO.getEmail();
|
|
|
|
+ List<EmailParseInfoDO> emailParseInfoDOList = emailParseInfoMapper.selectListByParseDate(email,parseDate);
|
|
|
|
+ }
|
|
|
|
+ endEmailTask(emailTaskInfoDO.getId(),2);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ private EmailTaskInfoDO startEmailTask(String email,Integer taskStatus) {
|
|
|
|
+ EmailTaskInfoDO emailTaskInfoDO = new EmailTaskInfoDO();
|
|
|
|
+ try{
|
|
|
|
+ emailTaskInfoDO.setTaskName(TaskType.PARSE_FAIL_EMAIL.getInfo());
|
|
|
|
+ emailTaskInfoDO.setTaskType(TaskType.PARSE_FAIL_EMAIL.getType());
|
|
|
|
+ emailTaskInfoDO.setTaskStatus(taskStatus);
|
|
|
|
+ emailTaskInfoDO.setStartTime(DateUtils.getNowDate());
|
|
|
|
+ emailTaskInfoDO.setIsvalid(1);
|
|
|
|
+ emailTaskInfoDO.setEmail(email);
|
|
|
|
+ emailTaskInfoDO.setCreateTime(DateUtils.getNowDate());
|
|
|
|
+ emailTaskInfoDO.setUpdateTime(DateUtils.getNowDate());
|
|
|
|
+ try{
|
|
|
|
+ emailTaskInfoDO.setCreatorId(UserUtils.getLoginUser().getUserId());
|
|
|
|
+ emailTaskInfoDO.setUpdaterId(UserUtils.getLoginUser().getUserId());
|
|
|
|
+ }catch (Exception e){
|
|
|
|
+ emailTaskInfoDO.setCreatorId(1);
|
|
|
|
+ emailTaskInfoDO.setUpdaterId(1);
|
|
|
|
+ }
|
|
|
|
+ emailTaskInfoMapper.insert(emailTaskInfoDO);
|
|
|
|
+ }catch (Exception e){
|
|
|
|
+ log.error(e.getMessage());
|
|
|
|
+ }
|
|
|
|
+ return emailTaskInfoDO;
|
|
|
|
+ }
|
|
|
|
+ private void endEmailTask(Integer id, Integer taskStatus) {
|
|
|
|
+ try{
|
|
|
|
+ EmailTaskInfoDO emailTaskInfoDO = new EmailTaskInfoDO();
|
|
|
|
+ emailTaskInfoDO.setId(id);
|
|
|
|
+ emailTaskInfoDO.setTaskStatus(taskStatus);
|
|
|
|
+ emailTaskInfoDO.setUpdateTime(DateUtils.getNowDate());
|
|
|
|
+ emailTaskInfoDO.setEndTime(DateUtils.getNowDate());
|
|
|
|
+ emailTaskInfoMapper.updateTaskStatusById(emailTaskInfoDO);
|
|
|
|
+ }catch (Exception e){
|
|
|
|
+ log.error(e.getMessage());
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+}
|