|
@@ -11,6 +11,7 @@ import (
|
|
|
qu "qfw/util"
|
|
|
"qfw/util/redis"
|
|
|
"regexp"
|
|
|
+ "sort"
|
|
|
"strconv"
|
|
|
"strings"
|
|
|
"sync"
|
|
@@ -1605,9 +1606,15 @@ func AnalysisSaveResult(j, jf *ju.Job, e *ExtractTask) {
|
|
|
}
|
|
|
if len(j.PackageInfo) > 0 { //分包信息
|
|
|
tmp["package"] = j.PackageInfo
|
|
|
+ //包预算,中标金额合并大于抽取就覆盖
|
|
|
var tmpBidamount, tmpBudget float64
|
|
|
+ //s_winner逗号分隔拼接,分包中标人
|
|
|
+ var tmpstr,savewinner []string
|
|
|
//包预算,中标金额合并大于抽取就覆盖
|
|
|
- for _, v := range j.PackageInfo {
|
|
|
+ for b, v := range j.PackageInfo {
|
|
|
+ if v["winner"]!= nil && v["winner"]!=""{
|
|
|
+ tmpstr = append(tmpstr,b)
|
|
|
+ }
|
|
|
if v["budget"] != nil {
|
|
|
tmpBudget += qu.Float64All(v["budget"])
|
|
|
}
|
|
@@ -1621,6 +1628,13 @@ func AnalysisSaveResult(j, jf *ju.Job, e *ExtractTask) {
|
|
|
if qu.Float64All(tmp["bidamount"]) < tmpBidamount {
|
|
|
tmp["bidamount"] = tmpBidamount
|
|
|
}
|
|
|
+ //s_winner逗号分隔拼接,分包中标人
|
|
|
+ sort.Strings(tmpstr)
|
|
|
+ for _,v := range tmpstr{
|
|
|
+ savewinner = append(savewinner,qu.ObjToString(j.PackageInfo[v]["winner"]))
|
|
|
+ }
|
|
|
+ tmp["s_winner"] = strings.Join(savewinner,",")
|
|
|
+
|
|
|
}
|
|
|
if len(j.Winnerorder) > 0 { //候选人信息
|
|
|
tmp["winnerorder"] = j.Winnerorder
|