|
@@ -2,6 +2,8 @@ package internal
|
|
|
|
|
|
import (
|
|
|
"analyze/internal/consts"
|
|
|
+ "analyze/internal/model"
|
|
|
+ "analyze/internal/model/do"
|
|
|
"analyze/internal/model/entity"
|
|
|
"analyze/utility"
|
|
|
"app.yhyue.com/moapp/jybase/common"
|
|
@@ -1308,7 +1310,54 @@ func (ut *UserTask) Calculate(pt *entity.ProjectInfo) {
|
|
|
}
|
|
|
|
|
|
// ResultSave 结果保存
|
|
|
-func (ut *UserTask) ResultSave() {}
|
|
|
+func (ut *UserTask) ResultSave() {
|
|
|
+ //市场概况+时间分布
|
|
|
+ scale := ut.Result.Scale
|
|
|
+ if scale.MarketProfile.ProjectCount > 0 {
|
|
|
+ var scaleMap = common.StructToMapMore(scale)
|
|
|
+ scaleMap["s_m_id"] = ut.Id
|
|
|
+ delete(scaleMap, "project_info_all")
|
|
|
+ if id := do.Mgo.Save(consts.MarketScaleMain, scaleMap); id == "" {
|
|
|
+ g.Log().Info(model.Ctx, fmt.Sprintf("marketanalysisreport -- 保存失败-:%s , %s", consts.MarketScaleMain, ut.Id))
|
|
|
+ }
|
|
|
+ }
|
|
|
+ //项目规模TOP10 集合
|
|
|
+ topProject := ut.Result.TopProject
|
|
|
+ if len(topProject.ProjectTop10) > 0 {
|
|
|
+ var topProject10 = common.StructToMapMore(topProject.ProjectTop10)
|
|
|
+ topProject10["s_m_id"] = ut.Id
|
|
|
+ if id := do.Mgo.Save(consts.MarketTopProject, topProject10); id == "" {
|
|
|
+ g.Log().Info(model.Ctx, fmt.Sprintf("marketanalysisreport -- 保存失败-:%s , %s", consts.MarketTopProject, ut.Id))
|
|
|
+ }
|
|
|
+ }
|
|
|
+ ///* 项目规模 地区分布 客户分布 地区客户top3*/
|
|
|
+ pad := ut.Result.ProjectAllData
|
|
|
+ if len(pad.ProjectScale) > 0 {
|
|
|
+ var padMap = common.StructToMapMore(pad)
|
|
|
+ padMap["s_m_id"] = ut.Id
|
|
|
+ if id := do.Mgo.Save(consts.MarketProjectAllData, padMap); id == "" {
|
|
|
+ g.Log().Info(model.Ctx, fmt.Sprintf("marketanalysisreport -- 保存失败-:%s , %s", consts.MarketProjectAllData, ut.Id))
|
|
|
+ }
|
|
|
+ }
|
|
|
+ //细化市场
|
|
|
+ sr := ut.Result.ScaleRefine
|
|
|
+ if len(sr.ScaleRefineAll) > 0 {
|
|
|
+ var srMap = common.StructToMapMore(sr)
|
|
|
+ srMap["s_m_id"] = ut.Id
|
|
|
+ if id := do.Mgo.Save(consts.MarketScaleRefine, srMap); id == "" {
|
|
|
+ g.Log().Info(model.Ctx, fmt.Sprintf("marketanalysisreport -- 保存失败-:%s , %s", consts.MarketScaleRefine, ut.Id))
|
|
|
+ }
|
|
|
+ }
|
|
|
+ ///* 市场-采购单位&&中标企业*/
|
|
|
+ baw := ut.Result.BuyerAndWinner
|
|
|
+ if len(baw.WinnerCountTop3) > 0 {
|
|
|
+ var bawMap = common.StructToMapMore(baw)
|
|
|
+ bawMap["s_m_id"] = ut.Id
|
|
|
+ if id := do.Mgo.Save(consts.MarketBuyerAndWinner, bawMap); id == "" {
|
|
|
+ g.Log().Info(model.Ctx, fmt.Sprintf("marketanalysisreport -- 保存失败-:%s , %s", consts.MarketBuyerAndWinner, ut.Id))
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|
|
|
|
|
|
// ForMatData 获取格式化请求参数
|
|
|
func (ut *UserTask) ForMatData() error {
|