info vendedor + direccion del producto

This commit is contained in:
2025-07-14 10:11:06 -04:00
parent 3a0b29d3c1
commit f4e9379c34
12 changed files with 3126 additions and 25 deletions

View File

@@ -34,8 +34,9 @@ export default async function SurveyResponsePage({
const product = data.data
const lorem = "Lorem ipsum dolor sit amet, consectetur adipisicing elit. Dolore placeat est corporis minus exercitationem impedit ab architecto dolorum nihil nam facilis suscipit porro, iure et quidem illo mollitia officia amet?"
// console.log(data.data);
return (
// <PageContainer>
@@ -52,19 +53,27 @@ export default async function SurveyResponsePage({
</CardTitle>
<p className='font-semibold'>$ {product.price}</p>
</CardHeader>
<CardContent className="flex-grow">
<p className='font-semibold text-lg border-t border-b'> Descripción</p>
<p className='p-1'>{product.description}</p>
<CardContent className="flex-grow flex justify-between flex-col gap-4">
<div>
<p className='font-semibold text-lg border-t border-b'> Descripción</p>
<p className='p-1'>{product.description}</p>
{/* <p className='p-1'>{lorem+lorem+lorem+lorem}</p> */}
</div>
<div>
<p className='font-semibold text-lg border-t border-b'> Dirección</p>
<p>{product.address}</p>
</div>
</CardContent>
<CardFooter className="">
<div>
<p className='font-semibold text-lg border-t border-b mt-4'>Información del vendedor</p>
<p>{product.fullname}</p>
<p>Correo@gmail.com</p>
<p>0412-7848101</p>
<p>{product.phone}</p>
<p>{product.email}</p>
</div>
{/* <p className="font-semibold text-lg">$ {product.price}</p> */}
</CardFooter>
</Card>
</main>

View File

@@ -6,18 +6,25 @@ export type InventoryTable = z.infer<typeof product>;
export type EditInventory = z.infer<typeof editInventory>; //output
export type formDataInput = z.input<typeof editInventory>;
export type ProductApiResponseSchema = z.infer<typeof productApiResponseSchema>;
export type allProducts = z.infer<typeof allProducts>;
export type allProducts = z.infer<typeof productDetails>;
export const product = z.object({
id: z.number().optional(),
title: z.string(),
description: z.string(),
address: z.string(),
// category: z.string(),
stock: z.number(),
price: z.string(),
urlImg: z.string(),
userId: z.number().optional()
});
})
export const productDetails = product.extend({
fullname: z.string(),
phone: z.string().nullable(),
email: z.string().email().nullable()
})
export const editInventory = z.object({
id: z.number().optional(),
@@ -31,16 +38,16 @@ export const editInventory = z.object({
userId: z.number().optional(),
})
export const allProducts = z.object({
id: z.number().optional(),
title: z.string().min(5, { message: "Debe de tener 5 o más caracteres" }),
description: z.string().min(10, { message: "Debe de tener 10 o más caracteres" }),
stock: z.number(),
price: z.string(),
urlImg: z.string(),
userId: z.number(),
fullname: z.string()
})
// export const productDetails = z.object({
// id: z.number().optional(),
// title: z.string().min(5),
// description: z.string().min(10),
// stock: z.number(),
// price: z.string(),
// address: z.string(),
// urlImg: z.string(),
// userId: z.number(),
// })
export const ApiResponseSchema = z.object({
message: z.string(),
@@ -59,7 +66,7 @@ export const ApiResponseSchema = z.object({
export const productApiResponseSchema = z.object({
message: z.string(),
data: z.array(allProducts),
data: z.array(productDetails),
meta: z.object({
page: z.number(),
limit: z.number(),
@@ -79,5 +86,5 @@ export const productMutate = z.object({
export const getProduct = z.object({
message: z.string(),
data: allProducts,
data: productDetails,
})