Browse Source

开始任务添加player

master
zhangye 6 years ago
parent
commit
26ea1b6013
  1. 3
      game/src/main/java/com/ccsens/game/bean/dto/message/ChangeStatusMessageDto.java
  2. 6
      game/src/main/java/com/ccsens/game/bean/dto/message/GameMessageWithChangeStatusOut.java
  3. 12
      game/src/main/java/com/ccsens/game/service/MessageService.java
  4. 3
      tall/src/main/java/com/ccsens/tall/service/IMessageService.java
  5. 9
      tall/src/main/java/com/ccsens/tall/service/MessageService.java
  6. 62
      tall/src/main/java/com/ccsens/tall/service/TaskSubTimeService.java

3
game/src/main/java/com/ccsens/game/bean/dto/message/ChangeStatusMessageDto.java

@ -8,6 +8,9 @@ import java.util.List;
@Data
public class ChangeStatusMessageDto {
private Long userId;
private PendingData pendingData;
private CompletedData completedData;
@Data
@ApiModel("开始")

6
game/src/main/java/com/ccsens/game/bean/dto/message/GameMessageWithChangeStatusOut.java

@ -5,6 +5,8 @@ import lombok.Data;
import lombok.Getter;
import lombok.Setter;
import java.util.List;
@Data
public class GameMessageWithChangeStatusOut extends BaseMessageDto{
@Setter
@ -12,7 +14,7 @@ public class GameMessageWithChangeStatusOut extends BaseMessageDto{
public static class Data{
private Long recordId;
private int gameStatus;
private ChangeStatusMessageDto changeStatusMessageDto;
private List<ChangeStatusMessageDto> changeStatusMessageDto;
}
private Data data;
@ -22,7 +24,7 @@ public class GameMessageWithChangeStatusOut extends BaseMessageDto{
setTime(System.currentTimeMillis());
}
public GameMessageWithChangeStatusOut(Long recordId,int gameStatus,ChangeStatusMessageDto changeStatusMessageDto){
public GameMessageWithChangeStatusOut(Long recordId,int gameStatus,List<ChangeStatusMessageDto> changeStatusMessageDto){
this();
Data d = new Data();
d.setRecordId(recordId);

12
game/src/main/java/com/ccsens/game/service/MessageService.java

@ -93,12 +93,16 @@ public class MessageService implements IMessageService {
}
}
/**
* 发送状态改变的消息
* @param gameMessage
*/
@Override
public void doChangeStatusMessage(GameMessageWithChangeStatusOut gameMessage) {
List<BaseMessageDto.MessageUser> messageUserList = gameMessage.getReceivers();
if(CollectionUtil.isNotEmpty(messageUserList)){
for(BaseMessageDto.MessageUser messageUser : messageUserList){
sendTo(messageUser.getUserId().toString(),gameMessage);
List<ChangeStatusMessageDto> changeStatusMessageDtoList = gameMessage.getData().getChangeStatusMessageDto();
if(CollectionUtil.isNotEmpty(changeStatusMessageDtoList)){
for(ChangeStatusMessageDto changeStatus : changeStatusMessageDtoList){
sendTo(changeStatus.getUserId().toString(),gameMessage);
}
}
}

3
tall/src/main/java/com/ccsens/tall/service/IMessageService.java

@ -3,6 +3,7 @@ package com.ccsens.tall.service;
import com.ccsens.tall.bean.dto.message.DeliverMessageWithCheckerDto;
import com.ccsens.tall.bean.dto.message.DeliverMessageWithDeleteDto;
import com.ccsens.tall.bean.dto.message.DeliverMessageWithUploadDto;
import com.ccsens.tall.bean.dto.message.SyncMessageWithStartDto;
import com.ccsens.util.bean.message.common.InMessage;
public interface IMessageService {
@ -13,4 +14,6 @@ public interface IMessageService {
void sendDeliverMessageWithChecker(InMessage inMessage)throws Exception;
void sendDeliverMessageWithDelete(InMessage inMessage)throws Exception;
void sendStartTaskMessage(SyncMessageWithStartDto syncMessage)throws Exception;
}

9
tall/src/main/java/com/ccsens/tall/service/MessageService.java

@ -60,7 +60,7 @@ public class MessageService implements IMessageService{
SyncMessageWithStartDto message = new SyncMessageWithStartDto(projectId, sender, receivers, roleId, taskId, null, time, duration,player);
//FixMe 发送到消息队列
System.out.println(message);
System.out.println("+++++++++++++"+JacksonUtil.beanToJson(message));
rabbitTemplate.convertAndSend(RabbitMQConfig.RabbitMQ_QUEUE_NAME,
JacksonUtil.beanToJson(message));
}
@ -89,4 +89,11 @@ public class MessageService implements IMessageService{
JacksonUtil.beanToJson(inMessage));
}
@Override
public void sendStartTaskMessage(SyncMessageWithStartDto syncMessage) throws Exception {
System.out.println(JacksonUtil.beanToJson(syncMessage));
//FixMe 发送到消息队列
rabbitTemplate.convertAndSend(RabbitMQConfig.TALL_MESSAGE_1 ,
JacksonUtil.beanToJson(syncMessage));
}
}

62
tall/src/main/java/com/ccsens/tall/service/TaskSubTimeService.java

@ -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,

Loading…
Cancel
Save