소스 검색

Merge branch 'feature/v4.8.4' of http://192.168.3.207:8080/qmx/jy into feature/v4.8.4

wangshan 2 년 전
부모
커밋
4fce49440b

+ 1 - 1
src/jfw/modules/app/src/app/front/front.go

@@ -573,7 +573,7 @@ func (s *Front) ShowRedSpotOnMenu() {
 	}
 	s.ServeJson(map[string]interface{}{
 		"subscribe":      subscribe,
-		"my":             project + ent + notice,
+		"my":             util.If(config.Sysconfig["keepShowRedSpot"].(bool), 0, project+ent+notice),
 		"notice":         notice,
 		"follow_project": project,
 		"follow_ent":     ent,

+ 2 - 1
src/jfw/modules/app/src/config.json

@@ -215,5 +215,6 @@
     "reserved_amount":true,
     "expurasingtime":true,
     "winnerMap":true
-  }
+  },
+  "keepShowRedSpot": true
 }

+ 459 - 459
src/jfw/modules/bigmember/src/service/portrait/memberPortraitAction.go

@@ -1,464 +1,464 @@
 package portrait
 
 import (
-    "fmt"
-    "jy/src/jfw/modules/bigmember/src/entity"
-    "jy/src/jfw/modules/bigmember/src/util"
-    "log"
-    "strings"
+	"fmt"
+	"jy/src/jfw/modules/bigmember/src/entity"
+	"jy/src/jfw/modules/bigmember/src/util"
+	"log"
+	"strings"
 
-    . "app.yhyue.com/moapp/jybase/api"
-    qutil "app.yhyue.com/moapp/jybase/common"
-    "app.yhyue.com/moapp/jybase/encrypt"
+	. "app.yhyue.com/moapp/jybase/api"
+	qutil "app.yhyue.com/moapp/jybase/common"
+	"app.yhyue.com/moapp/jybase/encrypt"
 
-    "app.yhyue.com/moapp/jybase/go-xweb/xweb"
+	"app.yhyue.com/moapp/jybase/go-xweb/xweb"
 )
 
 //EntPortrait 大会员画像接口
 type EntPortrait struct {
-    *xweb.Action
-    //中标企业画像
-    entDetail          xweb.Mapper `xweb:"/portrait/ent/detail"`                //企业基本信息
-    winnerContacts     xweb.Mapper `xweb:"/portrait/winner/contacts"`           //历史项目联系方式
-    winnerSelects      xweb.Mapper `xweb:"/portrait/winner/selects"`            //企业画像可筛选项
-    winnerNewMsg       xweb.Mapper `xweb:"/portrait/winner/getNewMsg"`          //最新项目动态(需购买项目进度监控)[筛选]
-    winnerNewMsgExport xweb.Mapper `xweb:"/portrait/winner/winnerNewMsgExport"` //最新项目动态数据导出
-    winnerPortrait     xweb.Mapper `xweb:"/portrait/winner/getData"`            //中标企业画像数据[筛选]
-    winnerMiniPortrait xweb.Mapper `xweb:"/portrait/winner/miniData"`           //三级页展示中标企业基础画像信息
-    //采购单位画像
-    buyerContacts     xweb.Mapper `xweb:"/portrait/buyer/contacts"`        //采购项目联系方式
-    buyerSelects      xweb.Mapper `xweb:"/portrait/buyer/selects"`         //采购单位画像可筛选项
-    buyerNewMsg       xweb.Mapper `xweb:"/portrait/buyer/getNewMsg"`       //最新项目动态[筛选]
-    buyerNewMsgExport xweb.Mapper `xweb:"/portrait/buyer/getNewMsgExport"` //最新项目动态数据导出[筛选]
-    buyerPortrait     xweb.Mapper `xweb:"/portrait/buyer/getData"`         //采购单位画像数据[筛选]
-    buyerMiniPortrait xweb.Mapper `xweb:"/portrait/buyer/miniData"`        //三级页展示采购单位基础画像信息
-    portraitContacts  xweb.Mapper `xweb:"/portrait/contacts"`              // 画像通讯录接口
+	*xweb.Action
+	//中标企业画像
+	entDetail          xweb.Mapper `xweb:"/portrait/ent/detail"`                //企业基本信息
+	winnerContacts     xweb.Mapper `xweb:"/portrait/winner/contacts"`           //历史项目联系方式
+	winnerSelects      xweb.Mapper `xweb:"/portrait/winner/selects"`            //企业画像可筛选项
+	winnerNewMsg       xweb.Mapper `xweb:"/portrait/winner/getNewMsg"`          //最新项目动态(需购买项目进度监控)[筛选]
+	winnerNewMsgExport xweb.Mapper `xweb:"/portrait/winner/winnerNewMsgExport"` //最新项目动态数据导出
+	winnerPortrait     xweb.Mapper `xweb:"/portrait/winner/getData"`            //中标企业画像数据[筛选]
+	winnerMiniPortrait xweb.Mapper `xweb:"/portrait/winner/miniData"`           //三级页展示中标企业基础画像信息
+	//采购单位画像
+	buyerContacts     xweb.Mapper `xweb:"/portrait/buyer/contacts"`        //采购项目联系方式
+	buyerSelects      xweb.Mapper `xweb:"/portrait/buyer/selects"`         //采购单位画像可筛选项
+	buyerNewMsg       xweb.Mapper `xweb:"/portrait/buyer/getNewMsg"`       //最新项目动态[筛选]
+	buyerNewMsgExport xweb.Mapper `xweb:"/portrait/buyer/getNewMsgExport"` //最新项目动态数据导出[筛选]
+	buyerPortrait     xweb.Mapper `xweb:"/portrait/buyer/getData"`         //采购单位画像数据[筛选]
+	buyerMiniPortrait xweb.Mapper `xweb:"/portrait/buyer/miniData"`        //三级页展示采购单位基础画像信息
+	portraitContacts  xweb.Mapper `xweb:"/portrait/contacts"`              // 画像通讯录接口
 
 }
 
 //EntDetail 企业基本信息
 func (this *EntPortrait) EntDetail() {
-    userId := qutil.ObjToString(this.GetSession("userId"))
-    rData, errMsg := func() (interface{}, error) {
-        cepm, _, err, _ := entity.CreatePortraitManager(this.Session(), "entDetail")
-        if err != nil {
-            return nil, err
-        }
-        entId := this.GetString("entId")
-        entInfo, err := cepm.GetEntInfo(util.DecodeId(entId))
-        if err != nil {
-            return nil, err
-        }
-        return entInfo, nil
-    }()
-    if errMsg != nil {
-        log.Printf("%s 企业画像-查询企业基本信息:%s\n", userId, errMsg.Error())
-    }
-    this.ServeJson(NewResult(rData, errMsg))
+	userId := qutil.ObjToString(this.GetSession("userId"))
+	rData, errMsg := func() (interface{}, error) {
+		cepm, _, err, _ := entity.CreatePortraitManager(this.Session(), "entDetail")
+		if err != nil {
+			return nil, err
+		}
+		entId := this.GetString("entId")
+		entInfo, err := cepm.GetEntInfo(util.DecodeId(entId))
+		if err != nil {
+			return nil, err
+		}
+		return entInfo, nil
+	}()
+	if errMsg != nil {
+		log.Printf("%s 企业画像-查询企业基本信息:%s\n", userId, errMsg.Error())
+	}
+	this.ServeJson(NewResult(rData, errMsg))
 }
 
 //WinnerContacts 中标企业历史联系人
 func (this *EntPortrait) WinnerContacts() {
-    userId := qutil.ObjToString(this.GetSession("userId"))
-    rData, errMsg := func() (interface{}, error) {
-        cepm, hasPower, err, _ := entity.CreatePortraitManager(this.Session(), "entPortrait")
-        if err != nil {
-            return nil, err
-        }
-        if !hasPower {
-            return nil, fmt.Errorf("非法请求")
-        }
-        entId := util.DecodeId(this.GetString("entId"))
-        rData, err := cepm.GetWinnerContactsMsg(entId)
-        if err != nil {
-            return nil, err
-        }
-        return map[string]interface{}{
-            "list": rData,
-        }, nil
-    }()
-    if errMsg != nil {
-        log.Printf("%s WinnerContacts获取历史项目联系方式出错:%s\n", userId, errMsg.Error())
-    }
-    this.ServeJson(NewResult(rData, errMsg))
+	userId := qutil.ObjToString(this.GetSession("userId"))
+	rData, errMsg := func() (interface{}, error) {
+		cepm, hasPower, err, _ := entity.CreatePortraitManager(this.Session(), "entPortrait")
+		if err != nil {
+			return nil, err
+		}
+		if !hasPower {
+			return nil, fmt.Errorf("非法请求")
+		}
+		entId := util.DecodeId(this.GetString("entId"))
+		rData, err := cepm.GetWinnerContactsMsg(entId)
+		if err != nil {
+			return nil, err
+		}
+		return map[string]interface{}{
+			"list": rData,
+		}, nil
+	}()
+	if errMsg != nil {
+		log.Printf("%s WinnerContacts获取历史项目联系方式出错:%s\n", userId, errMsg.Error())
+	}
+	this.ServeJson(NewResult(rData, errMsg))
 }
 
 // WinnerSelects 企业画像可供筛选的条件
 func (this *EntPortrait) WinnerSelects() {
-    userId := qutil.ObjToString(this.GetSession("userId"))
-    rData, errMsg := func() (interface{}, error) {
-        entId := util.DecodeId(this.GetString("entId"))
-        if entId == "" {
-            return nil, fmt.Errorf("企业参数异常")
-        }
-        _, _, err, _ := entity.CreatePortraitManager(this.Session(), "entNewMsg")
-        if err != nil {
-            return nil, err
-        }
-        //if !hasPower {
-        //	return nil, fmt.Errorf("非法请求")
-        //}
-        pwp := &entity.PortraitScreen{Ent: fmt.Sprint(qutil.Int64All(entId))}
-        return pwp.GetProjectSelectItems(true)
-    }()
-    if errMsg != nil {
-        log.Printf("%s WinnerSelects 获取企业画像可筛选条件出错:%s\n", userId, errMsg.Error())
-    }
-    this.ServeJson(NewResult(rData, errMsg))
+	userId := qutil.ObjToString(this.GetSession("userId"))
+	rData, errMsg := func() (interface{}, error) {
+		entId := util.DecodeId(this.GetString("entId"))
+		if entId == "" {
+			return nil, fmt.Errorf("企业参数异常")
+		}
+		_, _, err, _ := entity.CreatePortraitManager(this.Session(), "entNewMsg")
+		if err != nil {
+			return nil, err
+		}
+		//if !hasPower {
+		//	return nil, fmt.Errorf("非法请求")
+		//}
+		pwp := &entity.PortraitScreen{Ent: qutil.InterfaceToStr(entId)}
+		return pwp.GetProjectSelectItems(true)
+	}()
+	if errMsg != nil {
+		log.Printf("%s WinnerSelects 获取企业画像可筛选条件出错:%s\n", userId, errMsg.Error())
+	}
+	this.ServeJson(NewResult(rData, errMsg))
 }
 
 //WinnerNewMsg 企业画像-最新项目动态
 func (this *EntPortrait) WinnerNewMsg() {
-    userId := qutil.ObjToString(this.GetSession("userId"))
-    rData, errMsg := func() (interface{}, error) {
-        entId := util.DecodeId(this.GetString("entId"))
-        if entId == "" {
-            return nil, fmt.Errorf("企业参数异常")
-        }
-        cepm, hasPower, err, _ := entity.CreatePortraitManager(this.Session(), "entNewMsg")
-        if err != nil {
-            return nil, err
-        }
-        if !hasPower {
-            return nil, fmt.Errorf("非法请求")
-        }
-        pageNum, _ := this.GetInteger("pageNum")
-        pageSize, _ := this.GetInteger("pageSize")
+	userId := qutil.ObjToString(this.GetSession("userId"))
+	rData, errMsg := func() (interface{}, error) {
+		entId := util.DecodeId(this.GetString("entId"))
+		if entId == "" {
+			return nil, fmt.Errorf("企业参数异常")
+		}
+		cepm, hasPower, err, _ := entity.CreatePortraitManager(this.Session(), "entNewMsg")
+		if err != nil {
+			return nil, err
+		}
+		if !hasPower {
+			return nil, fmt.Errorf("非法请求")
+		}
+		pageNum, _ := this.GetInteger("pageNum")
+		pageSize, _ := this.GetInteger("pageSize")
 
-        rData, total, err := cepm.GetWinnerNewMsg(&entity.PortraitProjectScreen{
-            Screen: &entity.PortraitScreen{
-                Ent:        entId,
-                Match:      this.GetString("match"),
-                ExactMatch: this.GetString("exactMatch") == "1",
-                MatchRange: this.GetString("matchRange"),
-                Area:       this.GetString("area"),
-                ScopeClass: this.GetString("scopeClass"),
-                TimeRange:  this.GetString("timeRange"),
-                HasPower:   hasPower,
-            },
-            PageNum:  pageNum,
-            PageSize: pageSize,
-        })
-        if err != nil {
-            return nil, err
-        }
-        return map[string]interface{}{
-            "list":  rData,
-            "count": total,
-        }, nil
-    }()
-    if errMsg != nil {
-        log.Printf("%s WinnerNewMsg获取企业最新中标信息出错:%s\n", userId, errMsg.Error())
-    }
-    this.ServeJson(NewResult(rData, errMsg))
+		rData, total, err := cepm.GetWinnerNewMsg(&entity.PortraitProjectScreen{
+			Screen: &entity.PortraitScreen{
+				Ent:        entId,
+				Match:      this.GetString("match"),
+				ExactMatch: this.GetString("exactMatch") == "1",
+				MatchRange: this.GetString("matchRange"),
+				Area:       this.GetString("area"),
+				ScopeClass: this.GetString("scopeClass"),
+				TimeRange:  this.GetString("timeRange"),
+				HasPower:   hasPower,
+			},
+			PageNum:  pageNum,
+			PageSize: pageSize,
+		})
+		if err != nil {
+			return nil, err
+		}
+		return map[string]interface{}{
+			"list":  rData,
+			"count": total,
+		}, nil
+	}()
+	if errMsg != nil {
+		log.Printf("%s WinnerNewMsg获取企业最新中标信息出错:%s\n", userId, errMsg.Error())
+	}
+	this.ServeJson(NewResult(rData, errMsg))
 }
 
 //WinnerNewMsgExport 企业画像-最新项目动态
 func (this *EntPortrait) WinnerNewMsgExport() {
-    userId := qutil.ObjToString(this.GetSession("userId"))
-    rData, errMsg := func() (interface{}, error) {
-        entId := util.DecodeId(this.GetString("entId"))
-        if entId == "" {
-            return nil, fmt.Errorf("企业参数异常")
-        }
-        cepm, hasPower, err, free := entity.CreatePortraitManager(this.Session(), "entNewMsg")
-        if err != nil {
-            return nil, err
-        }
-        if !hasPower {
-            return nil, fmt.Errorf("非法请求")
-        }
-        //查询数据导出数据id列
-        pps := &entity.PortraitProjectScreen{
-            Screen: &entity.PortraitScreen{
-                Ent:        entId,
-                Match:      this.GetString("match"),
-                ExactMatch: this.GetString("exactMatch") == "1",
-                MatchRange: this.GetString("matchRange"),
-                Area:       this.GetString("area"),
-                ScopeClass: this.GetString("scopeClass"),
-                TimeRange:  this.GetString("timeRange"),
-                HasPower:   hasPower,
-            },
-            IsExport: true,
-            Free:     free,
-        }
-        ids := getSelectIds(this.GetString("selectIds"))
-        if ids == nil || len(ids) == 0 {
-            ids, err = cepm.GetWinnerNewExport(pps)
-            if err != nil {
-                return nil, err
-            }
-        } else {
-            pps.CommonPare(true)
-        }
-        _id, err := cepm.SaveExportRecord(pps, ids, entId, "winnerPortrait")
-        if err != nil {
-            return nil, err
-        }
-        return _id, nil
-    }()
-    if errMsg != nil {
-        log.Printf("%s WinnerNewMsgExport获取企业最新中标信息出错:%s\n", userId, errMsg.Error())
-    }
-    this.ServeJson(NewResult(rData, errMsg))
+	userId := qutil.ObjToString(this.GetSession("userId"))
+	rData, errMsg := func() (interface{}, error) {
+		entId := util.DecodeId(this.GetString("entId"))
+		if entId == "" {
+			return nil, fmt.Errorf("企业参数异常")
+		}
+		cepm, hasPower, err, free := entity.CreatePortraitManager(this.Session(), "entNewMsg")
+		if err != nil {
+			return nil, err
+		}
+		if !hasPower {
+			return nil, fmt.Errorf("非法请求")
+		}
+		//查询数据导出数据id列
+		pps := &entity.PortraitProjectScreen{
+			Screen: &entity.PortraitScreen{
+				Ent:        entId,
+				Match:      this.GetString("match"),
+				ExactMatch: this.GetString("exactMatch") == "1",
+				MatchRange: this.GetString("matchRange"),
+				Area:       this.GetString("area"),
+				ScopeClass: this.GetString("scopeClass"),
+				TimeRange:  this.GetString("timeRange"),
+				HasPower:   hasPower,
+			},
+			IsExport: true,
+			Free:     free,
+		}
+		ids := getSelectIds(this.GetString("selectIds"))
+		if ids == nil || len(ids) == 0 {
+			ids, err = cepm.GetWinnerNewExport(pps)
+			if err != nil {
+				return nil, err
+			}
+		} else {
+			pps.CommonPare(true)
+		}
+		_id, err := cepm.SaveExportRecord(pps, ids, entId, "winnerPortrait")
+		if err != nil {
+			return nil, err
+		}
+		return _id, nil
+	}()
+	if errMsg != nil {
+		log.Printf("%s WinnerNewMsgExport获取企业最新中标信息出错:%s\n", userId, errMsg.Error())
+	}
+	this.ServeJson(NewResult(rData, errMsg))
 }
 
 //WinnerPortrait 企业画像-画像数据查询
 func (this *EntPortrait) WinnerPortrait() {
-    userId := qutil.ObjToString(this.GetSession("userId"))
-    rData, errMsg := func() (interface{}, error) {
-        cepm, hasPower, err, _ := entity.CreatePortraitManager(this.Session(), "entPortrait")
-        if err != nil {
-            return nil, err
-        }
-        entId := this.GetString("entId")
-        rData, err := cepm.WinnerPortraitData(&entity.PortraitScreen{
-            Ent:        util.DecodeId(entId),
-            Match:      this.GetString("match"),
-            ExactMatch: this.GetString("exactMatch") == "1",
-            MatchRange: this.GetString("matchRange"),
-            Area:       this.GetString("area"),
-            ScopeClass: this.GetString("scopeClass"),
-            TimeRange:  this.GetString("timeRange"),
-            HasPower:   hasPower,
-        })
-        if err != nil {
-            return nil, err
-        }
-        return rData, nil
-    }()
-    if errMsg != nil {
-        log.Printf("%s WinnerPortrait获取企业画像标信息出错:%s\n", userId, errMsg.Error())
-    }
-    this.ServeJson(NewResult(rData, errMsg))
+	userId := qutil.ObjToString(this.GetSession("userId"))
+	rData, errMsg := func() (interface{}, error) {
+		cepm, hasPower, err, _ := entity.CreatePortraitManager(this.Session(), "entPortrait")
+		if err != nil {
+			return nil, err
+		}
+		entId := this.GetString("entId")
+		rData, err := cepm.WinnerPortraitData(&entity.PortraitScreen{
+			Ent:        util.DecodeId(entId),
+			Match:      this.GetString("match"),
+			ExactMatch: this.GetString("exactMatch") == "1",
+			MatchRange: this.GetString("matchRange"),
+			Area:       this.GetString("area"),
+			ScopeClass: this.GetString("scopeClass"),
+			TimeRange:  this.GetString("timeRange"),
+			HasPower:   hasPower,
+		})
+		if err != nil {
+			return nil, err
+		}
+		return rData, nil
+	}()
+	if errMsg != nil {
+		log.Printf("%s WinnerPortrait获取企业画像标信息出错:%s\n", userId, errMsg.Error())
+	}
+	this.ServeJson(NewResult(rData, errMsg))
 }
 
 //WinnerMiniPortrait 三级页中标单位引流数据展示(免费)
 func (this *EntPortrait) WinnerMiniPortrait() {
-    userId := qutil.ObjToString(this.GetSession("userId"))
-    rData, errMsg := func() (interface{}, error) {
-        cepm, _, err, _ := entity.CreatePortraitManager(this.Session(), "entPortrait")
-        if err != nil {
-            return nil, err
-        }
-        entId := util.DecodeId(this.GetString("entId"))
-        rData, err := cepm.WinnerMiniPortraitData(entId) //项目个数,项目金额
-        if err != nil {
-            return nil, err
-        }
-        //公司状态
-        if entInfo, err := cepm.GetEntInfo(entId); err == nil {
-            rData["status"] = entInfo["status"]
-            rData["type"] = entInfo["type"]
-            rData["company_name"] = entInfo["entName"]
-        }
-        //项目动态数量
-        rData["biddingCount"] = cepm.GetWinnerNewCount(entId)
-        //历史联系人
-        if contactList, err := cepm.GetWinnerContactsMsg(entId); err == nil {
-            rData["contactList"], rData["contactCount"] = formatContact(contactList)
-        }
-        return rData, nil
-    }()
-    if errMsg != nil {
-        log.Printf("%s WinnerPortrait获取企业画像标信息出错:%s\n", userId, errMsg.Error())
-    }
-    this.ServeJson(NewResult(rData, errMsg))
+	userId := qutil.ObjToString(this.GetSession("userId"))
+	rData, errMsg := func() (interface{}, error) {
+		cepm, _, err, _ := entity.CreatePortraitManager(this.Session(), "entPortrait")
+		if err != nil {
+			return nil, err
+		}
+		entId := util.DecodeId(this.GetString("entId"))
+		rData, err := cepm.WinnerMiniPortraitData(entId) //项目个数,项目金额
+		if err != nil {
+			return nil, err
+		}
+		//公司状态
+		if entInfo, err := cepm.GetEntInfo(entId); err == nil {
+			rData["status"] = entInfo["status"]
+			rData["type"] = entInfo["type"]
+			rData["company_name"] = entInfo["entName"]
+		}
+		//项目动态数量
+		rData["biddingCount"] = cepm.GetWinnerNewCount(entId)
+		//历史联系人
+		if contactList, err := cepm.GetWinnerContactsMsg(entId); err == nil {
+			rData["contactList"], rData["contactCount"] = formatContact(contactList)
+		}
+		return rData, nil
+	}()
+	if errMsg != nil {
+		log.Printf("%s WinnerPortrait获取企业画像标信息出错:%s\n", userId, errMsg.Error())
+	}
+	this.ServeJson(NewResult(rData, errMsg))
 }
 
 //BuyerSelects 采购单位画像可供筛选的条件
 //dev.6.2.1免费用户可筛选画像
 func (this *EntPortrait) BuyerSelects() {
-    userId := qutil.ObjToString(this.GetSession("userId"))
-    rData, errMsg := func() (interface{}, error) {
-        buyer := this.GetString("buyer")
-        if buyer == "" {
-            return nil, fmt.Errorf("企业参数异常")
-        }
-        _, _, err, _ := entity.CreatePortraitManager(this.Session(), "buyerPortrait")
-        if err != nil {
-            return nil, err
-        }
-        pwp := &entity.PortraitScreen{Ent: buyer}
-        return pwp.GetProjectSelectItems(false)
-    }()
-    if errMsg != nil {
-        log.Printf("%s BuyerSelects 获取采购的单位画像可筛选条件出错:%s\n", userId, errMsg.Error())
-    }
-    this.ServeJson(NewResult(rData, errMsg))
+	userId := qutil.ObjToString(this.GetSession("userId"))
+	rData, errMsg := func() (interface{}, error) {
+		buyer := this.GetString("buyer")
+		if buyer == "" {
+			return nil, fmt.Errorf("企业参数异常")
+		}
+		_, _, err, _ := entity.CreatePortraitManager(this.Session(), "buyerPortrait")
+		if err != nil {
+			return nil, err
+		}
+		pwp := &entity.PortraitScreen{Ent: buyer}
+		return pwp.GetProjectSelectItems(false)
+	}()
+	if errMsg != nil {
+		log.Printf("%s BuyerSelects 获取采购的单位画像可筛选条件出错:%s\n", userId, errMsg.Error())
+	}
+	this.ServeJson(NewResult(rData, errMsg))
 }
 
 //BuyerNewMsg 采购单位画像-最新招标动态(免费用户仅可查看3条记录,付费50条)
 func (this *EntPortrait) BuyerNewMsg() {
-    userId := qutil.ObjToString(this.GetSession("userId"))
-    rData, errMsg := func() (interface{}, error) {
-        cepm, hasPower, err, _ := entity.CreatePortraitManager(this.Session(), "buyerPortrait")
-        if err != nil {
-            return nil, err
-        }
+	userId := qutil.ObjToString(this.GetSession("userId"))
+	rData, errMsg := func() (interface{}, error) {
+		cepm, hasPower, err, _ := entity.CreatePortraitManager(this.Session(), "buyerPortrait")
+		if err != nil {
+			return nil, err
+		}
 
-        buyer := this.GetString("buyer")
-        pageNum, _ := this.GetInteger("pageNum")
-        pageSize, _ := this.GetInteger("pageSize")
+		buyer := this.GetString("buyer")
+		pageNum, _ := this.GetInteger("pageNum")
+		pageSize, _ := this.GetInteger("pageSize")
 
-        //免费用户仅可查看三条记录
-        rData, total, err := cepm.GetBuyerNewMsg(&entity.PortraitProjectScreen{
-            Screen: &entity.PortraitScreen{
-                Ent:        buyer,
-                Match:      this.GetString("match"),
-                ExactMatch: this.GetString("exactMatch") == "1",
-                MatchRange: this.GetString("matchRange"),
-                Area:       this.GetString("area"),
-                ScopeClass: this.GetString("scopeClass"),
-                TimeRange:  this.GetString("timeRange"),
-                HasPower:   hasPower,
-            },
-            PageNum:  pageNum,
-            PageSize: pageSize,
-        })
-        if err != nil {
-            return nil, err
-        }
-        return map[string]interface{}{
-            "list":  rData,
-            "count": total,
-        }, nil
-    }()
-    if errMsg != nil {
-        log.Printf("%s BuyerNewMsg获取采购单位最新招标信息出错:%s\n", userId, errMsg.Error())
-    }
-    this.ServeJson(NewResult(rData, errMsg))
+		//免费用户仅可查看三条记录
+		rData, total, err := cepm.GetBuyerNewMsg(&entity.PortraitProjectScreen{
+			Screen: &entity.PortraitScreen{
+				Ent:        buyer,
+				Match:      this.GetString("match"),
+				ExactMatch: this.GetString("exactMatch") == "1",
+				MatchRange: this.GetString("matchRange"),
+				Area:       this.GetString("area"),
+				ScopeClass: this.GetString("scopeClass"),
+				TimeRange:  this.GetString("timeRange"),
+				HasPower:   hasPower,
+			},
+			PageNum:  pageNum,
+			PageSize: pageSize,
+		})
+		if err != nil {
+			return nil, err
+		}
+		return map[string]interface{}{
+			"list":  rData,
+			"count": total,
+		}, nil
+	}()
+	if errMsg != nil {
+		log.Printf("%s BuyerNewMsg获取采购单位最新招标信息出错:%s\n", userId, errMsg.Error())
+	}
+	this.ServeJson(NewResult(rData, errMsg))
 }
 
 func (this *EntPortrait) BuyerNewMsgExport() {
-    userId := qutil.ObjToString(this.GetSession("userId"))
-    rData, errMsg := func() (interface{}, error) {
-        cepm, hasPower, err, free := entity.CreatePortraitManager(this.Session(), "buyerPortrait")
-        if err != nil {
-            return nil, err
-        }
-        buyer := this.GetString("buyer")
-        //免费用户仅可查看三条记录
-        pps := &entity.PortraitProjectScreen{
-            Screen: &entity.PortraitScreen{
-                Ent:        buyer,
-                Match:      this.GetString("match"),
-                ExactMatch: this.GetString("exactMatch") == "1",
-                MatchRange: this.GetString("matchRange"),
-                Area:       this.GetString("area"),
-                ScopeClass: this.GetString("scopeClass"),
-                TimeRange:  this.GetString("timeRange"),
-                HasPower:   hasPower,
-            },
-            IsExport: true,
-            Free:     free,
-        }
-        ids := getSelectIds(this.GetString("selectIds"))
-        if ids == nil || len(ids) == 0 {
-            ids, err = cepm.GetBuyerNewMsgExport(pps)
-            if err != nil {
-                return nil, err
-            }
-        } else {
-            pps.CommonPare(false)
-        }
-        _id, err := cepm.SaveExportRecord(pps, ids, buyer, "buyerPortrait")
-        if err != nil {
-            return nil, err
-        }
-        return _id, nil
-    }()
-    if errMsg != nil {
-        log.Printf("%s BuyerNewMsgExport获取采购单位最新招标信息出错:%s\n", userId, errMsg.Error())
-    }
-    this.ServeJson(NewResult(rData, errMsg))
+	userId := qutil.ObjToString(this.GetSession("userId"))
+	rData, errMsg := func() (interface{}, error) {
+		cepm, hasPower, err, free := entity.CreatePortraitManager(this.Session(), "buyerPortrait")
+		if err != nil {
+			return nil, err
+		}
+		buyer := this.GetString("buyer")
+		//免费用户仅可查看三条记录
+		pps := &entity.PortraitProjectScreen{
+			Screen: &entity.PortraitScreen{
+				Ent:        buyer,
+				Match:      this.GetString("match"),
+				ExactMatch: this.GetString("exactMatch") == "1",
+				MatchRange: this.GetString("matchRange"),
+				Area:       this.GetString("area"),
+				ScopeClass: this.GetString("scopeClass"),
+				TimeRange:  this.GetString("timeRange"),
+				HasPower:   hasPower,
+			},
+			IsExport: true,
+			Free:     free,
+		}
+		ids := getSelectIds(this.GetString("selectIds"))
+		if ids == nil || len(ids) == 0 {
+			ids, err = cepm.GetBuyerNewMsgExport(pps)
+			if err != nil {
+				return nil, err
+			}
+		} else {
+			pps.CommonPare(false)
+		}
+		_id, err := cepm.SaveExportRecord(pps, ids, buyer, "buyerPortrait")
+		if err != nil {
+			return nil, err
+		}
+		return _id, nil
+	}()
+	if errMsg != nil {
+		log.Printf("%s BuyerNewMsgExport获取采购单位最新招标信息出错:%s\n", userId, errMsg.Error())
+	}
+	this.ServeJson(NewResult(rData, errMsg))
 }
 
 //BuyerContacts 采购单位联系人(必须开通会员)
 func (this *EntPortrait) BuyerContacts() {
-    userId := qutil.ObjToString(this.GetSession("userId"))
-    rData, errMsg := func() (interface{}, error) {
-        cepm, hasPower, err, _ := entity.CreatePortraitManager(this.Session(), "buyerPortrait")
-        if err != nil {
-            return nil, err
-        }
-        if !hasPower {
-            return nil, fmt.Errorf("非法请求")
-        }
-        buyerName := this.GetString("buyer")
-        rData, err := cepm.GetBuyerContactsMsg(buyerName)
-        if err != nil {
-            return nil, err
-        }
-        return map[string]interface{}{
-            "list": rData,
-        }, nil
-    }()
-    if errMsg != nil {
-        log.Printf("%s BuyerContacts获取历史项目联系方式出错:%s\n", userId, errMsg.Error())
-    }
-    this.ServeJson(NewResult(rData, errMsg))
+	userId := qutil.ObjToString(this.GetSession("userId"))
+	rData, errMsg := func() (interface{}, error) {
+		cepm, hasPower, err, _ := entity.CreatePortraitManager(this.Session(), "buyerPortrait")
+		if err != nil {
+			return nil, err
+		}
+		if !hasPower {
+			return nil, fmt.Errorf("非法请求")
+		}
+		buyerName := this.GetString("buyer")
+		rData, err := cepm.GetBuyerContactsMsg(buyerName)
+		if err != nil {
+			return nil, err
+		}
+		return map[string]interface{}{
+			"list": rData,
+		}, nil
+	}()
+	if errMsg != nil {
+		log.Printf("%s BuyerContacts获取历史项目联系方式出错:%s\n", userId, errMsg.Error())
+	}
+	this.ServeJson(NewResult(rData, errMsg))
 }
 
 //BuyerPortrait 采购单位画像-数据(免费用户可查看基本信息、项目统计、合作企业资本、年龄及地区分布)
 func (this *EntPortrait) BuyerPortrait() {
-    userId := qutil.ObjToString(this.GetSession("userId"))
-    rData, errMsg := func() (interface{}, error) {
-        cepm, hasPower, err, _ := entity.CreatePortraitManager(this.Session(), "buyerPortrait")
-        cepm.Session = this.Session()
-        if err != nil {
-            return nil, err
-        }
-        entName := this.GetString("buyer")
-        flag := this.GetString("flag") //分段请求标识
-        rData, err := cepm.BuyerPortraitData(&entity.PortraitScreen{
-            Ent:        entName,
-            Match:      this.GetString("match"),
-            ExactMatch: this.GetString("exactMatch") == "1",
-            MatchRange: this.GetString("matchRange"),
-            Area:       this.GetString("area"),
-            ScopeClass: this.GetString("scopeClass"),
-            TimeRange:  this.GetString("timeRange"),
-            HasPower:   hasPower,
-        }, flag)
-        if err != nil {
-            return nil, err
-        }
-        return rData, nil
-    }()
-    if errMsg != nil {
-        log.Printf("%s BuyerPortrait获取采购单位画像标信息出错:%s\n", userId, errMsg.Error())
-    }
-    this.ServeJson(NewResult(rData, errMsg))
+	userId := qutil.ObjToString(this.GetSession("userId"))
+	rData, errMsg := func() (interface{}, error) {
+		cepm, hasPower, err, _ := entity.CreatePortraitManager(this.Session(), "buyerPortrait")
+		cepm.Session = this.Session()
+		if err != nil {
+			return nil, err
+		}
+		entName := this.GetString("buyer")
+		flag := this.GetString("flag") //分段请求标识
+		rData, err := cepm.BuyerPortraitData(&entity.PortraitScreen{
+			Ent:        entName,
+			Match:      this.GetString("match"),
+			ExactMatch: this.GetString("exactMatch") == "1",
+			MatchRange: this.GetString("matchRange"),
+			Area:       this.GetString("area"),
+			ScopeClass: this.GetString("scopeClass"),
+			TimeRange:  this.GetString("timeRange"),
+			HasPower:   hasPower,
+		}, flag)
+		if err != nil {
+			return nil, err
+		}
+		return rData, nil
+	}()
+	if errMsg != nil {
+		log.Printf("%s BuyerPortrait获取采购单位画像标信息出错:%s\n", userId, errMsg.Error())
+	}
+	this.ServeJson(NewResult(rData, errMsg))
 }
 
 //BuyerMiniPortrait 三级页采购单位引流数据展示(免费)
 func (this *EntPortrait) BuyerMiniPortrait() {
-    userId := qutil.ObjToString(this.GetSession("userId"))
-    rData, errMsg := func() (interface{}, error) {
-        cepm, _, err, _ := entity.CreatePortraitManager(this.Session(), "buyerPortrait")
-        if err != nil {
-            return nil, err
-        }
-        entName := this.GetString("buyer")
-        //所在地(省、市)、采购单位类型、采购项目数量、采购规模
-        rData, err := cepm.BuyerMiniPortraitData(entName)
-        if err != nil {
-            return nil, err
-        }
-        //招标动态数量
-        rData["biddingCount"] = cepm.GetBuyerNewCount(entName)
-        //采购联系人数量及历史联系人方式,成交时间(加密展示2条)
-        if contactList, err := cepm.GetBuyerContactsMsg(entName); err == nil {
-            rData["contactList"], rData["contactCount"] = formatContact(contactList)
-        }
-        return rData, nil
-    }()
-    if errMsg != nil {
-        log.Printf("%s BuyerMiniPortrait获取采购单位画像标信息出错:%s\n", userId, errMsg.Error())
-    }
-    this.ServeJson(NewResult(rData, errMsg))
+	userId := qutil.ObjToString(this.GetSession("userId"))
+	rData, errMsg := func() (interface{}, error) {
+		cepm, _, err, _ := entity.CreatePortraitManager(this.Session(), "buyerPortrait")
+		if err != nil {
+			return nil, err
+		}
+		entName := this.GetString("buyer")
+		//所在地(省、市)、采购单位类型、采购项目数量、采购规模
+		rData, err := cepm.BuyerMiniPortraitData(entName)
+		if err != nil {
+			return nil, err
+		}
+		//招标动态数量
+		rData["biddingCount"] = cepm.GetBuyerNewCount(entName)
+		//采购联系人数量及历史联系人方式,成交时间(加密展示2条)
+		if contactList, err := cepm.GetBuyerContactsMsg(entName); err == nil {
+			rData["contactList"], rData["contactCount"] = formatContact(contactList)
+		}
+		return rData, nil
+	}()
+	if errMsg != nil {
+		log.Printf("%s BuyerMiniPortrait获取采购单位画像标信息出错:%s\n", userId, errMsg.Error())
+	}
+	this.ServeJson(NewResult(rData, errMsg))
 }
 
 /*
@@ -476,77 +476,77 @@ func (this *EntPortrait) BuyerMiniPortrait() {
  */
 // PortraitContacts 画像通讯录
 func (this *EntPortrait) PortraitContacts() {
-    userId := qutil.ObjToString(this.GetSession("userId"))
-    rData, errMsg := func() (interface{}, error) {
-        entType, _ := this.GetInt("entType")
-        entName := this.GetString("entName")
-        // 画像通讯里访问权限
-        cepm, err := entity.CreatePortraitManagerForContacts(this.Session(), entType, entName)
+	userId := qutil.ObjToString(this.GetSession("userId"))
+	rData, errMsg := func() (interface{}, error) {
+		entType, _ := this.GetInt("entType")
+		entName := this.GetString("entName")
+		// 画像通讯里访问权限
+		cepm, err := entity.CreatePortraitManagerForContacts(this.Session(), entType, entName)
 
-        if err != nil {
-            return nil, err
-        }
-        rData, err := cepm.GetContacts(entName, int(entType))
-        if err != nil {
-            return nil, err
-        }
-        return map[string]interface{}{
-            "list": rData,
-        }, nil
-    }()
-    if errMsg != nil {
-        log.Printf("%s PortraitContacts获取通讯录出错:%s\n", userId, errMsg.Error())
-    }
-    this.ServeJson(NewResult(rData, errMsg))
+		if err != nil {
+			return nil, err
+		}
+		rData, err := cepm.GetContacts(entName, int(entType))
+		if err != nil {
+			return nil, err
+		}
+		return map[string]interface{}{
+			"list": rData,
+		}, nil
+	}()
+	if errMsg != nil {
+		log.Printf("%s PortraitContacts获取通讯录出错:%s\n", userId, errMsg.Error())
+	}
+	this.ServeJson(NewResult(rData, errMsg))
 }
 
 //formatContact 格式化混淆联系人电话
 func formatContact(contactList []map[string]interface{}) (confusing []map[string]interface{}, total int) {
-    total = len(contactList)
-    deConfusingMap := make(map[string]bool) //去重
-    for _, contactMap := range contactList {
-        var thePhone string
-        rowData, _ := contactMap["contacts"].(map[string]string)
-        for phone := range rowData {
-            if !deConfusingMap[phone] && phone != "" {
-                thePhone = phone
-            }
-        }
-        if len(thePhone) < 7 {
-            continue
-        }
+	total = len(contactList)
+	deConfusingMap := make(map[string]bool) //去重
+	for _, contactMap := range contactList {
+		var thePhone string
+		rowData, _ := contactMap["contacts"].(map[string]string)
+		for phone := range rowData {
+			if !deConfusingMap[phone] && phone != "" {
+				thePhone = phone
+			}
+		}
+		if len(thePhone) < 7 {
+			continue
+		}
 
-        var confusingPhone string
-        if len([]rune(thePhone)) == 11 {
-            confusingPhone = thePhone[:3] + "****" + thePhone[8:]
-        } else if len([]rune(thePhone)) == 7 {
-            confusingPhone = thePhone[:2] + "***" + thePhone[5:]
-        } else {
-            confusingPhone = thePhone[:5] + "***" + thePhone[8:]
-        }
-        deConfusingMap[confusingPhone] = true
+		var confusingPhone string
+		if len([]rune(thePhone)) == 11 {
+			confusingPhone = thePhone[:3] + "****" + thePhone[8:]
+		} else if len([]rune(thePhone)) == 7 {
+			confusingPhone = thePhone[:2] + "***" + thePhone[5:]
+		} else {
+			confusingPhone = thePhone[:5] + "***" + thePhone[8:]
+		}
+		deConfusingMap[confusingPhone] = true
 
-        confusing = append(confusing, map[string]interface{}{
-            "contact": confusingPhone,
-            "date":    contactMap["date"],
-        })
-        //仅返回两条
-        if len(confusing) == 2 {
-            break
-        }
-    }
-    return
+		confusing = append(confusing, map[string]interface{}{
+			"contact": confusingPhone,
+			"date":    contactMap["date"],
+		})
+		//仅返回两条
+		if len(confusing) == 2 {
+			break
+		}
+	}
+	return
 }
 
 func getSelectIds(selectIds string) (ids []string) {
-    if selectIds != "" { //选中导出
-        for _, encodeId := range strings.Split(selectIds, ",") {
-            if tmp := encrypt.CommonDecodeArticle("content", encodeId); len(tmp) > 0 {
-                if id := tmp[0]; id != "" {
-                    ids = append(ids, id)
-                }
-            }
-        }
-    }
-    return
+	if selectIds != "" { //选中导出
+		for _, encodeId := range strings.Split(selectIds, ",") {
+			if tmp := encrypt.CommonDecodeArticle("content", encodeId); len(tmp) > 0 {
+				if id := tmp[0]; id != "" {
+					ids = append(ids, id)
+				}
+			}
+		}
+	}
+	return
 }