From b0bfc153bf3c9aa430ee6a86588648cdd1c27132 Mon Sep 17 00:00:00 2001
From: cloudroam <cloudroam>
Date: 星期四, 12 六月 2025 11:36:08 +0800
Subject: [PATCH] update: 点赞事件、收藏事件

---
 types/index.ts |  258 +++++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 229 insertions(+), 29 deletions(-)

diff --git a/types/index.ts b/types/index.ts
index 0aa5aff..f214c6d 100644
--- a/types/index.ts
+++ b/types/index.ts
@@ -8,12 +8,12 @@
 }
 
 export interface WechatLoginData {
-  code: string
-  imgurl?: string
-  nickname?: string
-  inviter?: string
-  phoneNumber?: string
-  purePhoneNumber?: string
+    code: string
+    imgurl?: string
+    nickname?: string
+    inviter?: string
+    phoneNumber?: string
+    purePhoneNumber?: string
 }
 
 export interface ProtocolData {
@@ -22,73 +22,124 @@
     content: string;
 }
 
-export interface FilmWorks{
+export interface PaginationQuery {
+    /** 当前页码 */
+    current?: number;
+
+    /** 每页数量 */
+    size?: number;
+
+    /** 排序字段和方向列表 */
+    orders?: OrderItem[];
+
+    /** 是否优化 count 查询 */
+    optimizeCountSql?: boolean;
+
+    /** 是否查询总数 */
+    isSearchCount?: boolean;
+}
+
+/** 排序项定义 */
+export interface OrderItem {
+    column: string;
+    asc: boolean;
+}
+
+
+export interface FilmWorksQueryDTO extends PaginationQuery {
+    /** 中文名称 */
+    nameCn?: string;
+
+    /** 片场类型(FILMSET_TYPE) */
+    type?: string;
+
+    /** 发布状态(COMMON_PUBLISH_STATUS) */
+    status?: string;
+
+    /** 分类:1-为你精选,2-光影社区 */
+    classify?: number;
+
+    /** 创建日期(yyyy-mm-dd)开始 */
+    createDateBeginStr?: string;
+
+    /** 创建日期(yyyy-mm-dd)结束 */
+    createDateEndStr?: string;
+
+    /** 创建日期开始(LocalDateTime 对应 ISO 字符串或 Date 类型) */
+    createDateBegin?: string | Date;
+
+    /** 创建日期结束(LocalDateTime 对应 ISO 字符串或 Date 类型) */
+    createDateEnd?: string | Date;
+}
+
+
+export interface FilmWorks {
 
     id?: number;
 
     /** 中文名称 */
     nameCn?: string;
-  
+
     /** 英文名称 */
     nameEn?: string;
-  
+
     /** 作品类型 */
     type?: string;
     typeStr?: string;
-  
+
     /** 上映年份 */
     releaseYear?: string;
-  
+
     /** 导演(多个用逗号分隔) */
     director?: string;
-  
+
     /** 制片方 */
     producer?: string;
-  
+
     /** 主要演员(多个用逗号分隔) */
     actors?: string;
-  
+
     /** 剧情关键词(用逗号分隔) */
     keywords?: string;
-  
+
     /** 剧情简介 */
     synopsis?: string;
-  
+
     /** 封面图片URL */
     coverUrl?: string;
-  
+
     /** 封面图片描述文本 */
     coverAlt?: string;
-  
+
     /** 创建者用户类型 */
     userType?: string;
     userTypeStr?: string;
-  
+
     /** 置顶权重(越大越靠前) */
     stickyWeight?: number;
-  
+
     /** 状态 */
     status?: string;
     statusStr?: string;
-  
+
     /** 创建者ID */
     createBy?: string;
-  
+
     /** 最后修改者ID */
     updateBy?: string;
-  
+
     /** 收藏量 */
     collectCount?: number;
-  
+
     /** 点赞量 */
     likeCount?: number;
-  
+
     /** 评论量 */
     commentCount?: number;
-  
+
     /** 分享量 */
     shareCount?: number;
-  
+
     /** 分类 */
     classify?: number;
 
@@ -101,7 +152,156 @@
     avatar?: String;
 
     nickname?: String;
-    
+
     createTime?: String;
 
-}
\ No newline at end of file
+}
+
+interface Node {
+    id: any;
+    parentId: any;
+    children: Node[];
+}
+
+export interface FilmCategoryTree extends Node {
+    /** 名称 */
+    name: string;
+
+    /** 父分类名称 */
+    parentName: string;
+
+    /** 图标 */
+    imageUrl: string;
+
+    /** 颜色 */
+    color: string;
+
+    /** 排序 */
+    sortBy: number;
+
+    /** 是否展示 */
+    shown: boolean;
+
+    /** 级别限制 */
+    levelLimit: string;
+
+    /** 子分类数量 */
+    childrenCount: number;
+}
+
+export interface FilmPicture {
+    name: string;
+    size: number;
+    url: string;
+}
+
+export interface FilmInfo {
+    id: number;
+    nameCn: string;
+    nameEn: string;
+    nickname: string | null;
+    actors: string;
+    director: string;
+    producer: string;
+    filmContent: string | null;
+    filmPictures: FilmPicture[];
+    coverUrl: string;
+    coverAlt: string;
+    coverTitle: string;
+    classify: string | null;
+    keywords: string;
+    tag: string;
+    type: string;
+    typeStr: string;
+    status: string;
+    statusStr: string;
+    stickyWeight: number;
+    synopsis: string;
+    avatar: string | null;
+    releaseYear: number | null;
+    collectCount: number;
+    commentCount: number;
+    likeCount: number;
+    shareCount: number;
+    userType: string;
+    userTypeStr: string;
+    createBy: string;
+    createTime: string;
+    updateBy: string | null;
+    liked: boolean;
+    collected: boolean;
+    voLikeCount: number;
+    voCollectCount: number;
+    voCommentCount: number;
+}
+
+
+/**
+ * 评论
+ */
+export interface CommentDTO {
+    /** 评论编号 */
+    id?: number;
+  
+    /** 父评论id */
+    parentId?: number;
+  
+    /** 评论内容 */
+    content?: string;
+  
+    /** 被评论帖子id */
+    filmId?: number;
+  
+    /** 状态(0禁用,1启用) */
+    state?: boolean;
+  
+    /** 逻辑删除(0正常,1删除) */
+    deleted?: boolean;
+  
+    /** 评论用户id */
+    createBy?: string;
+  
+    /** 评论用户名称 */
+    commentUserName?: string;
+  
+    /** 用户头像 */
+    picture?: string;
+  
+    /** 等级(Lv6) */
+    level?: string;
+  
+    /** 是否点赞 */
+    isLike?: boolean;
+  
+    /** 点赞数量 */
+    likeCount?: number; // Long 对应 number
+  
+    /** 回复数量 */
+    repliesCount?: number;
+  
+    /** 评论深度 */
+    depth?: number;
+  
+    /** 创建时间 */
+    createTime?: string; // LocalDateTime 转为 ISO 字符串
+  
+    /** 更新时间 */
+    updateTime?: string;
+  
+    /** 子评论 */
+    child?: CommentDTO[];
+    /**
+     * 图片列表
+     */
+    fileList?:string[];
+
+    filmPictures?:string;
+
+  }
+  
+  interface FileItem {
+    name: string;
+    size: number;
+    url: string;
+    status: string;
+  }
\ No newline at end of file

--
Gitblit v1.9.3