Browse Source

Merge branch 'dev-mata-ldz' of xiongzhu/raex_back into master

lidongze 3 years ago
parent
commit
8ebd19df7b

+ 3 - 0
src/main/java/com/izouma/nineth/repo/AssetRepo.java

@@ -188,4 +188,7 @@ public interface AssetRepo extends JpaRepository<Asset, Long>, JpaSpecificationE
     Asset findFirstByNameAndStatus(String name, AssetStatus status);
     Asset findFirstByNameAndStatus(String name, AssetStatus status);
 
 
     Asset findByNameAndStatusAndCategoryAndDel(String name, AssetStatus status, String categroy,boolean del);
     Asset findByNameAndStatusAndCategoryAndDel(String name, AssetStatus status, String categroy,boolean del);
+
+    @Query(nativeQuery = true,value = "select phone from asset inner join user on asset.user_id = user.id where asset.name like ?1 and status = 'NORMAL' and category = '元域名'")
+    String findPhone(String name);
 }
 }

+ 16 - 0
src/main/java/com/izouma/nineth/web/AuthenticationController.java

@@ -9,6 +9,7 @@ import com.izouma.nineth.enums.AuthorityName;
 import com.izouma.nineth.enums.InviteType;
 import com.izouma.nineth.enums.InviteType;
 import com.izouma.nineth.exception.AuthenticationException;
 import com.izouma.nineth.exception.AuthenticationException;
 import com.izouma.nineth.exception.BusinessException;
 import com.izouma.nineth.exception.BusinessException;
+import com.izouma.nineth.repo.AssetRepo;
 import com.izouma.nineth.repo.MetaTouristRepo;
 import com.izouma.nineth.repo.MetaTouristRepo;
 import com.izouma.nineth.security.JwtTokenUtil;
 import com.izouma.nineth.security.JwtTokenUtil;
 import com.izouma.nineth.security.JwtUserFactory;
 import com.izouma.nineth.security.JwtUserFactory;
@@ -18,6 +19,7 @@ import io.swagger.annotations.ApiOperation;
 import lombok.AllArgsConstructor;
 import lombok.AllArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.lang3.RandomStringUtils;
 import org.apache.commons.lang3.RandomStringUtils;
+import org.apache.commons.lang3.StringUtils;
 import org.springframework.security.authentication.AuthenticationManager;
 import org.springframework.security.authentication.AuthenticationManager;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.web.bind.annotation.*;
 
 
@@ -37,6 +39,8 @@ public class AuthenticationController {
 
 
     private MetaTouristRepo metaTouristRepo;
     private MetaTouristRepo metaTouristRepo;
 
 
+    private AssetRepo assetRepo;
+
     @PostMapping("/login")
     @PostMapping("/login")
     public String loginByUserPwd(String username, String password, Integer expiration) {
     public String loginByUserPwd(String username, String password, Integer expiration) {
         User user = userService.loginByUsernamePwd(username, password);
         User user = userService.loginByUsernamePwd(username, password);
@@ -121,6 +125,18 @@ public class AuthenticationController {
         return MetaRestResult.returnSuccess(MetaUserDTO.create(user, token));
         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")
     @PostMapping("/tradingLogin")
     public Object tradingLogin(String phone, String password, String tradeCode) {
     public Object tradingLogin(String phone, String password, String tradeCode) {
         return userService.loginTrading(phone, password, tradeCode);
         return userService.loginTrading(phone, password, tradeCode);