ai_scheduler/internal/data/mongo_model/advicer_project.go

151 lines
6.6 KiB
Go
Raw Permalink 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 mongo_model
import (
"time"
)
type AdvicerProjectMongo struct {
ProjectId int32 `json:"projectId" bson:"projectId"`
ProjectInfo ProjectInfo `json:"projectInfo" bson:"projectInfo"`
RegionValue RegionValue `json:"regionValue" bson:"regionValue"`
CompetitionComparison CompetitionComparison `json:"competitionComparison" bson:"competitionComparison"`
CoreSellingPoints CoreSellingPoints `json:"coreSellingPoints" bson:"coreSellingPoints"`
SupportingFacilities SupportingFacilities `json:"supportingFacilities" bson:"supportingFacilities"`
DeveloperBacking DeveloperBacking `json:"developerBacking" bson:"developerBacking"`
LastUpdateTime time.Time `json:"lastUpdateTime" bson:"lastUpdateTime"`
}
func NewAdvicerProjectMongo() *AdvicerProjectMongo {
return &AdvicerProjectMongo{}
}
func (a *AdvicerProjectMongo) MongoTableName() string {
return "advicer_project"
}
type AdvicerProjectMongoEntity struct {
RegionValue RegionValue `json:"regionValue" bson:"regionValue"`
CompetitionComparison CompetitionComparison `json:"competitionComparison" bson:"competitionComparison"`
CoreSellingPoints CoreSellingPoints `json:"coreSellingPoints" bson:"coreSellingPoints"`
SupportingFacilities SupportingFacilities `json:"supportingFacilities" bson:"supportingFacilities"`
DeveloperBacking DeveloperBacking `json:"developerBacking" bson:"developerBacking"`
}
func (a *AdvicerProjectMongo) Entity() *AdvicerProjectMongoEntity {
return &AdvicerProjectMongoEntity{
RegionValue: a.RegionValue,
CompetitionComparison: a.CompetitionComparison,
CoreSellingPoints: a.CoreSellingPoints,
SupportingFacilities: a.SupportingFacilities,
DeveloperBacking: a.DeveloperBacking,
}
}
type ProjectInfo struct {
Name string `json:"projectName" bson:"projectName"`
Address string `json:"projectAddress" bson:"projectAddress"`
Area string `json:"area" bson:"area"`
HouseTypes []HouseType `json:"houseTypes" bson:"houseTypes"`
}
type HouseType struct {
Name string `json:"name" bson:"name"`
BuildArea string `json:"buildArea" bson:"buildArea"`
InnerArea string `json:"innerArea" bson:"innerArea"`
UnitPrice string `json:"unitPrice" bson:"unitPrice"`
TotalPrice string `json:"totalPrice" bson:"totalPrice"`
}
// RegionValue 区域价值话术库
type RegionValue map[string][]string
func (e *RegionValue) Example() string {
return `{"区位层级":["成华区2.5环内侧,这个位置真的稀缺","槐树店板块现在是成华区的number one板块","北接三板桥商圈,西靠万象城,东临火车东站","属于淮舜板块,万象城东的核心位置"],"地价论证":["我们地价19500华晨府20400棕榈也是2万+","2.5环内现在地价没有低于19000的","面粉贵了,面包不可能便宜"],"板块热度":["从21年新希望锦麟一品开始这边全是高端盘","龙湖最高端的滨江系列在这里,新希望的锦麟系列也在这里","各大品牌开发商争相恐后都在这边拿地"],"发展规划":["槐树店板块是棋盘成钢之后第二个富人区","整个板块都是300万到900万的总价段","未来全是改善型住宅,没有刚需盘"]}`
}
func (e *RegionValue) Copy() AdviceData {
return new(RegionValue)
}
func (e *RegionValue) Role() AdviceRole {
return RoleProject
}
func (e *RegionValue) Desc() string {
return "区域价值话术"
}
// CompetitionComparison 竞品对比话术
type CompetitionComparison map[string]map[string]string
func (e *CompetitionComparison) Example() string {
return `{"龙湖滨江云河颂":{"优点承认":"龙湖位置确实好,看沙河公园","价格对比":"他们单价32000-35000但得房率只有95%套内算下来36000+","优势突出":"我们得房率118平实得132平套内单价才33000"},"邦泰云锦":{"定位相似":"邦泰也是首个项目,要打造口碑","价格参考":"他们当时12800拿地现在卖34000","品质对比":"我们外立面全玻璃幕墙比他们成本高30%"}}`
}
func (e *CompetitionComparison) Copy() AdviceData {
return new(CompetitionComparison)
}
func (e *CompetitionComparison) Role() AdviceRole {
return RoleProject
}
func (e *CompetitionComparison) Desc() string {
return "竞品对比话术"
}
// CoreSellingPoints 核心卖点
type CoreSellingPoints map[string]string
func (e *CoreSellingPoints) Example() string {
return `{"产品配置高端":"全玻璃幕墙+铝单板外立面三层中空氩气玻璃3.2米层高方太Y9烟机灶具高仪卫浴","地段稀缺性":"成华区2.5环内侧核心地段槐树店板块是成华区number one板块被三板桥、万象城、火车东站包围","得房率高":"118平实得132平套内单价33000比龙湖滨江云河颂套内单价低3000"}`
}
func (e *CoreSellingPoints) Copy() AdviceData {
return new(CoreSellingPoints)
}
func (e *CoreSellingPoints) Role() AdviceRole {
return RoleProject
}
func (e *CoreSellingPoints) Desc() string {
return "核心卖点"
}
// SupportingFacilities 配套体系
type SupportingFacilities map[string]map[string]string
func (e *SupportingFacilities) Example() string {
return `{"交通配套":{"地铁":"双店路站350米7号线槐树店站550米4号线未来12号线","道路":"中环路、成洛大道到春熙路5个站","通达性":"到火车东站2个站到华西30分钟内"},"教育配套":{"幼儿园":"楼下公立幼儿园","小学":"城市附小锦汇东城(成华区生源最好的学校)","生源优势":"周边新盘都是300万+,生源纯粹"},"医疗配套":{"三甲医院":"市六医院、市二医院3公里内","顶尖医疗":"华西医院锦江院区30分钟车程","便利性":"到华西本部也是30分钟内"}}`
}
func (e *SupportingFacilities) Copy() AdviceData {
return new(SupportingFacilities)
}
func (e *SupportingFacilities) Role() AdviceRole {
return RoleProject
}
func (e *SupportingFacilities) Desc() string {
return "配套体系"
}
// DeveloperBacking 开发商背书
type DeveloperBacking map[string]string
func (e *DeveloperBacking) Example() string {
return `{"公司实力":"中信资产,多元化民营企业","资金安全":"在河南渑池有铝土矿每年稳定收入10亿","开发经验":"宜宾有5个项目贵州2个成都是首个项目","合作方":"招商铂金物业,首次与外部企业合作"}`
}
func (e *DeveloperBacking) Copy() AdviceData {
return new(DeveloperBacking)
}
func (e *DeveloperBacking) Role() AdviceRole {
return RoleProject
}
func (e *DeveloperBacking) Desc() string {
return "开发商背书"
}