296 lines
7.0 KiB
C#
296 lines
7.0 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
using Newtonsoft.Json;
|
|
|
|
namespace RevitHttpControl.Models
|
|
{
|
|
/// <summary>
|
|
/// 模型总览响应
|
|
/// </summary>
|
|
public class ModelOverviewResponse
|
|
{
|
|
/// <summary>
|
|
/// 项目基本信息
|
|
/// </summary>
|
|
public ProjectInfo Project { get; set; }
|
|
|
|
/// <summary>
|
|
/// 主要构件统计
|
|
/// </summary>
|
|
public ElementCounts Elements { get; set; }
|
|
|
|
/// <summary>
|
|
/// 模型组织信息
|
|
/// </summary>
|
|
public ModelStructure Structure { get; set; }
|
|
|
|
/// <summary>
|
|
/// 模型层级信息
|
|
/// </summary>
|
|
public ModelHierarchy Hierarchy { get; set; }
|
|
|
|
/// <summary>
|
|
/// 链接文件统计
|
|
/// </summary>
|
|
public LinkFiles Links { get; set; }
|
|
|
|
/// <summary>
|
|
/// 统计生成时间
|
|
/// </summary>
|
|
public DateTime GeneratedAt { get; set; }
|
|
}
|
|
|
|
/// <summary>
|
|
/// 项目基本信息
|
|
/// </summary>
|
|
public class ProjectInfo
|
|
{
|
|
/// <summary>
|
|
/// 项目名称
|
|
/// </summary>
|
|
public string Name { get; set; }
|
|
|
|
/// <summary>
|
|
/// 文件路径
|
|
/// </summary>
|
|
public string FilePath { get; set; }
|
|
|
|
/// <summary>
|
|
/// Revit版本
|
|
/// </summary>
|
|
public string RevitVersion { get; set; }
|
|
|
|
/// <summary>
|
|
/// 是否为中心文件
|
|
/// </summary>
|
|
public bool IsCentralFile { get; set; }
|
|
|
|
/// <summary>
|
|
/// 项目状态
|
|
/// </summary>
|
|
public string Status { get; set; }
|
|
|
|
/// <summary>
|
|
/// 文件大小(字节)
|
|
/// </summary>
|
|
[JsonProperty("fileSize")]
|
|
public long FileSizeBytes { get; set; }
|
|
|
|
/// <summary>
|
|
/// 文件大小(格式化显示)
|
|
/// </summary>
|
|
public string FileSizeDisplay { get; set; }
|
|
|
|
/// <summary>
|
|
/// 面片数
|
|
/// </summary>
|
|
[JsonProperty("polygonCount")]
|
|
public long PolygonCount { get; set; }
|
|
|
|
/// <summary>
|
|
/// 模型特征数
|
|
/// </summary>
|
|
[JsonProperty("featureCount")]
|
|
public int FeatureCount { get; set; }
|
|
}
|
|
|
|
/// <summary>
|
|
/// 主要构件数量统计
|
|
/// </summary>
|
|
public class ElementCounts
|
|
{
|
|
/// <summary>
|
|
/// 墙数量
|
|
/// </summary>
|
|
public int Walls { get; set; }
|
|
|
|
/// <summary>
|
|
/// 门数量
|
|
/// </summary>
|
|
public int Doors { get; set; }
|
|
|
|
/// <summary>
|
|
/// 窗数量
|
|
/// </summary>
|
|
public int Windows { get; set; }
|
|
|
|
/// <summary>
|
|
/// 楼板数量
|
|
/// </summary>
|
|
public int Floors { get; set; }
|
|
|
|
/// <summary>
|
|
/// 天花板数量
|
|
/// </summary>
|
|
public int Ceilings { get; set; }
|
|
|
|
/// <summary>
|
|
/// 柱数量
|
|
/// </summary>
|
|
public int Columns { get; set; }
|
|
|
|
/// <summary>
|
|
/// 梁数量
|
|
/// </summary>
|
|
public int Beams { get; set; }
|
|
|
|
/// <summary>
|
|
/// 房间数量
|
|
/// </summary>
|
|
public int Rooms { get; set; }
|
|
|
|
/// <summary>
|
|
/// 总构件数
|
|
/// </summary>
|
|
public int Total => Walls + Doors + Windows + Floors + Ceilings + Columns + Beams + Rooms;
|
|
}
|
|
|
|
/// <summary>
|
|
/// 模型组织结构信息
|
|
/// </summary>
|
|
public class ModelStructure
|
|
{
|
|
/// <summary>
|
|
/// 楼层数量
|
|
/// </summary>
|
|
public int Levels { get; set; }
|
|
|
|
/// <summary>
|
|
/// 三维视图数量
|
|
/// </summary>
|
|
public int Views3D { get; set; }
|
|
|
|
/// <summary>
|
|
/// 平面视图数量
|
|
/// </summary>
|
|
public int FloorPlans { get; set; }
|
|
|
|
/// <summary>
|
|
/// 立面视图数量
|
|
/// </summary>
|
|
public int Elevations { get; set; }
|
|
|
|
/// <summary>
|
|
/// 剖面视图数量
|
|
/// </summary>
|
|
public int Sections { get; set; }
|
|
|
|
/// <summary>
|
|
/// 图纸数量
|
|
/// </summary>
|
|
public int Sheets { get; set; }
|
|
}
|
|
|
|
/// <summary>
|
|
/// 模型层级信息
|
|
/// </summary>
|
|
public class ModelHierarchy
|
|
{
|
|
/// <summary>
|
|
/// 楼层详情列表
|
|
/// </summary>
|
|
public List<LevelInfo> Levels { get; set; }
|
|
|
|
/// <summary>
|
|
/// 组数量
|
|
/// </summary>
|
|
public int Groups { get; set; }
|
|
|
|
/// <summary>
|
|
/// 工作集数量
|
|
/// </summary>
|
|
public int Worksets { get; set; }
|
|
|
|
/// <summary>
|
|
/// 阶段数量
|
|
/// </summary>
|
|
public int Phases { get; set; }
|
|
|
|
/// <summary>
|
|
/// 设计选项数量
|
|
/// </summary>
|
|
public int DesignOptions { get; set; }
|
|
}
|
|
|
|
/// <summary>
|
|
/// 楼层信息
|
|
/// </summary>
|
|
public class LevelInfo
|
|
{
|
|
/// <summary>
|
|
/// 楼层名称
|
|
/// </summary>
|
|
public string Name { get; set; }
|
|
|
|
/// <summary>
|
|
/// 标高值(毫米)
|
|
/// </summary>
|
|
public double Elevation { get; set; }
|
|
|
|
/// <summary>
|
|
/// 标高值(米,显示用)
|
|
/// </summary>
|
|
public string ElevationDisplay => $"{Elevation / 1000:F1}m";
|
|
}
|
|
|
|
/// <summary>
|
|
/// 链接文件统计
|
|
/// </summary>
|
|
public class LinkFiles
|
|
{
|
|
/// <summary>
|
|
/// Revit链接文件
|
|
/// </summary>
|
|
public LinkCategory RevitLinks { get; set; }
|
|
|
|
/// <summary>
|
|
/// CAD链接文件
|
|
/// </summary>
|
|
public LinkCategory CadLinks { get; set; }
|
|
|
|
/// <summary>
|
|
/// 点云链接数量
|
|
/// </summary>
|
|
public int PointClouds { get; set; }
|
|
|
|
/// <summary>
|
|
/// 图像链接数量
|
|
/// </summary>
|
|
public int Images { get; set; }
|
|
|
|
/// <summary>
|
|
/// 链接文件总结描述
|
|
/// </summary>
|
|
public string Summary { get; set; }
|
|
}
|
|
|
|
/// <summary>
|
|
/// 链接文件分类统计
|
|
/// </summary>
|
|
public class LinkCategory
|
|
{
|
|
/// <summary>
|
|
/// 总数
|
|
/// </summary>
|
|
public int Total { get; set; }
|
|
|
|
/// <summary>
|
|
/// 已加载数量
|
|
/// </summary>
|
|
public int Loaded { get; set; }
|
|
|
|
/// <summary>
|
|
/// 未加载数量
|
|
/// </summary>
|
|
public int Unloaded { get; set; }
|
|
|
|
/// <summary>
|
|
/// 未找到数量
|
|
/// </summary>
|
|
public int NotFound { get; set; }
|
|
}
|
|
}
|