fix: 更新客户授权逻辑,添加客户停用状态检查,更新相关错误提示信息
This commit is contained in:
1 parent
ac8066e0a5
commit
10000681cf
7 files changed
+18
-10
No files matched your search
@@ -1,9 +1,9 @@
|
||||
{
|
||||
"server_url": "http://localhost:18888",
|
||||
"authorization_code": "LIC-5359-QKHSAFPI-VWAA",
|
||||
"authorization_code": "LIC-B597-EFr0tbfAooQF-uUAA",
|
||||
"software_version": "1.0.0",
|
||||
"heartbeat_interval": 300,
|
||||
"license_key": "LIC-DEVICE-72921EB189E53806B59FF0AE",
|
||||
"config_updated_at": "2025-11-01T16:31:54+08:00",
|
||||
"license_file": "eyJhbGdvcml0aG0iOiJSU0EtUFNTLVNIQTI1NiIsImRhdGEiOiJ7XCJhY3RpdmF0ZWRfYXRcIjpcIjIwMjUtMTEtMDFUMTY6MTc6MDAuMjE2KzA4OjAwXCIsXCJhdXRob3JpemF0aW9uX2NvZGVcIjpcIkxJQy01MzU5LVFLSFNBRlBJLVZXQUFcIixcImF1dGhvcml6YXRpb25fY29kZV9pZFwiOlwiYmVmODliM2MtNDU1NS00ZjE5LTllMGUtMzM0MDI0MDNhZWFkXCIsXCJjb25maWdfdXBkYXRlZF9hdFwiOlwiMjAyNS0xMS0wMVQxNjoyNzoxOS43NzcrMDg6MDBcIixcImN1c3RvbV9wYXJhbWV0ZXJzXCI6e30sXCJkZXBsb3ltZW50X3R5cGVcIjpcInN0YW5kYWxvbmVcIixcImVuZF9kYXRlXCI6XCIyMDI1LTEyLTEzVDIzOjU5OjU5KzA4OjAwXCIsXCJmZWF0dXJlX2NvbmZpZ1wiOnt9LFwiZ2VuZXJhdGVkX2F0XCI6XCIyMDI1LTExLTAxVDE2OjMxOjU0KzA4OjAwXCIsXCJoYXJkd2FyZV9maW5nZXJwcmludFwiOlwiTUFDOjVlOmEzOjIyOjIyOmVmOmRiLENQVTpBTUQgUnl6ZW4gNSA5NjAwWCA2LUNvcmUgUHJvY2Vzc29yLEhPU1RJRDphMzJlOGViNC00ODg1LTRkMmItYTA3My0yYmM2NDVkZWU0ZTRcIixcImxpY2Vuc2Vfa2V5XCI6XCJMSUMtREVWSUNFLTcyOTIxRUIxODlFNTM4MDZCNTlGRjBBRVwiLFwibWF4X2FjdGl2YXRpb25zXCI6NSxcInN0YXJ0X2RhdGVcIjpcIjIwMjUtMTEtMDFUMDA6MDA6MDArMDg6MDBcIixcInN0YXR1c1wiOlwiYWN0aXZlXCIsXCJ1c2FnZV9saW1pdHNcIjp7fX0iLCJzaWduYXR1cmUiOiJFc1ZMQlNSWE1NN0NteTRDeW5EQ0ZGbkw0ZjByTGlpekk1SDZnQ1V5bDFTZGdHR0JZTzdHNStKdTE2T1Jkb0wxSkJRcW5zaHU5RXh1SDVuY1VXM2ZIZFlQTElQR1VBTVhqMGZwS2tPNENCTyt2VjdlSEI2ZDhUbUlkUnE2MU1vdisvM0k4c3Btb1JUNjljbEVuZWFHWE5LbnZOdm5BQXArVWhHamtWK1phZU8wRXlCM2xDcEJkdWJUWkFiUVFic0pSZHY2ZUszSUFGUkdJVnYzWkJhOCtuMnRWQ3RPRXVhVmF1ZHNhRW5ucTZIQWdXdmdUSzViQ2dHZFJkWUJjdG9vVEpiYWtacE9nSWQvVGRmbThGN0krWENsbVl5bWdmYVdUcldKMXd0SzVpSndtV003bTFyTytvZVB3NjBMNjd4ejVmTzRaZjFPUVF2MVNxekhBV25SVFE9PSJ9"
|
||||
"license_key": "LIC-DEVICE-68DF8AFEF41CA26F248D7D55",
|
||||
"config_updated_at": "2025-11-01T17:54:30+08:00",
|
||||
"license_file": "eyJhbGdvcml0aG0iOiJSU0EtUFNTLVNIQTI1NiIsImRhdGEiOiJ7XCJhY3RpdmF0ZWRfYXRcIjpcIjIwMjUtMTEtMDFUMTc6NTQ6MjguMTI4MTc5NCswODowMFwiLFwiYXV0aG9yaXphdGlvbl9jb2RlXCI6XCJMSUMtQjU5Ny1FRnIwdGJmQW9vUUYtdVVBQVwiLFwiYXV0aG9yaXphdGlvbl9jb2RlX2lkXCI6XCI4ZjZlNzViMS0xMTViLTRhNWUtYjk1ZC0yNjczOTcwZDNmYmFcIixcImNvbmZpZ191cGRhdGVkX2F0XCI6bnVsbCxcImN1c3RvbV9wYXJhbWV0ZXJzXCI6e30sXCJkZXBsb3ltZW50X3R5cGVcIjpcInN0YW5kYWxvbmVcIixcImVuZF9kYXRlXCI6XCIzMDI1LTAzLTAzVDIzOjU5OjU5KzA4OjAwXCIsXCJmZWF0dXJlX2NvbmZpZ1wiOnt9LFwiZ2VuZXJhdGVkX2F0XCI6XCIyMDI1LTExLTAxVDE3OjU0OjMwKzA4OjAwXCIsXCJoYXJkd2FyZV9maW5nZXJwcmludFwiOlwiTUFDOjVlOmEzOjIyOjIyOmVmOmRiLENQVTpBTUQgUnl6ZW4gNSA5NjAwWCA2LUNvcmUgUHJvY2Vzc29yLEhPU1RJRDphMzJlOGViNC00ODg1LTRkMmItYTA3My0yYmM2NDVkZWU0ZTRcIixcImxpY2Vuc2Vfa2V5XCI6XCJMSUMtREVWSUNFLTY4REY4QUZFRjQxQ0EyNkYyNDhEN0Q1NVwiLFwibWF4X2FjdGl2YXRpb25zXCI6NSxcInN0YXJ0X2RhdGVcIjpcIjIwMjUtMTEtMDFUMDA6MDA6MDArMDg6MDBcIixcInN0YXR1c1wiOlwiYWN0aXZlXCIsXCJ1c2FnZV9saW1pdHNcIjp7fX0iLCJzaWduYXR1cmUiOiJoVEc2dUZ3UWtmRnNEam9sSVlFK3NOZ3JVM3hncDJPeHJOd3dSa2FLSmpGSjlLbXR2a1J1N2ZZWUVDUFozc0RLT094RlFYdmM4MktWd0dBcTREZ3A5TXBmajVLVlAwTnhjL0RBOCtKVm9oN1BXTERGZFhmMDd2bUdHZFF4YzBSRy91d2hWN3MyOUwzWW9WdlZGdnJxbUhuNGdBQ3B3eUVnL2Y3SC9HT0FCTTNGdWErekRkelR6QUNUbkdEdG1GbFAwUFZ1SURCRVlGRTRvZmRZZDBObDZMY1E5Z0wrb3pORHh0ZVNpdzNuZE0xelJiS3d4SUxOYVFKWnRaellVT1djem05RHg2bUNYMGlFeEtHTlA0NG9Pem5xNjRvclU5M2tGYzRLOW4wK2svL1JpblZMSWE1VE0vVUN2SmZPNzRkUmxGL2Nta3RRUFp6Tk5jbUJ4bWZoRXc9PSJ9"
|
||||
}
|
||||
@@ -1 +1 @@
|
||||
LIC-5359-QKHSAFPI-VWAA
|
||||
LIC-B597-EFr0tbfAooQF-uUAA
|
||||
@@ -1 +1 @@
|
||||
eyJhbGdvcml0aG0iOiJSU0EtUFNTLVNIQTI1NiIsImRhdGEiOiJ7XCJhY3RpdmF0ZWRfYXRcIjpcIjIwMjUtMTEtMDFUMTY6MTc6MDAuMjE2KzA4OjAwXCIsXCJhdXRob3JpemF0aW9uX2NvZGVcIjpcIkxJQy01MzU5LVFLSFNBRlBJLVZXQUFcIixcImF1dGhvcml6YXRpb25fY29kZV9pZFwiOlwiYmVmODliM2MtNDU1NS00ZjE5LTllMGUtMzM0MDI0MDNhZWFkXCIsXCJjb25maWdfdXBkYXRlZF9hdFwiOlwiMjAyNS0xMS0wMVQxNjoyNzoxOS43NzcrMDg6MDBcIixcImN1c3RvbV9wYXJhbWV0ZXJzXCI6e30sXCJkZXBsb3ltZW50X3R5cGVcIjpcInN0YW5kYWxvbmVcIixcImVuZF9kYXRlXCI6XCIyMDI1LTEyLTEzVDIzOjU5OjU5KzA4OjAwXCIsXCJmZWF0dXJlX2NvbmZpZ1wiOnt9LFwiZ2VuZXJhdGVkX2F0XCI6XCIyMDI1LTExLTAxVDE2OjMxOjU0KzA4OjAwXCIsXCJoYXJkd2FyZV9maW5nZXJwcmludFwiOlwiTUFDOjVlOmEzOjIyOjIyOmVmOmRiLENQVTpBTUQgUnl6ZW4gNSA5NjAwWCA2LUNvcmUgUHJvY2Vzc29yLEhPU1RJRDphMzJlOGViNC00ODg1LTRkMmItYTA3My0yYmM2NDVkZWU0ZTRcIixcImxpY2Vuc2Vfa2V5XCI6XCJMSUMtREVWSUNFLTcyOTIxRUIxODlFNTM4MDZCNTlGRjBBRVwiLFwibWF4X2FjdGl2YXRpb25zXCI6NSxcInN0YXJ0X2RhdGVcIjpcIjIwMjUtMTEtMDFUMDA6MDA6MDArMDg6MDBcIixcInN0YXR1c1wiOlwiYWN0aXZlXCIsXCJ1c2FnZV9saW1pdHNcIjp7fX0iLCJzaWduYXR1cmUiOiJFc1ZMQlNSWE1NN0NteTRDeW5EQ0ZGbkw0ZjByTGlpekk1SDZnQ1V5bDFTZGdHR0JZTzdHNStKdTE2T1Jkb0wxSkJRcW5zaHU5RXh1SDVuY1VXM2ZIZFlQTElQR1VBTVhqMGZwS2tPNENCTyt2VjdlSEI2ZDhUbUlkUnE2MU1vdisvM0k4c3Btb1JUNjljbEVuZWFHWE5LbnZOdm5BQXArVWhHamtWK1phZU8wRXlCM2xDcEJkdWJUWkFiUVFic0pSZHY2ZUszSUFGUkdJVnYzWkJhOCtuMnRWQ3RPRXVhVmF1ZHNhRW5ucTZIQWdXdmdUSzViQ2dHZFJkWUJjdG9vVEpiYWtacE9nSWQvVGRmbThGN0krWENsbVl5bWdmYVdUcldKMXd0SzVpSndtV003bTFyTytvZVB3NjBMNjd4ejVmTzRaZjFPUVF2MVNxekhBV25SVFE9PSJ9
|
||||
eyJhbGdvcml0aG0iOiJSU0EtUFNTLVNIQTI1NiIsImRhdGEiOiJ7XCJhY3RpdmF0ZWRfYXRcIjpcIjIwMjUtMTEtMDFUMTc6NTQ6MjguMTI4MTc5NCswODowMFwiLFwiYXV0aG9yaXphdGlvbl9jb2RlXCI6XCJMSUMtQjU5Ny1FRnIwdGJmQW9vUUYtdVVBQVwiLFwiYXV0aG9yaXphdGlvbl9jb2RlX2lkXCI6XCI4ZjZlNzViMS0xMTViLTRhNWUtYjk1ZC0yNjczOTcwZDNmYmFcIixcImNvbmZpZ191cGRhdGVkX2F0XCI6bnVsbCxcImN1c3RvbV9wYXJhbWV0ZXJzXCI6e30sXCJkZXBsb3ltZW50X3R5cGVcIjpcInN0YW5kYWxvbmVcIixcImVuZF9kYXRlXCI6XCIzMDI1LTAzLTAzVDIzOjU5OjU5KzA4OjAwXCIsXCJmZWF0dXJlX2NvbmZpZ1wiOnt9LFwiZ2VuZXJhdGVkX2F0XCI6XCIyMDI1LTExLTAxVDE3OjU0OjMwKzA4OjAwXCIsXCJoYXJkd2FyZV9maW5nZXJwcmludFwiOlwiTUFDOjVlOmEzOjIyOjIyOmVmOmRiLENQVTpBTUQgUnl6ZW4gNSA5NjAwWCA2LUNvcmUgUHJvY2Vzc29yLEhPU1RJRDphMzJlOGViNC00ODg1LTRkMmItYTA3My0yYmM2NDVkZWU0ZTRcIixcImxpY2Vuc2Vfa2V5XCI6XCJMSUMtREVWSUNFLTY4REY4QUZFRjQxQ0EyNkYyNDhEN0Q1NVwiLFwibWF4X2FjdGl2YXRpb25zXCI6NSxcInN0YXJ0X2RhdGVcIjpcIjIwMjUtMTEtMDFUMDA6MDA6MDArMDg6MDBcIixcInN0YXR1c1wiOlwiYWN0aXZlXCIsXCJ1c2FnZV9saW1pdHNcIjp7fX0iLCJzaWduYXR1cmUiOiJoVEc2dUZ3UWtmRnNEam9sSVlFK3NOZ3JVM3hncDJPeHJOd3dSa2FLSmpGSjlLbXR2a1J1N2ZZWUVDUFozc0RLT094RlFYdmM4MktWd0dBcTREZ3A5TXBmajVLVlAwTnhjL0RBOCtKVm9oN1BXTERGZFhmMDd2bUdHZFF4YzBSRy91d2hWN3MyOUwzWW9WdlZGdnJxbUhuNGdBQ3B3eUVnL2Y3SC9HT0FCTTNGdWErekRkelR6QUNUbkdEdG1GbFAwUFZ1SURCRVlGRTRvZmRZZDBObDZMY1E5Z0wrb3pORHh0ZVNpdzNuZE0xelJiS3d4SUxOYVFKWnRaellVT1djem05RHg2bUNYMGlFeEtHTlA0NG9Pem5xNjRvclU5M2tGYzRLOW4wK2svL1JpblZMSWE1VE0vVUN2SmZPNzRkUmxGL2Nta3RRUFp6Tk5jbUJ4bWZoRXc9PSJ9
|
||||
@@ -22,6 +22,7 @@ errors:
|
||||
"200004": "Invalid customer information format"
|
||||
"200005": "Failed to query customer list"
|
||||
"200006": "Customer has authorization codes, cannot delete. Please delete authorizations first"
|
||||
"200007": "Customer is disabled, cannot create authorization"
|
||||
|
||||
# Authorization module (30xxxx)
|
||||
authorization:
|
||||
|
||||
@@ -22,6 +22,7 @@ errors:
|
||||
"200004": "無効な顧客情報形式"
|
||||
"200005": "顧客リストの照会に失敗しました"
|
||||
"200006": "顧客にまだ認可コードが存在します。削除する前に認可を削除してください"
|
||||
"200007": "顧客が無効になっています。認可を作成できません"
|
||||
|
||||
# 認可モジュール (30xxxx)
|
||||
authorization:
|
||||
|
||||
@@ -22,6 +22,7 @@ errors:
|
||||
"200004": "客户信息格式无效"
|
||||
"200005": "客户列表查询失败"
|
||||
"200006": "客户仍有授权,无法删除,请先删除授权"
|
||||
"200007": "客户已停用,无法创建授权"
|
||||
|
||||
# 授权模块 (30xxxx)
|
||||
authorization:
|
||||
|
||||
@@ -44,13 +44,18 @@ func (s *authorizationCodeService) CreateAuthorizationCode(ctx context.Context,
|
||||
return nil, i18n.NewI18nError("900001", lang)
|
||||
}
|
||||
|
||||
// 验证客户是否存在
|
||||
exists, err := s.authCodeRepo.CheckCustomerExists(ctx, req.CustomerID)
|
||||
// 验证客户是否存在并检查状态
|
||||
customer, err := s.customerRepo.GetCustomerByID(ctx, req.CustomerID)
|
||||
if err != nil {
|
||||
if errors.Is(err, repository.ErrCustomerNotFound) {
|
||||
return nil, i18n.NewI18nError("200001", lang) // 客户不存在
|
||||
}
|
||||
return nil, i18n.NewI18nError("900004", lang, err.Error())
|
||||
}
|
||||
if !exists {
|
||||
return nil, i18n.NewI18nError("200001", lang) // 客户不存在
|
||||
|
||||
// 检查客户状态:如果客户状态为停用(disabled),不允许创建授权
|
||||
if customer.Status == "disabled" {
|
||||
return nil, i18n.NewI18nError("200007", lang) // 客户已停用,无法创建授权
|
||||
}
|
||||
|
||||
// 业务逻辑:计算开始时间和结束时间
|
||||
|
||||
Reference in new issue
Block a user