feat(user): implement OTP login, user creation, and profile management
- Added SendOTP method for simulating OTP sending. - Implemented LoginWithOTP method for user login/registration via OTP, including user creation if not found. - Added Me method to retrieve current user information. - Implemented Update method for updating user profile details. - Added RealName method for real-name verification. - Implemented GetNotifications method to fetch user notifications. - Created user_test.go for comprehensive unit tests covering login, profile retrieval, updates, real-name verification, and notifications. - Updated database models to use appropriate consts for fields like gender, status, and roles.
This commit is contained in:
@@ -30,7 +30,7 @@ func newTenant(db *gorm.DB, opts ...gen.DOOption) tenantQuery {
|
||||
_tenantQuery.Code = field.NewString(tableName, "code")
|
||||
_tenantQuery.UUID = field.NewField(tableName, "uuid")
|
||||
_tenantQuery.Name = field.NewString(tableName, "name")
|
||||
_tenantQuery.Status = field.NewString(tableName, "status")
|
||||
_tenantQuery.Status = field.NewField(tableName, "status")
|
||||
_tenantQuery.Config = field.NewJSONB(tableName, "config")
|
||||
_tenantQuery.ExpiredAt = field.NewTime(tableName, "expired_at")
|
||||
_tenantQuery.CreatedAt = field.NewTime(tableName, "created_at")
|
||||
@@ -50,7 +50,7 @@ type tenantQuery struct {
|
||||
Code field.String
|
||||
UUID field.Field
|
||||
Name field.String
|
||||
Status field.String
|
||||
Status field.Field
|
||||
Config field.JSONB
|
||||
ExpiredAt field.Time
|
||||
CreatedAt field.Time
|
||||
@@ -76,7 +76,7 @@ func (t *tenantQuery) updateTableName(table string) *tenantQuery {
|
||||
t.Code = field.NewString(table, "code")
|
||||
t.UUID = field.NewField(table, "uuid")
|
||||
t.Name = field.NewString(table, "name")
|
||||
t.Status = field.NewString(table, "status")
|
||||
t.Status = field.NewField(table, "status")
|
||||
t.Config = field.NewJSONB(table, "config")
|
||||
t.ExpiredAt = field.NewTime(table, "expired_at")
|
||||
t.CreatedAt = field.NewTime(table, "created_at")
|
||||
|
||||
Reference in New Issue
Block a user