|
|
@ -3,9 +3,9 @@ package com.qniao.dam.application.handler.utc; |
|
|
import cn.hutool.core.lang.Tuple; |
|
|
import cn.hutool.core.lang.Tuple; |
|
|
import com.qniao.dam.domain.aggregate.tasktemplate.entity.SubTaskTemplate; |
|
|
import com.qniao.dam.domain.aggregate.tasktemplate.entity.SubTaskTemplate; |
|
|
import com.qniao.dam.domain.aggregate.tasktemplate.entity.TaskTemplate; |
|
|
import com.qniao.dam.domain.aggregate.tasktemplate.entity.TaskTemplate; |
|
|
|
|
|
import com.qniao.dam.domain.aggregate.utc.UserTaskCompleteAggregate; |
|
|
import com.qniao.dam.domain.aggregate.utc.entity.UserSubTaskComplete; |
|
|
import com.qniao.dam.domain.aggregate.utc.entity.UserSubTaskComplete; |
|
|
import com.qniao.dam.domain.aggregate.utc.entity.UserTaskComplete; |
|
|
import com.qniao.dam.domain.aggregate.utc.entity.UserTaskComplete; |
|
|
import com.qniao.dam.domian.aggregate.tasktemplate.constant.SubTaskTypeEnum; |
|
|
|
|
|
import com.qniao.dam.domian.aggregate.tasktemplate.constant.TaskGroupEnum; |
|
|
import com.qniao.dam.domian.aggregate.tasktemplate.constant.TaskGroupEnum; |
|
|
import com.qniao.dam.domian.aggregate.tasktemplate.constant.TaskStageEnum; |
|
|
import com.qniao.dam.domian.aggregate.tasktemplate.constant.TaskStageEnum; |
|
|
import com.qniao.dam.domian.aggregate.tasktemplate.constant.TaskTypeEnum; |
|
|
import com.qniao.dam.domian.aggregate.tasktemplate.constant.TaskTypeEnum; |
|
|
@ -26,6 +26,7 @@ import org.springframework.amqp.rabbit.annotation.RabbitListener; |
|
|
import org.springframework.stereotype.Component; |
|
|
import org.springframework.stereotype.Component; |
|
|
|
|
|
|
|
|
import javax.annotation.Resource; |
|
|
import javax.annotation.Resource; |
|
|
|
|
|
import java.time.LocalDateTime; |
|
|
import java.util.Collections; |
|
|
import java.util.Collections; |
|
|
import java.util.List; |
|
|
import java.util.List; |
|
|
import java.util.Objects; |
|
|
import java.util.Objects; |
|
|
@ -40,6 +41,8 @@ public class UserTaskCompleteEventHandler extends BaseApplicationService { |
|
|
private TaskTemplateQueryService taskTemplateQueryService; |
|
|
private TaskTemplateQueryService taskTemplateQueryService; |
|
|
@Resource |
|
|
@Resource |
|
|
private UserTaskCompleteQueryService userTaskCompleteQueryService; |
|
|
private UserTaskCompleteQueryService userTaskCompleteQueryService; |
|
|
|
|
|
@Resource |
|
|
|
|
|
private UserTaskCompleteAggregate userTaskCompleteAggregate; |
|
|
|
|
|
|
|
|
@RabbitListener(bindings = @QueueBinding(value = @Queue(MqQueue.USER_SUB_TASK_COMMITTED), |
|
|
@RabbitListener(bindings = @QueueBinding(value = @Queue(MqQueue.USER_SUB_TASK_COMMITTED), |
|
|
exchange = @Exchange(value = MqExchange.USER_SUB_TASK_COMMITTED, |
|
|
exchange = @Exchange(value = MqExchange.USER_SUB_TASK_COMMITTED, |
|
|
@ -67,8 +70,22 @@ public class UserTaskCompleteEventHandler extends BaseApplicationService { |
|
|
} else { |
|
|
} else { |
|
|
if (!userTaskComplete.getCompleteStatus()) { |
|
|
if (!userTaskComplete.getCompleteStatus()) { |
|
|
UserSubTaskComplete userSubTaskComplete = userTaskCompleteQueryService.querySubBy(userTaskComplete.getId(), subTaskTemplate.getId()); |
|
|
UserSubTaskComplete userSubTaskComplete = userTaskCompleteQueryService.querySubBy(userTaskComplete.getId(), subTaskTemplate.getId()); |
|
|
|
|
|
if (Objects.isNull(userSubTaskComplete)) { |
|
|
|
|
|
userSubTaskComplete = UserSubTaskComplete.init(subTaskTemplate.getId()); |
|
|
|
|
|
userTaskComplete.setInsertSubList(Collections.singletonList(userSubTaskComplete)); |
|
|
|
|
|
} else { |
|
|
|
|
|
if (!userSubTaskComplete.getCompleteStatus()) { |
|
|
|
|
|
userSubTaskComplete.setCompleteCount(userSubTaskComplete.getCompleteCount() + mq.getCommitCount()); |
|
|
|
|
|
userSubTaskComplete.setCompleteStatus(userSubTaskComplete.getCompleteCount() >= subTaskTemplate.getRequiredCount()); |
|
|
|
|
|
if (userSubTaskComplete.getCompleteStatus()) { |
|
|
|
|
|
userSubTaskComplete.setCompleteTime(LocalDateTime.now()); |
|
|
|
|
|
} |
|
|
|
|
|
userTaskComplete.setUpdateSubList(Collections.singletonList(userSubTaskComplete)); |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
userTaskCompleteAggregate.edit(userTaskComplete); |
|
|
break; |
|
|
break; |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
@ -79,6 +96,4 @@ public class UserTaskCompleteEventHandler extends BaseApplicationService { |
|
|
log.error("直播时长任务提交事件处理异常", e); |
|
|
log.error("直播时长任务提交事件处理异常", e); |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
} |