fix: gen enum sql.Value issue
This commit is contained in:
@@ -189,14 +189,18 @@ func (x *{{.enum.Name}}) Scan(value interface{}) (err error) {
|
|||||||
}
|
}
|
||||||
}{{end}}
|
}{{end}}
|
||||||
}
|
}
|
||||||
|
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
{{ if or .sql .sqlnullstr }}
|
{{ if or .sql .sqlnullstr }}
|
||||||
// Value implements the driver Valuer interface.
|
// Value implements the driver Valuer interface.
|
||||||
func (x {{.enum.Name}}) Value() (driver.Value, error) {
|
func (x {{.enum.Name}}) Value() (driver.Value, error) {
|
||||||
|
{{- if eq .enum.Type "int" "int8" "int16" "int32" "int64" "uint" "uint8" "uint16" "uint32" "uint64" }}
|
||||||
|
return int64(x), nil
|
||||||
|
{{- else }}
|
||||||
return {{.enum.Type }}(x), nil
|
return {{.enum.Type }}(x), nil
|
||||||
|
{{- end }}
|
||||||
}
|
}
|
||||||
{{ else }}
|
{{ else }}
|
||||||
// Value implements the driver Valuer interface.
|
// Value implements the driver Valuer interface.
|
||||||
|
|||||||
24
templates/project/app/grpc/users/handler.go.tpl
Normal file
24
templates/project/app/grpc/users/handler.go.tpl
Normal file
@@ -0,0 +1,24 @@
|
|||||||
|
package users
|
||||||
|
|
||||||
|
import (
|
||||||
|
"context"
|
||||||
|
|
||||||
|
userv1 "{{.ModuleName}}/pkg/proto/user/v1"
|
||||||
|
)
|
||||||
|
|
||||||
|
// @provider(grpc) userv1.RegisterUserServiceServer
|
||||||
|
type Users struct{}
|
||||||
|
|
||||||
|
func (u *Users) ListUsers(ctx context.Context, in *userv1.ListUsersRequest) (*userv1.ListUsersResponse, error) {
|
||||||
|
// userv1.UserServiceServer
|
||||||
|
return &userv1.ListUsersResponse{}, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
// GetUser implements userv1.UserServiceServer
|
||||||
|
func (u *Users) GetUser(ctx context.Context, in *userv1.GetUserRequest) (*userv1.GetUserResponse, error) {
|
||||||
|
return &userv1.GetUserResponse{
|
||||||
|
User: &userv1.User{
|
||||||
|
Id: in.Id,
|
||||||
|
},
|
||||||
|
}, nil
|
||||||
|
}
|
||||||
@@ -9,6 +9,7 @@ import (
|
|||||||
"{{.ModuleName}}/providers/hashids"
|
"{{.ModuleName}}/providers/hashids"
|
||||||
"{{.ModuleName}}/providers/http"
|
"{{.ModuleName}}/providers/http"
|
||||||
"{{.ModuleName}}/providers/http/swagger"
|
"{{.ModuleName}}/providers/http/swagger"
|
||||||
|
"{{.ModuleName}}/providers/job"
|
||||||
"{{.ModuleName}}/providers/jwt"
|
"{{.ModuleName}}/providers/jwt"
|
||||||
"{{.ModuleName}}/providers/postgres"
|
"{{.ModuleName}}/providers/postgres"
|
||||||
|
|
||||||
|
|||||||
40
templates/project/proto/user/v1/user.proto.raw
Normal file
40
templates/project/proto/user/v1/user.proto.raw
Normal file
@@ -0,0 +1,40 @@
|
|||||||
|
syntax = "proto3";
|
||||||
|
|
||||||
|
package user.v1;
|
||||||
|
|
||||||
|
// User represents a user entity
|
||||||
|
message User {
|
||||||
|
int64 id = 1;
|
||||||
|
string username = 2;
|
||||||
|
string email = 3;
|
||||||
|
string phone = 4;
|
||||||
|
string create_time = 5;
|
||||||
|
string update_time = 6;
|
||||||
|
}
|
||||||
|
|
||||||
|
message ListUsersRequest {
|
||||||
|
int32 page_size = 1;
|
||||||
|
int32 page_number = 2;
|
||||||
|
}
|
||||||
|
|
||||||
|
message ListUsersResponse {
|
||||||
|
repeated User users = 1;
|
||||||
|
int32 total = 2;
|
||||||
|
}
|
||||||
|
|
||||||
|
message GetUserRequest {
|
||||||
|
int64 id = 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
message GetUserResponse {
|
||||||
|
User user = 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
// UserService provides user-related operations
|
||||||
|
service UserService {
|
||||||
|
// ListUsers returns a list of users with pagination
|
||||||
|
rpc ListUsers(ListUsersRequest) returns (ListUsersResponse) {}
|
||||||
|
|
||||||
|
// GetUser returns detailed information about a specific user
|
||||||
|
rpc GetUser(GetUserRequest) returns (GetUserResponse) {}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user