Add gRPC server implementation and database integration for marketplace and products

This commit is contained in:
2025-05-27 03:41:52 +03:00
parent 008f3df42d
commit b083cccc09
44 changed files with 2182 additions and 1201 deletions

View 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,
}
}

View 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
}

View File

@@ -0,0 +1,3 @@
-- name: GetMarketplaceByID :one
SELECT * FROM marketplaces
WHERE id = $1 LIMIT 1;

View 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
}

View 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
);

View 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"