Compare commits
6 Commits
d82afe5a5f
...
develop/fr
Author | SHA1 | Date | |
---|---|---|---|
![]() |
c1b71fca64 | ||
![]() |
08642a2bf6 | ||
![]() |
043d45862c | ||
![]() |
8444b947a4 | ||
![]() |
e791b01160 | ||
![]() |
8383be13bc |
@@ -1146,46 +1146,47 @@ model EventReview {
|
|||||||
|
|
||||||
// NOTE: need to consider with Event
|
// NOTE: need to consider with Event
|
||||||
// mapped to IEventItem
|
// mapped to IEventItem
|
||||||
|
// a.k.a. PartyEvent party-event
|
||||||
model EventItem {
|
model EventItem {
|
||||||
id String @id @default(uuid())
|
id String @id @default(uuid())
|
||||||
createdAt DateTime @default(now())
|
createdAt DateTime @default(now())
|
||||||
updatedAt DateTime @updatedAt
|
updatedAt DateTime @updatedAt
|
||||||
//
|
//
|
||||||
sku String
|
|
||||||
name String
|
|
||||||
code String
|
|
||||||
price Float
|
|
||||||
taxes Float
|
|
||||||
tags String[]
|
|
||||||
sizes String[]
|
|
||||||
publish String
|
|
||||||
gender String[]
|
|
||||||
coverUrl String
|
|
||||||
images String[]
|
|
||||||
colors String[]
|
|
||||||
quantity Int
|
|
||||||
category String
|
|
||||||
available Int
|
available Int
|
||||||
totalSold Int
|
category String
|
||||||
|
code String
|
||||||
|
colors String[]
|
||||||
|
coverUrl String
|
||||||
description String
|
description String
|
||||||
|
gender String[]
|
||||||
|
images String[]
|
||||||
|
inventoryType String
|
||||||
|
name String
|
||||||
|
newLabel Json
|
||||||
|
price Float
|
||||||
|
priceSale Float?
|
||||||
|
publish String
|
||||||
|
quantity Int
|
||||||
|
ratings Json[]
|
||||||
|
saleLabel Json
|
||||||
|
sizes String[]
|
||||||
|
sku String
|
||||||
|
subDescription String
|
||||||
|
tags String[]
|
||||||
|
taxes Float
|
||||||
totalRatings Float
|
totalRatings Float
|
||||||
totalReviews Int
|
totalReviews Int
|
||||||
inventoryType String
|
totalSold Int
|
||||||
subDescription String
|
|
||||||
priceSale Float?
|
|
||||||
newLabel Json
|
|
||||||
saleLabel Json
|
|
||||||
ratings Json[]
|
|
||||||
//
|
//
|
||||||
eventDate DateTime @default(now())
|
|
||||||
joinMembers Json[]
|
|
||||||
title String
|
|
||||||
currency String
|
|
||||||
duration_m Float
|
|
||||||
ageBottom Float
|
ageBottom Float
|
||||||
ageTop Float
|
ageTop Float
|
||||||
location String
|
|
||||||
avatar String[]
|
avatar String[]
|
||||||
|
currency String
|
||||||
|
duration_m Float
|
||||||
|
eventDate DateTime @default(now())
|
||||||
|
joinMembers Json[]
|
||||||
|
location String
|
||||||
|
title String
|
||||||
//
|
//
|
||||||
reviews EventReview[]
|
reviews EventReview[]
|
||||||
}
|
}
|
||||||
|
@@ -0,0 +1,16 @@
|
|||||||
|
import type { NextRequest, NextResponse } from 'next/server';
|
||||||
|
|
||||||
|
import { STATUS, response, handleError } from 'src/utils/response';
|
||||||
|
|
||||||
|
/**
|
||||||
|
***************************************
|
||||||
|
* GET - helloworld
|
||||||
|
***************************************
|
||||||
|
*/
|
||||||
|
export async function GET(req: NextRequest, res: NextResponse) {
|
||||||
|
try {
|
||||||
|
return response({ helloworld: 'product' }, STATUS.OK);
|
||||||
|
} catch (error) {
|
||||||
|
return handleError('Helloworld - Get all', error);
|
||||||
|
}
|
||||||
|
}
|
@@ -0,0 +1,4 @@
|
|||||||
|
###
|
||||||
|
GET /api/product/helloworld HTTP/1.1
|
||||||
|
Host: localhost:7272
|
||||||
|
|
@@ -1,30 +0,0 @@
|
|||||||
// src/app/api/product/image/upload/route.ts
|
|
||||||
//
|
|
||||||
// PURPOSE:
|
|
||||||
// handle upload product image
|
|
||||||
//
|
|
||||||
// RULES:
|
|
||||||
// T.B.A.
|
|
||||||
|
|
||||||
import type { NextRequest } from 'next/server';
|
|
||||||
|
|
||||||
import { STATUS, response, handleError } from 'src/utils/response';
|
|
||||||
|
|
||||||
// import prisma from '../../../lib/prisma';
|
|
||||||
|
|
||||||
// ----------------------------------------------------------------------
|
|
||||||
|
|
||||||
/** **************************************
|
|
||||||
* GET - Products
|
|
||||||
*************************************** */
|
|
||||||
export async function POST(req: NextRequest) {
|
|
||||||
try {
|
|
||||||
const { data } = await req.json();
|
|
||||||
console.log('helloworld');
|
|
||||||
|
|
||||||
return response({ hello: 'world' }, STATUS.OK);
|
|
||||||
} catch (error) {
|
|
||||||
console.log({ hello: 'world' });
|
|
||||||
return handleError('Product - store product image', error);
|
|
||||||
}
|
|
||||||
}
|
|
@@ -21,11 +21,11 @@ export async function GET(req: NextRequest) {
|
|||||||
return response({ results: [] }, STATUS.OK);
|
return response({ results: [] }, STATUS.OK);
|
||||||
}
|
}
|
||||||
|
|
||||||
const testResult = await getProductBySkuOrName(query);
|
const results = await getProductBySkuOrName(query);
|
||||||
|
|
||||||
logger('[Product] search-results', testResult?.length);
|
logger('[Product] search-results', results?.length);
|
||||||
|
|
||||||
return response({ testResult }, STATUS.OK);
|
return response({ results }, STATUS.OK);
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
return handleError('Product - Get search', error);
|
return handleError('Product - Get search', error);
|
||||||
}
|
}
|
||||||
|
@@ -3,3 +3,6 @@ GET http://localhost:7272/api/product/search?query=B
|
|||||||
|
|
||||||
###
|
###
|
||||||
GET http://localhost:7272/api/product/search?query=Classic
|
GET http://localhost:7272/api/product/search?query=Classic
|
||||||
|
|
||||||
|
###
|
||||||
|
GET http://localhost:7272/api/product/search?query=zzzzzz
|
||||||
|
@@ -99,7 +99,9 @@ export async function createProduct(productData: IProductItem) {
|
|||||||
* Work on server
|
* Work on server
|
||||||
*/
|
*/
|
||||||
const data = { productData };
|
const data = { productData };
|
||||||
await axiosInstance.post(endpoints.product.create, data);
|
const {
|
||||||
|
data: { id },
|
||||||
|
} = await axiosInstance.post(endpoints.product.create, data);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Work in local
|
* Work in local
|
||||||
@@ -109,7 +111,7 @@ export async function createProduct(productData: IProductItem) {
|
|||||||
(currentData: any) => {
|
(currentData: any) => {
|
||||||
const currentProducts: IProductItem[] = currentData?.products;
|
const currentProducts: IProductItem[] = currentData?.products;
|
||||||
|
|
||||||
const products = [...currentProducts, productData];
|
const products = [...currentProducts, { ...productData, id }];
|
||||||
|
|
||||||
return { ...currentData, products };
|
return { ...currentData, products };
|
||||||
},
|
},
|
||||||
|
@@ -0,0 +1 @@
|
|||||||
|
T.B.A.
|
||||||
|
@@ -1,6 +1,6 @@
|
|||||||
```markdown
|
|
||||||
# Greetings
|
# Greetings
|
||||||
|
|
||||||
|
```markdown
|
||||||
Hi,
|
Hi,
|
||||||
|
|
||||||
Imagine you are a software engineer and i will send you the guideline.
|
Imagine you are a software engineer and i will send you the guideline.
|
||||||
|
@@ -25,7 +25,7 @@ T.B.A.
|
|||||||
1 AI tools/co-pilot
|
1 AI tools/co-pilot
|
||||||
|
|
||||||
```prompt
|
```prompt
|
||||||
please read and follow steps in the markdown files in `98_AI_workspace` folder thanks.
|
please read and follow steps in the markdown files in `98_AI_workspace/software-engineer` folder thanks.
|
||||||
```
|
```
|
||||||
|
|
||||||
<!-- AI: please fill the step to setup project below -->
|
<!-- AI: please fill the step to setup project below -->
|
||||||
|
Reference in New Issue
Block a user