UserServiceTest.java 7.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200
  1. package com.izouma.nineth.service;
  2. import com.github.kevinsawicki.http.HttpRequest;
  3. import com.huifu.adapay.core.exception.BaseAdaPayException;
  4. import com.izouma.nineth.ApplicationTests;
  5. import com.izouma.nineth.config.Constants;
  6. import com.izouma.nineth.domain.IdentityAuth;
  7. import com.izouma.nineth.domain.User;
  8. import com.izouma.nineth.dto.BankValidate;
  9. import com.izouma.nineth.dto.PageQuery;
  10. import com.izouma.nineth.dto.UserBankCard;
  11. import com.izouma.nineth.dto.UserRegister;
  12. import com.izouma.nineth.enums.AuthStatus;
  13. import com.izouma.nineth.enums.AuthorityName;
  14. import com.izouma.nineth.exception.BusinessException;
  15. import com.izouma.nineth.repo.IdentityAuthRepo;
  16. import com.izouma.nineth.repo.UserBankCardRepo;
  17. import com.izouma.nineth.repo.UserRepo;
  18. import com.izouma.nineth.security.Authority;
  19. import com.izouma.nineth.service.storage.StorageService;
  20. import com.izouma.nineth.utils.BankUtils;
  21. import org.apache.commons.lang3.RandomStringUtils;
  22. import org.apache.commons.lang3.StringUtils;
  23. import org.junit.Test;
  24. import org.springframework.beans.factory.annotation.Autowired;
  25. import java.io.File;
  26. import java.io.FileInputStream;
  27. import java.io.IOException;
  28. import java.util.Collections;
  29. import java.util.List;
  30. import java.util.Map;
  31. public class UserServiceTest extends ApplicationTests {
  32. @Autowired
  33. private UserService userService;
  34. @Autowired
  35. private UserRepo userRepo;
  36. @Autowired
  37. private StorageService storageService;
  38. @Autowired
  39. private UserBankCardRepo userBankCardRepo;
  40. @Autowired
  41. private AdapayMerchantService adapayMerchantService;
  42. @Autowired
  43. private IdentityAuthRepo identityAuthRepo;
  44. @Test
  45. public void findByUsernameAndDelFalse1() {
  46. userRepo.findByUsernameAndDelFalse("admin");
  47. userRepo.findByUsernameAndDelFalse("admin");
  48. }
  49. @Test
  50. public void searchByPhone() {
  51. System.out.println(userService.searchByPhone("15077886171"));
  52. }
  53. @Test
  54. public void sss9() throws IOException {
  55. for (User user : userRepo.findAll()) {
  56. if (user.getAvatar().startsWith("https://cdn")) {
  57. HttpRequest request = HttpRequest.get(user.getAvatar());
  58. File file = File.createTempFile("gw1", "1sadga");
  59. request.receive(file);
  60. user.setAvatar(storageService.uploadFromInputStream(new FileInputStream(file), "image/" + RandomStringUtils.randomAlphabetic(12) + ".jpg"));
  61. userRepo.save(user);
  62. }
  63. }
  64. }
  65. @Test
  66. public void a() {
  67. for (String s : ("13816681152\n" +
  68. "15564456867\n" +
  69. "13363659367\n" +
  70. "18963550881\n" +
  71. "13931604318\n" +
  72. "13705395943\n" +
  73. "13162078752\n" +
  74. "13589360751\n")
  75. .split("\n")) {
  76. String name = "9th_" + RandomStringUtils.randomAlphabetic(8);
  77. User user = userService.create(UserRegister.builder()
  78. .authorities(Collections.singleton(Authority.get(AuthorityName.ROLE_USER)))
  79. .username(name)
  80. .nickname(name)
  81. .password("123456")
  82. .avatar(Constants.DEFAULT_AVATAR)
  83. .phone(s)
  84. .build());
  85. }
  86. }
  87. @Test
  88. public void batchRegister() {
  89. userService.batchRegister("13226246698\n" +
  90. "13793310531\n" +
  91. "13358006613\n" +
  92. "18898406893\n" +
  93. "17615876370\n" +
  94. "13267002685\n" +
  95. "15888548080\n" +
  96. "13678662069\n" +
  97. "15659009359\n" +
  98. "13011776866\n" +
  99. "18810668532\n" +
  100. "13543322894\n" +
  101. "13589360750\n" +
  102. "18582589484\n" +
  103. "15194185209\n" +
  104. "15063692500\n" +
  105. "13605489618\n" +
  106. "18069783568\n" +
  107. "15801815684\n" +
  108. "13285413859\n" +
  109. "13688419164\n" +
  110. "15979115671\n" +
  111. "13799940755\n" +
  112. "18301015323", "123456");
  113. }
  114. @Test
  115. public void test() {
  116. PageQuery pageQuery = new PageQuery();
  117. Map<String, Object> query = pageQuery.getQuery();
  118. query.put("inviteCode", "JL21FF");
  119. pageQuery.setSize(5000);
  120. List<User> phone = userService.all(pageQuery)
  121. .getContent();
  122. phone.forEach(user -> System.out.println(user.getPhone() + ":" + user.getCreatedAt()));
  123. // 2022-01-14T15:53:58 504 第一次查询
  124. phone.forEach(user -> System.out.print(user.getPhone() + " "));
  125. }
  126. @Test
  127. public void switchAccount() {
  128. userService.checkSettleAccount();
  129. }
  130. @Test
  131. public void phoneRegister() {
  132. userService.phoneRegister("18100004444", "1234", "123456", null, 9972L, 206925L);
  133. }
  134. @Test
  135. public void addBankCard() throws BaseAdaPayException {
  136. Long userId = 134613L;
  137. String bankNo = "6222024301070380165";
  138. String phone = "15077886171";
  139. User user = userRepo.findById(userId).orElseThrow(new BusinessException("用户不存在"));
  140. IdentityAuth identityAuth = identityAuthRepo.findFirstByUserIdAndStatusAndDelFalseOrderByCreatedAtDesc(userId, AuthStatus.SUCCESS)
  141. .orElseThrow(new BusinessException("用户未认证"));
  142. if (identityAuth.isOrg()) {
  143. //throw new BusinessException("企业认证用户请绑定对公账户");
  144. }
  145. if (!StringUtils.isBlank(user.getSettleAccountId())) {
  146. throw new BusinessException("此账号已绑定");
  147. }
  148. BankValidate bankValidate = BankUtils.validate(bankNo);
  149. if (!bankValidate.isValidated()) {
  150. throw new BusinessException("暂不支持此卡");
  151. }
  152. adapayMerchantService.createMemberForAll(userId.toString(), user.getPhone(), identityAuth.getRealName(), identityAuth.getIdNo());
  153. user.setMemberId(user.getId().toString());
  154. userRepo.save(user);
  155. String accountId = adapayMerchantService.createSettleAccountForAll
  156. (user.getMemberId(), identityAuth.getRealName(),
  157. identityAuth.getIdNo(), phone, bankNo);
  158. user.setSettleAccountId(accountId);
  159. userRepo.save(user);
  160. userBankCardRepo.save(UserBankCard.builder()
  161. .bank(bankValidate.getBank())
  162. .bankName(bankValidate.getBankName())
  163. .bankNo(bankNo)
  164. .cardType(bankValidate.getCardType())
  165. .cardTypeDesc(bankValidate.getCardTypeDesc())
  166. .userId(userId)
  167. .phone(phone)
  168. .realName(identityAuth.getRealName())
  169. .idNo(identityAuth.getIdNo())
  170. .build());
  171. }
  172. @Test
  173. public void test1() {
  174. List<User> users = userRepo.findAll();
  175. users.forEach(user -> {
  176. if (user.getVipPoint() > 1) {
  177. user.setVipPoint(1);
  178. } else {
  179. }
  180. });
  181. }
  182. }