瀏覽代碼

Merge branch 'dev/v4.8.26_fuwencai' of qmx/jy into feature/v4.8.26

wangshan 2 年之前
父節點
當前提交
f04aaef980

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

@@ -182,5 +182,6 @@
   },
   "contextOldVipLimit": 1664553600,
   "potentialCount": 1000,
-  "newDataTime": 1685606275
+  "newDataTime": 1685606275,
+  "projectCount": 5000
 }

+ 1 - 0
src/jfw/modules/bigmember/src/config/config.go

@@ -68,6 +68,7 @@ type config struct {
 	ContextOldVipLimit int64 `json:"contextOldVipLimit"` //超级订阅部分用户:--- 超前项目权限
 	PotentialCount     int   `json:"potentialCount"`     //潜在客户 潜在竞争对手数据量
 	NewDataTime        int64 `json:"newDataTime"`        // 用于周边月报区分是否为新数据 、配置为p350发版的时间
+	ProjectCount       int   `json:"projectCount"`       //画像和报告项目明细最大数量
 }
 
 type CustomerInfo struct {

+ 18 - 15
src/jfw/modules/bigmember/src/entity/marketAnalysis/marketAnalysisEntity.go

@@ -97,17 +97,17 @@ type projectInfo struct {
 }
 
 type ProjectList struct {
-	Name       string  `json:"name"`       //项目名称
-	Id         string  `json:"id"`         //项目id
-	Area       string  `json:"area"`       //地区
-	DealTime   int64   `json:"dealTime"`   //成交时间
-	BidStatus  string  `json:"bidStatus"`  //项目类型
-	BuyerClass string  `json:"buyerClass"` //采购单位类型
-	Winner     string  `json:"winner"`     //中标单位
-	WinnerId   string  `json:"winnerId"`   //中标单位id
-	Buyer      string  `json:"buyer"`      //采购单位
-	BidAmount  float64 `json:"bidAmount"`  //中标金额
-	Budget     float64 `json:"budget"`     //预算
+	Name       string   `json:"name"`       //项目名称
+	Id         string   `json:"id"`         //项目id
+	Area       string   `json:"area"`       //地区
+	DealTime   int64    `json:"dealTime"`   //成交时间
+	BidStatus  string   `json:"bidStatus"`  //项目类型
+	BuyerClass string   `json:"buyerClass"` //采购单位类型
+	Winner     []string `json:"winner"`     //中标单位
+	WinnerId   []string `json:"winnerId"`   //中标单位id
+	Buyer      string   `json:"buyer"`      //采购单位
+	BidAmount  float64  `json:"bidAmount"`  //中标金额
+	Budget     float64  `json:"budget"`     //预算
 }
 
 // ForMatData 获取格式化请求参数
@@ -172,10 +172,13 @@ func (mae *MarketAnalysisEntity) ForMatData() error {
 	mae.FormatParam.Buyer = mae.BaseParam.Buyer
 	//排序
 	mae.FormatParam.Sort = qutil.If(mae.BaseParam.Sort != 0 && mae.BaseParam.Sort != 1, 0, mae.BaseParam.Sort).(int)
+	if mae.BaseParam.PageNum*mae.BaseParam.PageSize > config.Config.ProjectCount {
+		mae.BaseParam.PageNum = config.Config.ProjectCount / mae.BaseParam.PageSize
+	}
 	//当前页码
-	mae.FormatParam.PageNum = qutil.If(mae.BaseParam.PageNum < 1 || mae.BaseParam.PageNum > 100, 1, mae.BaseParam.PageNum).(int)
+	mae.FormatParam.PageNum = qutil.If(mae.BaseParam.PageNum < 1 || mae.BaseParam.PageNum > 1000, 1, mae.BaseParam.PageNum).(int)
 	//默认每页10条
-	mae.FormatParam.PageSize = qutil.If(mae.BaseParam.PageSize < 1 || mae.BaseParam.PageSize > 50, 50, mae.BaseParam.PageSize).(int)
+	mae.FormatParam.PageSize = qutil.If(mae.BaseParam.PageSize < 1 || mae.BaseParam.PageSize > 100, 50, mae.BaseParam.PageSize).(int)
 	return nil
 }
 
@@ -216,8 +219,8 @@ func (mae *MarketAnalysisEntity) GetProjectInfoList() error {
 				DealTime:   qutil.Int64All(v["jgtime"]), //截止时间
 				BidStatus:  qutil.ObjToString(v["bidstatus"]),
 				BuyerClass: qutil.ObjToString(v["buyerclass"]),
-				Winner:     qutil.ObjToString(v["s_winner"]),
-				WinnerId:   strings.Join(winnerIdArr, ","),
+				Winner:     strings.Split(qutil.ObjToString(v["s_winner"]), ","),
+				WinnerId:   winnerIdArr,
 				Buyer:      qutil.ObjToString(v["buyer"]),
 				BidAmount:  qutil.Float64All(v["bidamount"]), //中标金额
 				Budget:     qutil.Float64All(v["budget"]),    //预算

+ 5 - 4
src/jfw/modules/bigmember/src/entity/report.go

@@ -16,7 +16,7 @@ type ReportProjectInfoParam struct {
 	Items      []string            `json:"items"`      // 订阅关键词组
 	Area       map[string][]string `json:"area"`       // 省份城市
 	Industry   []string            `json:"industry"`   // 行业
-	Buyerclass []string            `json:"buyerclass"` // 采购单位类型
+	BuyerClass []string            `json:"buyerClass"` // 采购单位类型
 	Buyer      string              `json:"buyer"`      // 采购单位
 	Winner     string              `json:"winner"`     // 中标单位
 	Sort       int                 `json:"sort"`       // 排序默认0:成交时间倒序;1:项目金额倒序
@@ -77,11 +77,11 @@ func GetReportProjectInfo(param *ReportProjectInfoParam, positionId int64) (data
 		qstr = append(qstr, fmt.Sprintf("subscopeclass in (%s)", strings.Join(tmpArr, ",")))
 	}
 	// 采购单位类型
-	if param.Buyerclass != nil && len(param.Buyerclass) > 0 {
+	if param.BuyerClass != nil && len(param.BuyerClass) > 0 {
 		tmpArr := []string{}
-		for i := 0; i < len(param.Buyerclass); i++ {
+		for i := 0; i < len(param.BuyerClass); i++ {
 			tmpArr = append(tmpArr, "?")
-			values = append(values, param.Buyerclass[i])
+			values = append(values, param.BuyerClass[i])
 		}
 		qstr = append(qstr, fmt.Sprintf("buyerclass in (%s)", strings.Join(tmpArr, ",")))
 	}
@@ -133,6 +133,7 @@ func ReportProjectInfoFormat(data []map[string]interface{}) []map[string]interfa
 			}
 			winIdArr = append(winIdArr, splitWinnerId[j])
 		}
+		tmp["id"] = encrypt.EncodeArticleId2ByCheck(common.ObjToString(data[i]["source_infoid"]))
 		tmp["winnerId"] = winIdArr
 		tmp["winner"] = strings.Split(tmpWinner, ",")
 		tmp["name"] = common.ObjToString(data[i]["name"])

+ 7 - 6
src/jfw/modules/bigmember/src/service/report/report.go

@@ -203,14 +203,15 @@ func (r *Report) ProjectInfo() {
 		R.InvalidReqParam(r.ResponseWriter, r.Request, "start", "end")
 		return
 	}
+	if param.PageNum*param.PageSize > config.Config.ProjectCount {
+		param.PageNum = config.Config.ProjectCount / param.PageSize
+	}
+	//当前页码
+	param.PageNum = qutil.If(param.PageNum < 1 || param.PageNum > 1000, 1, param.PageNum).(int)
+	//默认每页10条
+	param.PageSize = qutil.If(param.PageSize < 1 || param.PageSize > 100, 50, param.PageSize).(int)
 	// 取positionId
 	positionId := qutil.Int64All(r.GetSession("positionId"))
-	if param.PageSize == 0 {
-		param.PageSize = 10
-	}
-	if param.PageNum == 0 {
-		param.PageNum = 1
-	}
 	m := map[string]interface{}{}
 	list, total := entity.GetReportProjectInfo(&param, positionId)
 	m["list"] = entity.ReportProjectInfoFormat(list)