Add gRPC server implementation and database integration for marketplace and products
This commit is contained in:
32
internal/marketplace/db/db.go
Normal file
32
internal/marketplace/db/db.go
Normal file
@@ -0,0 +1,32 @@
|
||||
// Code generated by sqlc. DO NOT EDIT.
|
||||
// versions:
|
||||
// sqlc v1.28.0
|
||||
|
||||
package db
|
||||
|
||||
import (
|
||||
"context"
|
||||
|
||||
"github.com/jackc/pgx/v5"
|
||||
"github.com/jackc/pgx/v5/pgconn"
|
||||
)
|
||||
|
||||
type DBTX interface {
|
||||
Exec(context.Context, string, ...interface{}) (pgconn.CommandTag, error)
|
||||
Query(context.Context, string, ...interface{}) (pgx.Rows, error)
|
||||
QueryRow(context.Context, string, ...interface{}) pgx.Row
|
||||
}
|
||||
|
||||
func New(db DBTX) *Queries {
|
||||
return &Queries{db: db}
|
||||
}
|
||||
|
||||
type Queries struct {
|
||||
db DBTX
|
||||
}
|
||||
|
||||
func (q *Queries) WithTx(tx pgx.Tx) *Queries {
|
||||
return &Queries{
|
||||
db: tx,
|
||||
}
|
||||
}
|
||||
17
internal/marketplace/db/models.go
Normal file
17
internal/marketplace/db/models.go
Normal file
@@ -0,0 +1,17 @@
|
||||
// Code generated by sqlc. DO NOT EDIT.
|
||||
// versions:
|
||||
// sqlc v1.28.0
|
||||
|
||||
package db
|
||||
|
||||
import (
|
||||
"github.com/jackc/pgx/v5/pgtype"
|
||||
)
|
||||
|
||||
type Marketplace struct {
|
||||
ID int32
|
||||
BaseMarketplace int32
|
||||
Name string
|
||||
AuthData pgtype.Text
|
||||
WarehouseID pgtype.Text
|
||||
}
|
||||
3
internal/marketplace/db/query.sql
Normal file
3
internal/marketplace/db/query.sql
Normal file
@@ -0,0 +1,3 @@
|
||||
-- name: GetMarketplaceByID :one
|
||||
SELECT * FROM marketplaces
|
||||
WHERE id = $1 LIMIT 1;
|
||||
28
internal/marketplace/db/query.sql.go
Normal file
28
internal/marketplace/db/query.sql.go
Normal file
@@ -0,0 +1,28 @@
|
||||
// Code generated by sqlc. DO NOT EDIT.
|
||||
// versions:
|
||||
// sqlc v1.28.0
|
||||
// source: query.sql
|
||||
|
||||
package db
|
||||
|
||||
import (
|
||||
"context"
|
||||
)
|
||||
|
||||
const getMarketplaceByID = `-- name: GetMarketplaceByID :one
|
||||
SELECT id, base_marketplace, name, auth_data, warehouse_id FROM marketplaces
|
||||
WHERE id = $1 LIMIT 1
|
||||
`
|
||||
|
||||
func (q *Queries) GetMarketplaceByID(ctx context.Context, id int32) (Marketplace, error) {
|
||||
row := q.db.QueryRow(ctx, getMarketplaceByID, id)
|
||||
var i Marketplace
|
||||
err := row.Scan(
|
||||
&i.ID,
|
||||
&i.BaseMarketplace,
|
||||
&i.Name,
|
||||
&i.AuthData,
|
||||
&i.WarehouseID,
|
||||
)
|
||||
return i, err
|
||||
}
|
||||
9
internal/marketplace/db/schema.sql
Normal file
9
internal/marketplace/db/schema.sql
Normal file
@@ -0,0 +1,9 @@
|
||||
create table marketplaces
|
||||
(
|
||||
id serial
|
||||
primary key,
|
||||
base_marketplace integer not null,
|
||||
name varchar not null,
|
||||
auth_data varchar,
|
||||
warehouse_id varchar
|
||||
);
|
||||
10
internal/marketplace/db/sqlc.yaml
Normal file
10
internal/marketplace/db/sqlc.yaml
Normal file
@@ -0,0 +1,10 @@
|
||||
version: 2
|
||||
sql:
|
||||
- engine: "postgresql"
|
||||
queries: "query.sql"
|
||||
schema: "schema.sql"
|
||||
gen:
|
||||
go:
|
||||
package: "db"
|
||||
out: "."
|
||||
sql_package: "pgx/v5"
|
||||
Reference in New Issue
Block a user