TeamService.java 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. package com.izouma.nineth.service.netease;
  2. import com.alibaba.fastjson.JSON;
  3. import com.alibaba.fastjson.JSONObject;
  4. import com.izouma.nineth.domain.netease.Team;
  5. import com.izouma.nineth.dto.PageQuery;
  6. import com.izouma.nineth.exception.BusinessException;
  7. import com.izouma.nineth.repo.Netease.TeamRepo;
  8. import com.izouma.nineth.service.netease.NeteaseUserService;
  9. import com.izouma.nineth.utils.JpaUtils;
  10. import lombok.AllArgsConstructor;
  11. import org.springframework.data.domain.Page;
  12. import org.springframework.stereotype.Service;
  13. import java.util.HashMap;
  14. import java.util.Map;
  15. @Service
  16. @AllArgsConstructor
  17. public class TeamService {
  18. private TeamRepo teamRepo;
  19. private NeteaseUserService neteaseUserService;
  20. public Page<Team> all(PageQuery pageQuery) {
  21. return teamRepo.findAll(JpaUtils.toSpecification(pageQuery, Team.class), JpaUtils.toPageRequest(pageQuery));
  22. }
  23. public Team create(Team team) {
  24. Map<String, String> params = new HashMap<>();
  25. params.put("tname", team.getName());
  26. params.put("owner", team.getOwnerid());
  27. params.put("members", JSONObject.toJSONString(team.getMembers()));
  28. params.put("joinmode", "0");
  29. params.put("custom", team.getCustom().toString());
  30. params.put("msg", "欢迎加入大厅测试群~~");
  31. String result = neteaseUserService
  32. .httpPost("team/create.action", "application/x-www-form-urlencoded;charset=utf-8", params);
  33. JSONObject jsonObject = JSON.parseObject(result);
  34. Integer code = jsonObject.getInteger("code");
  35. if (code != 200) {
  36. throw new BusinessException("注册出错,请核查后重新注册");
  37. }
  38. Long id = jsonObject.getLong("tid");
  39. team.setTid(id);
  40. return teamRepo.save(team);
  41. }
  42. }