|
|
@@ -9,6 +9,7 @@ import com.izouma.nineth.enums.AuthorityName;
|
|
|
import com.izouma.nineth.enums.InviteType;
|
|
|
import com.izouma.nineth.exception.AuthenticationException;
|
|
|
import com.izouma.nineth.exception.BusinessException;
|
|
|
+import com.izouma.nineth.repo.AssetRepo;
|
|
|
import com.izouma.nineth.repo.MetaTouristRepo;
|
|
|
import com.izouma.nineth.security.JwtTokenUtil;
|
|
|
import com.izouma.nineth.security.JwtUserFactory;
|
|
|
@@ -18,6 +19,7 @@ import io.swagger.annotations.ApiOperation;
|
|
|
import lombok.AllArgsConstructor;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
import org.apache.commons.lang3.RandomStringUtils;
|
|
|
+import org.apache.commons.lang3.StringUtils;
|
|
|
import org.springframework.security.authentication.AuthenticationManager;
|
|
|
import org.springframework.web.bind.annotation.*;
|
|
|
|
|
|
@@ -37,6 +39,8 @@ public class AuthenticationController {
|
|
|
|
|
|
private MetaTouristRepo metaTouristRepo;
|
|
|
|
|
|
+ private AssetRepo assetRepo;
|
|
|
+
|
|
|
@PostMapping("/login")
|
|
|
public String loginByUserPwd(String username, String password, Integer expiration) {
|
|
|
User user = userService.loginByUsernamePwd(username, password);
|
|
|
@@ -121,6 +125,18 @@ public class AuthenticationController {
|
|
|
return MetaRestResult.returnSuccess(MetaUserDTO.create(user, token));
|
|
|
}
|
|
|
|
|
|
+ @PostMapping("/metaDomainPwdLogin")
|
|
|
+ @ApiOperation(value = "元宇宙元域名密码登录")
|
|
|
+ public MetaRestResult<MetaUserDTO> metaDomainPwdLogin(String name, String password) {
|
|
|
+ String phone = assetRepo.findPhone("RID元宇宙域名 ".concat(name).concat(".nft"));
|
|
|
+ if (StringUtils.isEmpty(phone)){
|
|
|
+ return MetaRestResult.returnError("此域名暂无用户持有");
|
|
|
+ }
|
|
|
+ User user = userService.loginByPhonePwd(phone, password);
|
|
|
+ String token = jwtTokenUtil.generateToken(JwtUserFactory.create(user));
|
|
|
+ return MetaRestResult.returnSuccess(MetaUserDTO.create(user, token));
|
|
|
+ }
|
|
|
+
|
|
|
@PostMapping("/tradingLogin")
|
|
|
public Object tradingLogin(String phone, String password, String tradeCode) {
|
|
|
return userService.loginTrading(phone, password, tradeCode);
|