From 7e485220fa94e26782135cfe0c9b91591b3bed3f Mon Sep 17 00:00:00 2001 From: weiyida <2465069308@qq.com> Date: Sun, 23 Feb 2025 20:32:01 +0800 Subject: [PATCH] 02232031 --- .../src/models/message/message.module.ts | 10 +- apps/server/src/trpc/trpc.module.ts | 2 + apps/web/src/app/main/home/page.tsx | 115 ++++++++++++------ apps/web/src/app/main/home/personcard.tsx | 34 ++++++ packages/common/prisma/schema.prisma | 41 +++++++ 5 files changed, 157 insertions(+), 45 deletions(-) create mode 100644 apps/web/src/app/main/home/personcard.tsx diff --git a/apps/server/src/models/message/message.module.ts b/apps/server/src/models/message/message.module.ts index ce83a6e..50a7234 100755 --- a/apps/server/src/models/message/message.module.ts +++ b/apps/server/src/models/message/message.module.ts @@ -6,9 +6,9 @@ import { DepartmentModule } from '../department/department.module'; import { MessageController } from './message.controller'; @Module({ - imports: [DepartmentModule], - providers: [MessageService, MessageRouter, TrpcService], - exports: [MessageService, MessageRouter], - controllers: [MessageController], + imports: [DepartmentModule], // 导入其他模块 + providers: [MessageService, MessageRouter, TrpcService], // 注册服务器,可以被自己使用 + exports: [MessageService, MessageRouter], // 导出服务器 + controllers: [MessageController], // 注册控制器 }) -export class MessageModule { } +export class MessageModule {} diff --git a/apps/server/src/trpc/trpc.module.ts b/apps/server/src/trpc/trpc.module.ts index 222c9c9..2f7f3a5 100755 --- a/apps/server/src/trpc/trpc.module.ts +++ b/apps/server/src/trpc/trpc.module.ts @@ -16,6 +16,7 @@ import { RoleMapModule } from '@server/models/rbac/rbac.module'; import { TransformModule } from '@server/models/transform/transform.module'; import { ResourceModule } from '@server/models/resource/resource.module'; +import { GoodsModule } from '@server/models/goods/goods.module'; @Module({ imports: [ @@ -33,6 +34,7 @@ import { ResourceModule } from '@server/models/resource/resource.module'; VisitModule, WebSocketModule, ResourceModule, + GoodsModule, ], controllers: [], providers: [TrpcService, TrpcRouter, Logger], diff --git a/apps/web/src/app/main/home/page.tsx b/apps/web/src/app/main/home/page.tsx index 199e3d5..5d71745 100755 --- a/apps/web/src/app/main/home/page.tsx +++ b/apps/web/src/app/main/home/page.tsx @@ -1,45 +1,80 @@ -import { api, useStaff } from "@nice/client" -import { useAuth } from "@web/src/providers/auth-provider"; -import { Button, Tag } from "antd"; -import { useEffect, useMemo, useState } from "react"; -function HomePage(){ - const {data} = api.staff.findMany.useQuery({ - take: 10 - }) - const {user,}=useAuth() -const {update,create}=useStaff() - const [counter, setCounter] = useState(0) - const counterText=useMemo(()=>{ - return `当前计数为:${counter}` - },[counter]) - // const test=async ()=>{ +// import { api, useStaff } from "@nice/client" +// //import { useAuth } from "@web/src/providers/auth-provider"; +// import { Button, Tag } from "antd"; +// import { useEffect, useMemo, useState } from "react"; +// import PersonCard from './personcard'; + +// function HomePage(){ +// // function HomePage(){ +// // const {data} = api.staff.findMany.useQuery({ +// // take: 5 +// // }) +// // //const {user,}=useAuth() +// // //const {update,create}=useStaff() +// // const [counter, setCounter] = useState(0) +// // const counterText=useMemo(()=>{ +// // return `当前计数为:${counter}` +// // },[counter]) +// // const test=async ()=>{ - // await update.mutateAsync({ - // where: { - // username: user?.username - // }, - // data: { - // username: "test" - // } - // }) - // } - useEffect(()=>{ - console.log(data) - },[data]) +// // await update.mutateAsync({ +// // where: { +// // username: user?.username +// // }, +// // data: { +// // username: "test" +// // } +// // }) +// // } +// // useEffect(()=>{ +// // console.log(data) +// // },[data]) +// return ( +//
+//

主页

+// {/* 调用 PersonCard 组件 */} +// +//
+// ); +// }; - return
- 当前计数为:{counter} -
- - -
- { - data?.map(i=>{ - return
i.username
+ +// // return
+// // 当前计数为:{counter} +// //
+// // +// // +// //
+ + + +// export default HomePage; +// // export {HomePage};//main-route那里也需要加括号 + +import React, { useEffect } from 'react'; +import { api } from "@nice/client" + +function PersonCard(){ + const {data} = api.staff.findMany.useQuery({ + take: 15 }) - } -
+ useEffect(()=>{ + console.log(data) + },[data]) + + + return ( +
+ {data?.map((i, index) => ( +
+
+

{i.username}

+
+
+ ))} +
+ ); } -export default HomePage; -// export {HomePage};//main-route那里也需要加括号 \ No newline at end of file + +export default PersonCard; \ No newline at end of file diff --git a/apps/web/src/app/main/home/personcard.tsx b/apps/web/src/app/main/home/personcard.tsx new file mode 100644 index 0000000..cc211ad --- /dev/null +++ b/apps/web/src/app/main/home/personcard.tsx @@ -0,0 +1,34 @@ +import React, { useEffect } from 'react'; +import { api } from "@nice/client" +import { apiClient } from '@web/src/utils'; + +function PersonCard(){ + const {data} = api.staff.findMany.useQuery({ + take: 10 + }) + + useEffect(()=>{ + + console.log(data) + },[data]) + + const getdata=async ()=>{ + const res=await apiClient.get("/goods/hello") + console.log(res) + } + + + return ( +
+ {data?.map((i, index) => ( +
+
+

{i.username}

+
+
+ ))} +
+ ); +} + +export default PersonCard; \ No newline at end of file diff --git a/packages/common/prisma/schema.prisma b/packages/common/prisma/schema.prisma index 4780725..474035c 100755 --- a/packages/common/prisma/schema.prisma +++ b/packages/common/prisma/schema.prisma @@ -329,3 +329,44 @@ model Resource { @@index([createdAt]) @@map("resource") } + +//商品表 +model Goods { + id String @id @default(cuid()) // 商品ID + name String @unique // 商品名称 + description String? // 商品描述 + price Float @default(0.0) // 商品价格 + images String[] @default([]) // 商品图片 + tags Tag[] @relation("GoodsTags") // 多对多关系 + reviews Review[] // 一对多关系 + createdAt DateTime @default(now()) @map("created_at") // 创建时间 + updatedAt DateTime @updatedAt @map("updated_at") // 更新时间 + deletedAt DateTime? @map("deleted_at") // 删除时间,可为空 + @@index([name]) + @@map("goods") +} + +// 标签表 +model Tag { + id String @id @default(cuid()) + name String @unique + goods Goods[] @relation("GoodsTags") + createdAt DateTime @default(now()) @map("created_at") + updatedAt DateTime @updatedAt @map("updated_at") + deletedAt DateTime? @map("deleted_at") + @@map("tag") +} + +model Review { + id String @id @default(cuid()) + content String + rating Int @default(0) + goodsId String @map("goods_id") + goods Goods @relation(fields: [goodsId], references: [id]) + createdAt DateTime @default(now()) @map("created_at") + updatedAt DateTime @updatedAt @map("updated_at") + deletedAt DateTime? @map("deleted_at") + @@index([goodsId]) + @@index([rating]) + @@map("review") +}