Skip to content

Commit

Permalink
Merge pull request #15 from CodingWasabi/develop
Browse files Browse the repository at this point in the history
Develop
  • Loading branch information
daehwan2yo authored Jun 12, 2021
2 parents e75ca38 + 239de14 commit 04e55be
Show file tree
Hide file tree
Showing 4 changed files with 66 additions and 4 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
import com.codingwasabi.bigtong.admin.entity.RoomType;
import org.springframework.data.jpa.repository.JpaRepository;

import java.util.List;
import java.util.Optional;

public interface ChatRoomRepository extends JpaRepository<ChatRoom,Long> {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,12 +1,10 @@
package com.codingwasabi.bigtong.main.controller;

import com.codingwasabi.bigtong.main.dto.CurrentReturnDto;
import com.codingwasabi.bigtong.main.service.AccountService;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;

@Slf4j
@RestController
Expand All @@ -32,4 +30,14 @@ public String EnterSite(@RequestParam String name){
return "error/failed";
}

@GetMapping("/current")
public CurrentReturnDto returnCurrent(){
return accountService.returnCurrent();
}

@DeleteMapping("/logout")
public boolean logout(@RequestParam String name){
return accountService.deleteNickname(name);
}

}
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
package com.codingwasabi.bigtong.main.dto;

import lombok.Builder;
import lombok.Data;
import lombok.Setter;

@Data
@Setter
public class CurrentReturnDto {
private int FRUIT;
private int FISH;
private int VEGETABLE;
private int MEAT;
private int GRAIN;
}
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,9 @@
import com.codingwasabi.bigtong.admin.entity.ChatRoom;
import com.codingwasabi.bigtong.admin.repository.ChatRoomRepository;
import com.codingwasabi.bigtong.main.Account;
import com.codingwasabi.bigtong.main.dto.CurrentReturnDto;
import com.codingwasabi.bigtong.main.repository.AccountRepository;
import com.codingwasabi.bigtong.websocket.exception.AccountNotExistException;
import com.codingwasabi.bigtong.websocket.message.ChatMessage;
import com.codingwasabi.bigtong.websocket.message.MessageType;
import com.codingwasabi.bigtong.websocket.service.ChatService;
Expand All @@ -12,6 +14,7 @@
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.socket.WebSocketSession;

import java.util.List;
import java.util.Map;

@Service
Expand Down Expand Up @@ -86,4 +89,39 @@ public void deleteAccount(String nickname,Map<String,WebSocketSession> webSocket
else
accountRepository.deleteAccountByNickname(nickname);
}

public CurrentReturnDto returnCurrent(){
List<ChatRoom> chatRoomList = chatRoomRepository.findAll();
CurrentReturnDto currentReturnDto = new CurrentReturnDto();

for(ChatRoom chatRoom : chatRoomList){
switch (chatRoom.getType()){
case GRAIN : currentReturnDto.setGRAIN(chatRoom.getAccountList().size());
break;
case FISH : currentReturnDto.setFISH(chatRoom.getAccountList().size());
break;
case VEGETABLE : currentReturnDto.setVEGETABLE(chatRoom.getAccountList().size());
break;
case MEAT : currentReturnDto.setMEAT(chatRoom.getAccountList().size());
break;
case FRUIT : currentReturnDto.setFRUIT(chatRoom.getAccountList().size());
break;
}
}

return currentReturnDto;
}

@Transactional
public boolean deleteNickname(String name){

try {
Account account = accountRepository.findByNickname(name).orElseThrow(AccountNotExistException::new);
}catch (AccountNotExistException a){
return false;
}

accountRepository.deleteAccountByNickname(name);
return true;
}
}

0 comments on commit 04e55be

Please sign in to comment.