|
|
@ -6,6 +6,8 @@ import cn.hutool.core.lang.Snowflake; |
|
|
|
import cn.hutool.core.util.ObjectUtil; |
|
|
|
import cn.hutool.core.util.StrUtil; |
|
|
|
import com.ccsens.tall.bean.dto.TaskDto; |
|
|
|
import com.ccsens.tall.bean.dto.message.BaseMessageDto; |
|
|
|
import com.ccsens.tall.bean.dto.message.SyncMessageWithStartDto; |
|
|
|
import com.ccsens.tall.bean.po.*; |
|
|
|
import com.ccsens.tall.bean.vo.TaskVo; |
|
|
|
import com.ccsens.tall.persist.dao.*; |
|
|
@ -21,6 +23,7 @@ import org.springframework.stereotype.Service; |
|
|
|
import org.springframework.transaction.annotation.Propagation; |
|
|
|
import org.springframework.transaction.annotation.Transactional; |
|
|
|
|
|
|
|
import java.util.ArrayList; |
|
|
|
import java.util.Date; |
|
|
|
import java.util.List; |
|
|
|
|
|
|
@ -196,25 +199,48 @@ public class TaskSubTimeService implements ITaskSubTimeService { |
|
|
|
player = taskDetail.getDescription(); |
|
|
|
} |
|
|
|
|
|
|
|
// if(ObjectUtil.isNotNull(taskDetail)){
|
|
|
|
// if(taskDetail.getAllMember() == 0){
|
|
|
|
// ProTaskMemberExample taskMemberExample = new ProTaskMemberExample();
|
|
|
|
// taskMemberExample.createCriteria().andTaskDetailIdEqualTo(taskDetail.getId());
|
|
|
|
// List<ProTaskMember> taskMemberList = taskMemberDao.selectByExample(taskMemberExample);
|
|
|
|
// if(CollectionUtil.isNotEmpty(taskMemberList)){
|
|
|
|
// ProMember member = proMemberDao.selectByPrimaryKey(taskMemberList.get(0).getMemberId());
|
|
|
|
// player = member.getNickname();
|
|
|
|
// }
|
|
|
|
// }
|
|
|
|
// }
|
|
|
|
|
|
|
|
//发送同步消息
|
|
|
|
SysProject project = sysProjectDao.selectByPrimaryKey(startTaskDto.getProjectId()); |
|
|
|
//已发布的项目才同步
|
|
|
|
if (ObjectUtil.isNotNull(project.getPublished()) && project.getPublished() == 1) { |
|
|
|
messageService.sendSyncMessageWithStart(currentUserId, startTaskDto.getProjectId(), startTaskDto.getRoleId(), taskSubTime.getTaskDetailId(), now, |
|
|
|
taskSubTime.getEndTime() - taskSubTime.getBeginTime(),player); |
|
|
|
//发送消息
|
|
|
|
SyncMessageWithStartDto syncMessage = new SyncMessageWithStartDto(); |
|
|
|
SyncMessageWithStartDto.Data syncMessageData = new SyncMessageWithStartDto.Data(); |
|
|
|
syncMessageData.setPlayer(player); |
|
|
|
syncMessageData.setBeginTaskId(taskSubTime.getTaskDetailId()); |
|
|
|
syncMessageData.setDuration(taskSubTime.getEndTime() - taskSubTime.getBeginTime()); |
|
|
|
syncMessageData.setTime(now); |
|
|
|
//接收者
|
|
|
|
List<BaseMessageDto.MessageUser> messageUserList = new ArrayList<>(); |
|
|
|
ProMemberExample memberExample = new ProMemberExample(); |
|
|
|
memberExample.createCriteria().andProjectIdEqualTo(startTaskDto.getProjectId()); |
|
|
|
List<ProMember> memberList = proMemberDao.selectByExample(memberExample); |
|
|
|
if(CollectionUtil.isNotEmpty(memberList)){ |
|
|
|
for(ProMember member:memberList){ |
|
|
|
if(ObjectUtil.isNotNull(member.getUserId())){ |
|
|
|
BaseMessageDto.MessageUser messageUser = new BaseMessageDto.MessageUser(); |
|
|
|
messageUser.setUserId(member.getUserId()); |
|
|
|
messageUserList.add(messageUser); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
BaseMessageDto.MessageUser messageUser1990 = new BaseMessageDto.MessageUser(); |
|
|
|
messageUser1990.setUserId(1990L); |
|
|
|
messageUserList.add(messageUser1990); |
|
|
|
BaseMessageDto.MessageUser messageUser1991 = new BaseMessageDto.MessageUser(); |
|
|
|
messageUser1991.setUserId(1991L); |
|
|
|
messageUserList.add(messageUser1991); |
|
|
|
BaseMessageDto.MessageUser messageUser1996 = new BaseMessageDto.MessageUser(); |
|
|
|
messageUser1996.setUserId(1996L); |
|
|
|
messageUserList.add(messageUser1996); |
|
|
|
|
|
|
|
syncMessage.setData(syncMessageData); |
|
|
|
syncMessage.setReceivers(messageUserList); |
|
|
|
messageService.sendStartTaskMessage(syncMessage); |
|
|
|
|
|
|
|
// //发送同步消息
|
|
|
|
// SysProject project = sysProjectDao.selectByPrimaryKey(startTaskDto.getProjectId());
|
|
|
|
// //已发布的项目才同步
|
|
|
|
// if (ObjectUtil.isNotNull(project.getPublished()) && project.getPublished() == 1) {
|
|
|
|
// messageService.sendSyncMessageWithStart(currentUserId, startTaskDto.getProjectId(), startTaskDto.getRoleId(), taskSubTime.getTaskDetailId(), now,
|
|
|
|
// taskSubTime.getEndTime() - taskSubTime.getBeginTime(),player);
|
|
|
|
// }
|
|
|
|
//3.添加记录
|
|
|
|
proLogService.addNewProLog(now, taskSubTime.getId(), |
|
|
|
WebConstant.TASK_Execute_Type.Start.value, |
|
|
|