|
@@ -66,7 +66,7 @@ func Login(header *protocol.RequestHeader, request *protocol.LoginRequest) (rsp |
|
@@ -66,7 +66,7 @@ func Login(header *protocol.RequestHeader, request *protocol.LoginRequest) (rsp |
66
|
err = protocol.NewCustomMessage(1, "登录方式不支持!")
|
66
|
err = protocol.NewCustomMessage(1, "登录方式不支持!")
|
67
|
break
|
67
|
break
|
68
|
}
|
68
|
}
|
69
|
- rsp.AuthCode, _ = utils.GenerateToken(partnerInfo.Id, protocol.AuthCodeExpire*time.Second)
|
69
|
+ rsp.AuthCode, _ = utils.GenerateToken(partnerInfo.Id, request.Phone, protocol.AuthCodeExpire*time.Second)
|
70
|
|
70
|
|
71
|
if err = InitOrUpdateUserIMInfo(partnerInfo, transactionContext); err != nil {
|
71
|
if err = InitOrUpdateUserIMInfo(partnerInfo, transactionContext); err != nil {
|
72
|
log.Error(err)
|
72
|
log.Error(err)
|
|
@@ -105,8 +105,8 @@ func AccessToken(request *protocol.AccessTokenRequest) (rsp *protocol.AccessToke |
|
@@ -105,8 +105,8 @@ func AccessToken(request *protocol.AccessTokenRequest) (rsp *protocol.AccessToke |
105
|
err = protocol.NewErrWithMessage(1, fmt.Errorf("jwt authCode (%v) valid", request.AuthCode))
|
105
|
err = protocol.NewErrWithMessage(1, fmt.Errorf("jwt authCode (%v) valid", request.AuthCode))
|
106
|
return
|
106
|
return
|
107
|
}
|
107
|
}
|
108
|
- rsp.AccessToken, _ = utils.GenerateToken(claim.UserId, protocol.TokenExpire*time.Second)
|
|
|
109
|
- rsp.RefreshToken, _ = utils.GenerateToken(claim.UserId, protocol.RefreshTokenExipre*time.Second)
|
108
|
+ rsp.AccessToken, _ = utils.GenerateToken(claim.UserId, claim.Phone, protocol.TokenExpire*time.Second)
|
|
|
109
|
+ rsp.RefreshToken, _ = utils.GenerateToken(claim.UserId, claim.Phone, protocol.RefreshTokenExipre*time.Second)
|
110
|
rsp.ExpiresIn = protocol.TokenExpire
|
110
|
rsp.ExpiresIn = protocol.TokenExpire
|
111
|
|
111
|
|
112
|
//auth := userAuth.NewRedisUserAuth(userAuth.WithUserId(claim.UserId),
|
112
|
//auth := userAuth.NewRedisUserAuth(userAuth.WithUserId(claim.UserId),
|
|
@@ -122,7 +122,21 @@ func AccessToken(request *protocol.AccessTokenRequest) (rsp *protocol.AccessToke |
|
@@ -122,7 +122,21 @@ func AccessToken(request *protocol.AccessTokenRequest) (rsp *protocol.AccessToke |
122
|
func RefreshToken(request *protocol.RefreshTokenRequest) (rsp *protocol.RefreshTokenResponse, err error) {
|
122
|
func RefreshToken(request *protocol.RefreshTokenRequest) (rsp *protocol.RefreshTokenResponse, err error) {
|
123
|
var (
|
123
|
var (
|
124
|
claim *utils.UserTokenClaims
|
124
|
claim *utils.UserTokenClaims
|
|
|
125
|
+ transactionContext, _ = factory.CreateTransactionContext(nil)
|
|
|
126
|
+ PartnerInfoService, _ = factory.CreatePartnerInfoRepositoryIn(transactionContext)
|
|
|
127
|
+ PartnerSubAccountRepository, _ = factory.CreatePartnerSubAccountRepository(transactionContext)
|
|
|
128
|
+
|
|
|
129
|
+ partnerInfo *domain.PartnerInfo
|
|
|
130
|
+ partnerSubAccount *domain.PartnerSubAccount
|
125
|
)
|
131
|
)
|
|
|
132
|
+
|
|
|
133
|
+ if err = transactionContext.StartTransaction(); err != nil {
|
|
|
134
|
+ return nil, err
|
|
|
135
|
+ }
|
|
|
136
|
+ defer func() {
|
|
|
137
|
+ transactionContext.RollbackTransaction()
|
|
|
138
|
+ }()
|
|
|
139
|
+
|
126
|
rsp = &protocol.RefreshTokenResponse{}
|
140
|
rsp = &protocol.RefreshTokenResponse{}
|
127
|
if claim, err = utils.ParseJWTToken(request.RefreshToken); err != nil {
|
141
|
if claim, err = utils.ParseJWTToken(request.RefreshToken); err != nil {
|
128
|
err = protocol.NewErrWithMessage(4140, err)
|
142
|
err = protocol.NewErrWithMessage(4140, err)
|
|
@@ -132,14 +146,27 @@ func RefreshToken(request *protocol.RefreshTokenRequest) (rsp *protocol.RefreshT |
|
@@ -132,14 +146,27 @@ func RefreshToken(request *protocol.RefreshTokenRequest) (rsp *protocol.RefreshT |
132
|
err = protocol.NewErrWithMessage(1, fmt.Errorf("jwt refrshToken (%v) valid", request.RefreshToken))
|
146
|
err = protocol.NewErrWithMessage(1, fmt.Errorf("jwt refrshToken (%v) valid", request.RefreshToken))
|
133
|
return
|
147
|
return
|
134
|
}
|
148
|
}
|
|
|
149
|
+
|
|
|
150
|
+ //验证用户有效
|
|
|
151
|
+ var e error
|
|
|
152
|
+ if partnerSubAccount, e = PartnerSubAccountRepository.FindOne(map[string]interface{}{"account": claim.Phone}); e == nil {
|
|
|
153
|
+ partnerInfo, e = PartnerInfoService.FindOne(map[string]interface{}{"id": partnerSubAccount.PartnerId})
|
|
|
154
|
+ } else {
|
|
|
155
|
+ partnerInfo, e = PartnerInfoService.FindOne(map[string]interface{}{"account": claim.Phone})
|
|
|
156
|
+ }
|
|
|
157
|
+ if e != nil || partnerInfo == nil || !partnerInfo.IsEnable() || partnerInfo.Id != claim.UserId {
|
|
|
158
|
+ err = protocol.NewErrWithMessage(4140) //账号禁用
|
|
|
159
|
+ return
|
|
|
160
|
+ }
|
|
|
161
|
+
|
135
|
//oldAuth := userAuth.NewRedisUserAuth(userAuth.WithUserId(claim.UserId))
|
162
|
//oldAuth := userAuth.NewRedisUserAuth(userAuth.WithUserId(claim.UserId))
|
136
|
//if err = oldAuth.Check(userAuth.NewOptions(userAuth.WithRefreshToken(request.RefreshToken))); err != nil {
|
163
|
//if err = oldAuth.Check(userAuth.NewOptions(userAuth.WithRefreshToken(request.RefreshToken))); err != nil {
|
137
|
// log.Error(err)
|
164
|
// log.Error(err)
|
138
|
// err = protocol.NewErrWithMessage(4140, err)
|
165
|
// err = protocol.NewErrWithMessage(4140, err)
|
139
|
// return
|
166
|
// return
|
140
|
//}
|
167
|
//}
|
141
|
- rsp.AccessToken, _ = utils.GenerateToken(claim.UserId, protocol.TokenExpire*time.Second)
|
|
|
142
|
- rsp.RefreshToken, _ = utils.GenerateToken(claim.UserId, protocol.RefreshTokenExipre*time.Second)
|
168
|
+ rsp.AccessToken, _ = utils.GenerateToken(claim.UserId, claim.Phone, protocol.TokenExpire*time.Second)
|
|
|
169
|
+ rsp.RefreshToken, _ = utils.GenerateToken(claim.UserId, claim.Phone, protocol.RefreshTokenExipre*time.Second)
|
143
|
rsp.ExpiresIn = protocol.TokenExpire
|
170
|
rsp.ExpiresIn = protocol.TokenExpire
|
144
|
|
171
|
|
145
|
//newAuth := userAuth.NewRedisUserAuth(userAuth.WithUserId(claim.UserId),
|
172
|
//newAuth := userAuth.NewRedisUserAuth(userAuth.WithUserId(claim.UserId),
|
|
@@ -149,6 +176,7 @@ func RefreshToken(request *protocol.RefreshTokenRequest) (rsp *protocol.RefreshT |
|
@@ -149,6 +176,7 @@ func RefreshToken(request *protocol.RefreshTokenRequest) (rsp *protocol.RefreshT |
149
|
// log.Error(err)
|
176
|
// log.Error(err)
|
150
|
// return
|
177
|
// return
|
151
|
//}
|
178
|
//}
|
|
|
179
|
+ err = transactionContext.CommitTransaction()
|
152
|
return
|
180
|
return
|
153
|
}
|
181
|
}
|
154
|
|
182
|
|