// Package dto 定义看房模块服务边界的输入/输出结构。 package dto import "service.xpcool.com/internal/model/entity" // HouseCommunityInput 小区创建/更新输入(Id=0 表示创建)。 type HouseCommunityInput struct { Id uint64 Name string Region string BusinessDistrict string Address string Source string Lng float64 Lat float64 PlotRatio float64 GreenRate float64 PropertyFee float64 BuildYear int Households int PropertyCompany string Developer string } // HouseListingInput 房源创建/更新输入(Id=0 表示创建)。 type HouseListingInput struct { Id uint64 CommunityId uint64 BuildingId uint64 MatchGroupId uint64 HouseNo string Layout string Orientation string Decoration string Source string SourceHouseId string SourceUrl string Area float64 UsableArea float64 TotalPrice float64 UnitPrice float64 ListPrice float64 Floor int TotalFloors int OnMarketDays int PriceChangeCount int Status int Confidence int IsBargain int } // HouseListingFilter 房源列表统一筛选条件(管理列表与看板共用)。 type HouseListingFilter struct { Page int Size int CommunityId uint64 Keyword string Layout string Region string Source string PriceMin float64 PriceMax float64 AreaMin float64 AreaMax float64 Status int IsBargain int Confidence int } // HouseListingVO 房源查询结果(内嵌实体 + 关联小区名)。 type HouseListingVO struct { entity.HouseListing CommunityName string `json:"communityName" orm:"community_name"` } // HouseTransactionVO 成交记录查询结果(内嵌实体 + 关联小区名)。 type HouseTransactionVO struct { entity.HouseTransaction CommunityName string `json:"communityName" orm:"community_name"` } // DashboardOverview 看板统计概览。 type DashboardOverview struct { CommunityCount int ListingCount int BargainCount int LowConfidence int AvgUnitPrice float64 AvgTotalPrice float64 AvgListDays float64 } // DashboardMapPoint 地图点位。 type DashboardMapPoint struct { CommunityId uint64 Name string Region string Lng float64 Lat float64 AvgUnitPrice float64 ListingCount int BargainCount int } // DashboardTrendPoint 价格趋势点。 type DashboardTrendPoint struct { Date string AvgListPrice float64 AvgDealPrice float64 } // DashboardRegionAgg 区域聚合。 type DashboardRegionAgg struct { Region string AvgUnitPrice float64 ListingCount int BargainCount int }