- Backend: Go 1.26 + Chi router + pgx v5 (no ORM, hand-written SQL) - Database: PostgreSQL with 5 tables (users, products, orders, order_items, payments) - Frontend admin: Vue 3 + Vite + Element Plus - Docker Compose for PostgreSQL + pgAdmin - Includes SQL learning docs and seed data - Endpoints: products CRUD, orders CRUD, reports (daily sales, top products, customer spending) - New: GET /api/orders/by-date for date-range order query
11 lines
412 B
SQL
11 lines
412 B
SQL
CREATE TABLE IF NOT EXISTS payments (
|
|
id BIGSERIAL PRIMARY KEY,
|
|
order_id BIGINT NOT NULL REFERENCES orders(id),
|
|
amount NUMERIC(12,2) NOT NULL,
|
|
method VARCHAR(20) NOT NULL DEFAULT 'wechat',
|
|
status VARCHAR(20) NOT NULL DEFAULT 'pending',
|
|
created_at TIMESTAMP NOT NULL DEFAULT NOW()
|
|
);
|
|
|
|
CREATE INDEX idx_payments_order_id ON payments(order_id);
|