388 lines
15 KiB
Go
388 lines
15 KiB
Go
package entitys
|
||
|
||
type AdviceData interface {
|
||
Example() string
|
||
Copy() AdviceData
|
||
Role() AdviceRole
|
||
Desc() string
|
||
}
|
||
|
||
type AdviceRole string
|
||
|
||
const (
|
||
RoleAdvicer AdviceRole = "advicer"
|
||
RoleProject AdviceRole = "project"
|
||
RoleSkill AdviceRole = "skill"
|
||
RoleClient AdviceRole = "client"
|
||
)
|
||
|
||
var RoleDesc = map[AdviceRole]string{
|
||
RoleAdvicer: "顾问",
|
||
RoleProject: "项目",
|
||
RoleSkill: "沟通技巧",
|
||
RoleClient: "客户",
|
||
}
|
||
|
||
// -------顾问
|
||
|
||
// DialectFeatures 方言特征
|
||
type DialectFeatures struct {
|
||
Region string `json:"region"` //方言使用程度
|
||
Intensity float64 `json:"intensity"` // 方言使用强度(0-1)
|
||
KeyWords []string `json:"KeyWords"`
|
||
}
|
||
|
||
func (e *DialectFeatures) Example() string {
|
||
return `{"region":"四川成都话","intensity":0.4,"key_words":["噻","要得","没得","不晓得","是不是"]}`
|
||
}
|
||
|
||
func (e *DialectFeatures) Copy() AdviceData {
|
||
return new(DialectFeatures)
|
||
}
|
||
|
||
func (e *DialectFeatures) Role() AdviceRole {
|
||
return RoleAdvicer
|
||
}
|
||
|
||
func (e *DialectFeatures) Desc() string {
|
||
return "方言特征"
|
||
}
|
||
|
||
// SentencePatterns 句子模式
|
||
type SentencePatterns struct {
|
||
OpeningMode []string `json:"openingMode"` //开场模式
|
||
ExplanationMode []string `json:"explanationMode"` //解释模式
|
||
ConfirmationMode []string `json:"confirmationMode"` //确认模式
|
||
SummaryMode []string `json:"summaryMode"` //总结模式
|
||
TransitionMode []string `json:"transitionMode"` //过渡模式
|
||
}
|
||
|
||
func (e *SentencePatterns) Example() string {
|
||
return `{"openingMode":["我给你介绍一下","我们先来看一下"],"explanationMode":["是这样的","我跟你讲","你发现没得"],"confirmationMode":["对吧?","是不是嘛?","你晓得不?","明白了噻?"],"summaryMode":["所以说","简单说就是"],"transitionMode":["然后的话","再其次","还有一点"]}`
|
||
}
|
||
|
||
func (e *SentencePatterns) Copy() AdviceData {
|
||
return new(SentencePatterns)
|
||
}
|
||
|
||
func (e *SentencePatterns) Role() AdviceRole {
|
||
return RoleAdvicer
|
||
}
|
||
|
||
func (e *SentencePatterns) Desc() string {
|
||
return "句子模式"
|
||
}
|
||
|
||
// PersonalityTags 个性标签
|
||
type PersonalityTags []string
|
||
|
||
func (e *PersonalityTags) Example() string {
|
||
return `["耐心细致","细节控"]`
|
||
}
|
||
func (e *PersonalityTags) Copy() AdviceData {
|
||
return new(PersonalityTags)
|
||
}
|
||
|
||
func (e *PersonalityTags) Role() AdviceRole {
|
||
return RoleAdvicer
|
||
}
|
||
|
||
func (e *PersonalityTags) Desc() string {
|
||
return "个性标签"
|
||
}
|
||
|
||
// ToneTags 语气标签
|
||
type ToneTags struct {
|
||
Enthusiasm float64 `json:"enthusiasm"`
|
||
Patience float64 `json:"patience"`
|
||
Confidence float64 `json:"confidence"`
|
||
Friendliness float64 `json:"friendliness"`
|
||
Persuasion float64 `json:"persuasion"`
|
||
}
|
||
|
||
func (e *ToneTags) Example() string {
|
||
return `{"enthusiasm":0.8,"patience":0.9,"confidence":0.85,"friendliness":0.75,"persuasion":0.7}`
|
||
}
|
||
|
||
func (e *ToneTags) Copy() AdviceData {
|
||
return new(ToneTags)
|
||
}
|
||
|
||
func (e *ToneTags) Role() AdviceRole {
|
||
return RoleAdvicer
|
||
}
|
||
|
||
func (e *ToneTags) Desc() string {
|
||
return "语气标签"
|
||
}
|
||
|
||
// SignatureDialogues 代表性对话示例
|
||
type SignatureDialogues []struct {
|
||
Context string `json:"context"`
|
||
Dialogue string `json:"dialogue"` //解释
|
||
}
|
||
|
||
func (e *SignatureDialogues) Example() string {
|
||
return `[{"context":"客户质疑地块大小","dialogue":"哥,14亩确实不大,但你要在成都是2.5环内城买房,这种是个普遍存在的一个现象。你看万景和绿城都是13亩,中铁建只有8.8亩,339那个帮泰只有11亩。我们虽然地小,但楼间距开阔啊,看过去都是200多米!"},{"context":"客户担心物业费高","dialogue":"姐,我懂你意思,我们也觉得物业费是有点贵。但招商物业是铂金服务,有管家送外卖、免费宠物喂养这些增值服务。你算一下,就算贵一块钱,十年也就多14000,但好物业让房子增值不止这点!"},{"context":"客户犹豫价格","dialogue":"说实话,这个地段的地价都比28板块贵5000多,但我们单价只贵3000。你看龙湖滨江云河颂套内单价都36000了,我们才33000,真的性价比高!现在不买,以后这个板块可能就买不起了。"}]`
|
||
}
|
||
|
||
func (e *SignatureDialogues) Copy() AdviceData {
|
||
return new(SignatureDialogues)
|
||
}
|
||
|
||
func (e *SignatureDialogues) Role() AdviceRole {
|
||
return RoleAdvicer
|
||
}
|
||
|
||
func (e *SignatureDialogues) Desc() string {
|
||
return "代表性对话示例"
|
||
}
|
||
|
||
// -------项目
|
||
|
||
// 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 "开发商背书"
|
||
}
|
||
|
||
// -------销售话术
|
||
|
||
// NeedsMining 需求挖掘话术
|
||
type NeedsMining map[string][]string
|
||
|
||
func (e *NeedsMining) Example() string {
|
||
return `{"预算需求":["你们总价想控制在多少以内?","是考虑按揭还是一次性?","月供能接受多少范围?"],"居住需求":["几个人住?有老人小孩吗?","主要是自住还是考虑投资?","现在住哪里?想改善哪些方面?"],"通勤需求":["在哪个位置上班?","主要开车还是坐地铁?","对地铁距离有要求吗?"]}`
|
||
}
|
||
|
||
func (e *NeedsMining) Copy() AdviceData {
|
||
return new(NeedsMining)
|
||
}
|
||
|
||
func (e *NeedsMining) Role() AdviceRole {
|
||
return RoleSkill
|
||
}
|
||
|
||
func (e *NeedsMining) Desc() string {
|
||
return "需求挖掘话术"
|
||
}
|
||
|
||
// PainPointResponse 痛点应对策略
|
||
type PainPointResponse map[string]map[string]string
|
||
|
||
func (e *PainPointResponse) Example() string {
|
||
return `{"地块太小":{"承认事实":"14亩确实不大","普遍现象":"2.5环内都是小地块,万景13亩,中铁建8.8亩","转化优势":"但人少安静,楼间距反而更开阔","对比竞品":"339的邦泰才11亩,人家上千万豪宅"},"物业费高":{"理解感受":"我懂你,我们也觉得有点贵","价值分析":"但6块里3块是增值服务(保洁、送外卖)","价格补贴":"前三年补贴到5块,跟其他盘差不多"}}`
|
||
}
|
||
func (e *PainPointResponse) Copy() AdviceData {
|
||
return new(PainPointResponse)
|
||
}
|
||
|
||
func (e *PainPointResponse) Role() AdviceRole {
|
||
return RoleSkill
|
||
}
|
||
|
||
func (e *PainPointResponse) Desc() string {
|
||
return "痛点应对策略"
|
||
}
|
||
|
||
// ValueBuilding 价值塑造技巧
|
||
type ValueBuilding map[string][]string
|
||
|
||
func (e *ValueBuilding) Example() string {
|
||
return `{"地段价值塑造":["买房最重要的是地段、地段、还是地段","核心地段的核心资产才保值增值","2.5环内的地卖一块少一块,不可再生"],"产品价值塑造":["我们是用改善的价格,买豪宅的标准","很多细节都是3000万豪宅才有的配置","外立面成本比竞品高30%,但单价差不多"]}`
|
||
}
|
||
|
||
func (e *ValueBuilding) Copy() AdviceData {
|
||
return new(ValueBuilding)
|
||
}
|
||
|
||
func (e *ValueBuilding) Role() AdviceRole {
|
||
return RoleSkill
|
||
}
|
||
|
||
func (e *ValueBuilding) Desc() string {
|
||
return "价值塑造技巧"
|
||
}
|
||
|
||
// ClosingTechniques 促单话术
|
||
type ClosingTechniques map[string]map[string][]string
|
||
|
||
func (e *ClosingTechniques) Example() string {
|
||
return `{"紧迫感营造":{"时间紧迫":["今天是月底最后一天,领导有压力价格可谈","我们刚刚开盘,还有额外优惠","月底冲业绩,价格最有弹性"],"房源稀缺":["118只剩20多套了,好楼层不多","这栋楼就60户,卖一套少一套","特价房只有这几套,今天不定可能就没了"]},"优惠策略":{"价格优惠":["今天定的话,我可以跟领导申请额外折扣","买车位的话,总价多给两个点优惠","一次性付款再优惠一个点"],"附加价值":["送一年物业费","送品牌家电礼包","优先选车位"]},"决策推动":{"小步推进":["要不先交个小定保留房源?","可以先排个号,有优惠优先通知你","今天不定的话,我帮你留意好楼层"]}}`
|
||
}
|
||
|
||
func (e *ClosingTechniques) Copy() AdviceData {
|
||
return new(ClosingTechniques)
|
||
}
|
||
|
||
func (e *ClosingTechniques) Role() AdviceRole {
|
||
return RoleSkill
|
||
}
|
||
|
||
func (e *ClosingTechniques) Desc() string {
|
||
return "促单话术"
|
||
}
|
||
|
||
// CommunicationRhythm 沟通节奏控制
|
||
type CommunicationRhythm map[string]map[string]string
|
||
|
||
func (e *CommunicationRhythm) Example() string {
|
||
return `{"开场阶段":{"时间占比":"5%","目标":"建立关系,了解需求","关键动作":"亲切称呼,简单寒暄,确认看房重点"},"沙盘讲解":{"时间占比":"30%","目标":"建立价值认知","关键动作":"板块价值→周边配套→项目亮点→开发商介绍"}}`
|
||
}
|
||
|
||
func (e *CommunicationRhythm) Copy() AdviceData {
|
||
return new(CommunicationRhythm)
|
||
}
|
||
|
||
func (e *CommunicationRhythm) Role() AdviceRole {
|
||
return RoleSkill
|
||
}
|
||
|
||
func (e *CommunicationRhythm) Desc() string {
|
||
return "沟通节奏控制"
|
||
}
|
||
|
||
//----------客户
|
||
|
||
// Customer 客户信息
|
||
type Customer []ClientInfo
|
||
type ClientInfo struct {
|
||
// 个人信息
|
||
PersonalInfo PersonalInfo `json:"personalInfo"`
|
||
|
||
// 购房目的
|
||
PurchasePurpose PurchasePurpose `json:"purchasePurpose"`
|
||
|
||
// 核心需求
|
||
CoreDemands CoreDemands `json:"coreDemands"`
|
||
|
||
// 关注点与顾虑
|
||
Concerns []string `json:"concerns"`
|
||
|
||
// 决策建议
|
||
DecisionProfile []string `json:"decisionProfile"`
|
||
}
|
||
|
||
type PersonalInfo struct {
|
||
Name string `json:"name"` // 姓氏
|
||
Gender string `json:"gender"` // 性别
|
||
Location string `json:"location"` // 来源地/当前居住地
|
||
IsFirstHome bool `json:"isFirstHome"` // 是否首套房
|
||
FamilyOrganize string `json:"familyOrganize"` // 家庭人数
|
||
}
|
||
|
||
type PurchasePurpose struct {
|
||
PrimaryPurpose string `json:"primaryPurpose"` // 主要目的
|
||
SecondaryPurpose string `json:"secondaryPurpose"` // 次要目的
|
||
DecisionMakers string `json:"decisionMakers"` // 决策人
|
||
}
|
||
|
||
type CoreDemands struct {
|
||
TotalBudget string `json:"totalBudget"` // 预算范围
|
||
PreferredLayout string `json:"preferredLayout"` // 偏好户型
|
||
CoreAppeal string `json:"coreAppeal"` // 核心述求
|
||
}
|
||
|
||
func (e *Customer) Example() string {
|
||
return `[{"personalInfo":{"name":"唐","gender":"男","location":"成都北门","isFirstHome":true,"familyOrganize":"夫妻+1孩+父母同住"},"purchasePurpose":{"primaryPurpose":"首次置业,解决自住","secondaryPurpose":"资产保值,未来可出租","decisionMakers":"夫妻双方"},"coreDemands":{"totalBudget":"350-400"","preferredLayout":"118㎡四房三卫双套房","coreAppeal":"在有限预算内满足家庭居住功能,确保房产保值"},"concerns":["总价超预算风险","板块保值能力","未来租金回报率","开发商资金实力"],"decisionProfile":["预算导向,严格控制总价","重点关注户型功能性和实用性","需要对比板块发展潜力","对开发商交付能力有顾虑"]},{"personalInfo":{"name":"冯女士","gender":"女","location":"","isFirstHome":false,"familyOrganize":"夫妻+1孩+父母同住"},"purchasePurpose":{"primaryPurpose":"改善居住条件","secondaryPurpose":"子女教育质量提升","decisionMakers":"夫妻双方需家庭共同商议]},"coreDemands":{"totalBudget":"400-500","preferredLayout":"118㎡四房三卫(非全景户型)","coreAppeal":"安静舒适、学区有保障的改善型住房"},"concerns":["临路噪音影响老人休息","学区质量和稳定性","社区小,绿化空间有限","得房率是否足够","二八板块学区对比"],"decisionProfile":["对噪音敏感,需要安静环境","重视教育资源配置","关注社区品质和舒适度","需要详细对比不同板块学区优势"]}]`
|
||
}
|
||
|
||
func (e *Customer) Copy() AdviceData {
|
||
return new(Customer)
|
||
}
|
||
|
||
func (e *Customer) Role() AdviceRole {
|
||
return RoleClient
|
||
}
|
||
|
||
func (e *Customer) Desc() string {
|
||
return "客户信息"
|
||
}
|