service.xpcool.com/internal/model/dto/house.go
夏犀麟 ea50261cb8
Some checks failed
Build and Deploy (service.xpcool.com) / build-and-deploy (push) Failing after 35s
feat(house): 扩充看房数据并增强服务器日志功能
- 新增新房预售证表 house_presale 存储预售许可信息
- 为 house_community 表添加 avg_price 字段存储小区参考均价
- 增强服务器操作审计日志功能,新增管理员账号、IP归属地、错误信息、UA等字段
- 实现纯Go版IP归属地离线解析器,无外部依赖,支持二分查找
- 优化看房列表查询逻辑,修复Fields设置位置导致的SQL语法错误
- 集成招聘模块,添加独立数据库配置和Bark推送服务支持
- 重构日志查询接口,支持多维度筛选和综合分页列表展示
- 更新DAO实体结构同步数据库表结构调整
2026-08-27 01:47:32 +08:00

124 lines
2.9 KiB
Go
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

// 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"`
}
// HousePresaleVO 新房预售证查询结果(表内已含楼盘名,无需关联)。
type HousePresaleVO struct {
entity.HousePresale
}
// 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
}