generator client { provider = "prisma-client-js" } datasource db { provider = "mysql" url = env("DATABASE_URL") } model SysUser { userId Int @id @default(autoincrement()) @map("user_id") roleId Int? @map("role_id") username String nickname String? @map("nickname") password String email String? phoneNumber String? @map("phone_number") sex Int? avatar String? status Int? isAdmin Boolean @default(false) @map("is_admin") deleted Int @default(0) userType Int? @map("user_type") remark String? loginIp String? @map("login_ip") loginDate DateTime? @map("login_date") creatorId Int? @map("creator_id") createTime DateTime @default(now()) @map("create_time") updaterId Int? @map("updater_id") updateTime DateTime? @updatedAt @map("update_time") @@map("sys_user") } model SysRole { roleId Int @id @default(autoincrement()) @map("role_id") roleName String @map("role_name") roleKey String @map("role_key") roleSort Int @map("role_sort") dataScope Int? @map("data_scope") status Int? remark String? deleted Int @default(0) creatorId Int? @map("creator_id") createTime DateTime @default(now()) @map("create_time") updaterId Int? @map("updater_id") updateTime DateTime? @updatedAt @map("update_time") @@map("sys_role") } model SysRoleMenu { roleId Int @map("role_id") menuId Int @map("menu_id") @@id([roleId, menuId]) @@map("sys_role_menu") } model SysMenu { menuId Int @id @default(autoincrement()) @map("menu_id") menuName String @map("menu_name") menuType Int @map("menu_type") routerName String? @map("router_name") parentId Int @map("parent_id") path String? isButton Boolean @map("is_button") permission String? metaInfo String? @map("meta_info") status Int? remark String? creatorId Int? @map("creator_id") createTime DateTime @default(now()) @map("create_time") updaterId Int? @map("updater_id") updateTime DateTime? @updatedAt @map("update_time") deleted Int @default(0) @@map("sys_menu") } model SysConfig { configId Int @id @default(autoincrement()) @map("config_id") configName String @map("config_name") configKey String @map("config_key") configOptions String? @map("config_options") configValue String? @map("config_value") isAllowChange Boolean? @map("is_allow_change") creatorId Int? @map("creator_id") updaterId Int? @map("updater_id") updateTime DateTime? @updatedAt @map("update_time") createTime DateTime @default(now()) @map("create_time") remark String? deleted Int @default(0) @@map("sys_config") } model SysNotice { noticeId Int @id @default(autoincrement()) @map("notice_id") noticeTitle String @map("notice_title") noticeType Int @map("notice_type") noticeContent String @map("notice_content") status Int creatorId Int? @map("creator_id") createTime DateTime @default(now()) @map("create_time") updaterId Int? @map("updater_id") updateTime DateTime? @updatedAt @map("update_time") deleted Int @default(0) @@map("sys_notice") } model SysLoginInfo { infoId Int @id @default(autoincrement()) @map("info_id") username String? ipAddress String? @map("ip_address") loginLocation String? @map("login_location") browser String? operationSystem String? @map("operation_system") status Int? msg String? loginTime DateTime? @map("login_time") deleted Int @default(0) @@map("sys_login_info") } model SysOperationLog { operationId Int @id @default(autoincrement()) @map("operation_id") requestModule String? @map("request_module") businessType Int? @map("business_type") operatorType Int? @map("operator_type") userId Int? @map("user_id") username String? operatorIp String? @map("operator_ip") operatorLocation String? @map("operator_location") requestMethod String? @map("request_method") calledMethod String? @map("called_method") requestUrl String? @map("request_url") operationParam String? @map("operation_param") operationResult String? @map("operation_result") status Int? errorStack String? @map("error_stack") operationTime DateTime? @map("operation_time") deleted Int @default(0) @@map("sys_operation_log") } model CollaborationRecord { recordId Int @id @default(autoincrement()) @map("record_id") brand String goods String cooperationPlatform String? @map("cooperation_platform") imageReturnNum Int @default(0) @map("image_return_num") retainedMethod String? @map("retained_method") cooperatedMethod String? @map("cooperated_method") purchaseMethod String? @map("purchase_method") purchasePrice Decimal? @map("purchase_price") @db.Decimal(10, 2) purchaseDate DateTime? @map("purchase_date") purchasePlatform String? @map("purchase_platform") deadline DateTime? remuneration Decimal? @db.Decimal(10, 2) completeDate DateTime? @map("complete_date") requirements String? @db.Text remark String? @db.Text creatorId Int? @map("creator_id") createTime DateTime @default(now()) @map("create_time") updaterId Int? @map("updater_id") updateTime DateTime? @updatedAt @map("update_time") deleted Int @default(0) tasks CollaborationTask[] expenditures CollaborationExpenditure[] settlements CollaborationSettlement[] files CollaborationFile[] @@map("collaboration_record") } model CollaborationTask { taskId Int @id @default(autoincrement()) @map("task_id") recordId Int @map("record_id") releaseDate DateTime? @map("release_date") sortOrder Int? @map("sort_order") deleted Int @default(0) record CollaborationRecord @relation(fields: [recordId], references: [recordId]) @@map("collaboration_task") } model CollaborationExpenditure { expenditureId Int @id @default(autoincrement()) @map("expenditure_id") recordId Int @map("record_id") spendDate DateTime? @map("spend_date") amount Decimal? @db.Decimal(10, 2) purpose String? deleted Int @default(0) record CollaborationRecord @relation(fields: [recordId], references: [recordId]) @@map("collaboration_expenditure") } model CollaborationSettlement { settlementId Int @id @default(autoincrement()) @map("settlement_id") recordId Int @map("record_id") settleDate DateTime? @map("settle_date") method String? income Decimal? @db.Decimal(10, 2) purpose String? deleted Int @default(0) record CollaborationRecord @relation(fields: [recordId], references: [recordId]) @@map("collaboration_settlement") } model CollaborationFile { fileId Int @id @default(autoincrement()) @map("file_id") recordId Int @map("record_id") fileType String @map("file_type") url String fileName String? @map("file_name") newFileName String? @map("new_file_name") originalFilename String? @map("original_filename") sortOrder Int? @map("sort_order") deleted Int @default(0) record CollaborationRecord @relation(fields: [recordId], references: [recordId]) @@map("collaboration_file") }