|
@@ -11,6 +11,7 @@ import (
|
|
|
"strings"
|
|
|
"time"
|
|
|
. "util"
|
|
|
+ "util/mgodb"
|
|
|
|
|
|
"github.com/tealeg/xlsx"
|
|
|
|
|
@@ -62,7 +63,7 @@ func GetNotkeyAndKeyAddWord(list []map[string]interface{}, fieldMap map[string]i
|
|
|
tmp_nkw := nkw_addArr[0]
|
|
|
if tmp_nkw != "" {
|
|
|
cr := &CommonReg{}
|
|
|
- cr.CsVal = tmp_nkw //记录原值
|
|
|
+ cr.CsVal = tmp_nkw //记录原值
|
|
|
if LetterCase.MatchString(tmp_nkw) { //判断附加词中是否有英文
|
|
|
tmp_nkw = strings.ToUpper(tmp_nkw) //附加词中有英文全部转为大写
|
|
|
cr.IsLetter = true //含字母
|
|
@@ -114,7 +115,7 @@ func GetNotkeyAndKeyAddWord(list []map[string]interface{}, fieldMap map[string]i
|
|
|
tmp_aw := aw_addArr[0]
|
|
|
if tmp_aw != "" {
|
|
|
cr := &CommonReg{}
|
|
|
- cr.CsVal = tmp_aw //记录原值
|
|
|
+ cr.CsVal = tmp_aw //记录原值
|
|
|
if LetterCase.MatchString(tmp_aw) { //判断附加词中是否有英文
|
|
|
tmp_aw = strings.ToUpper(tmp_aw) //附加词中有英文全部转为大写
|
|
|
cr.IsLetter = true //含字母
|
|
@@ -493,6 +494,98 @@ func AssembelSave(tmp map[string]interface{}, IsSearchHosp, IsSearchEnps bool, h
|
|
|
tmp["projectId"] = projectId
|
|
|
}
|
|
|
}
|
|
|
+ if DisPackageAppidMap[appid] {
|
|
|
+ querys := map[string]interface{}{
|
|
|
+ "_id": mongodb.StringTOBsonId(id),
|
|
|
+ }
|
|
|
+ datas := MgoExtract.FindOne(ExtractColl, querys)
|
|
|
+ if datas != nil && len(datas) > 0 {
|
|
|
+ indexdata := []map[string]interface{}{}
|
|
|
+ index := 0
|
|
|
+ if (datas)["package"] != nil {
|
|
|
+ packages := (datas)["package"].(map[string]interface{})
|
|
|
+ for _, vv := range packages {
|
|
|
+ vs := vv.(map[string]interface{})
|
|
|
+ if qu.ObjToString(tmp["toptype"]) == "结果" || qu.ObjToString(tmp["toptype"]) == "其它" {
|
|
|
+ if vs["winner"] != nil && qu.ObjToString(vs["winner"]) != "" {
|
|
|
+ winner := strings.Split(qu.ObjToString(vs["winner"]), ",")
|
|
|
+ for _, w := range winner {
|
|
|
+ // if MactchWinner(w) {
|
|
|
+ if index > 1 {
|
|
|
+ s_data := map[string]interface{}{}
|
|
|
+ for ks, vks := range tmp {
|
|
|
+ s_data[ks] = vks
|
|
|
+ }
|
|
|
+ s_data["s_winner"] = w
|
|
|
+ if vs["bidamount"] != nil {
|
|
|
+ s_data["bidamount"] = vs["bidamount"]
|
|
|
+ }
|
|
|
+ if vs["budget"] != nil {
|
|
|
+ s_data["budget"] = vs["budget"]
|
|
|
+ }
|
|
|
+ SearchEnterpriseInfo(s_data)
|
|
|
+ indexdata = append(indexdata, s_data)
|
|
|
+ log.Println("index", index, " ", id, " ", w)
|
|
|
+ log.Println("indexdata", len(indexdata))
|
|
|
+ } else {
|
|
|
+ if vs["bidamount"] != nil {
|
|
|
+ tmp["bidamount"] = vs["bidamount"]
|
|
|
+ }
|
|
|
+ if vs["budget"] != nil {
|
|
|
+ tmp["budget"] = vs["budget"]
|
|
|
+ }
|
|
|
+ log.Println("index", index, " ", id, " ", w)
|
|
|
+ }
|
|
|
+ index++
|
|
|
+ // }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ if vs["budget"] != nil {
|
|
|
+ s_data := map[string]interface{}{}
|
|
|
+ for ks, vks := range tmp {
|
|
|
+ s_data[ks] = vks
|
|
|
+ }
|
|
|
+ s_data["budget"] = vs["budget"]
|
|
|
+ indexdata = append(indexdata, s_data)
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if len(indexdata) > 0 {
|
|
|
+ for _, v := range indexdata {
|
|
|
+ s_winner := qu.ObjToString(v["s_winner"])
|
|
|
+ isMatch := false
|
|
|
+ for _, vs := range Sysconfig["dis_package_config"].(map[string]interface{}) {
|
|
|
+ vvs := vs.(map[string]interface{})
|
|
|
+ keyWord := qu.ObjToString(vvs["keyWord"])
|
|
|
+ exclued := qu.ObjToString(vvs["exclued"])
|
|
|
+ name := qu.ObjToString(vvs["name"])
|
|
|
+ for _, key := range strings.Split(keyWord, ",") {
|
|
|
+ if strings.Contains(s_winner, key) {
|
|
|
+ isMatch = true
|
|
|
+ if exclued != "" {
|
|
|
+ for _, keys := range strings.Split(exclued, ",") {
|
|
|
+ if strings.Contains(s_winner, keys) {
|
|
|
+ isMatch = false
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if isMatch {
|
|
|
+ v["winner_type"] = name
|
|
|
+ break
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if !isMatch {
|
|
|
+ v["winner_type"] = "集成商"
|
|
|
+ }
|
|
|
+ MgoSaveCache <- v
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
if isDup == 1 {
|
|
|
ok := checkBidId(appid, id)
|
|
|
if !ok {
|
|
@@ -501,7 +594,6 @@ func AssembelSave(tmp map[string]interface{}, IsSearchHosp, IsSearchEnps bool, h
|
|
|
MgoSave.Save(SaveCollbid, tmp)
|
|
|
}
|
|
|
}
|
|
|
-
|
|
|
if isOk {
|
|
|
MgoSaveCache <- tmp
|
|
|
xlsxArr = append(xlsxArr, tmp)
|
|
@@ -1054,13 +1146,13 @@ func GetXlsxs(mMap []map[string]interface{}, fn, email, id string, isfile, isHen
|
|
|
for _, v := range mMap {
|
|
|
row := sh.AddRow()
|
|
|
// row.AddCell().SetInt(i + 1)
|
|
|
- row.AddCell().SetValue(v["matchkey"]) //信息匹配词
|
|
|
+ row.AddCell().SetValue(v["matchkey"]) //信息匹配词
|
|
|
row.AddCell().SetValue(v["city"]) //城市
|
|
|
row.AddCell().SetValue(v["district"]) //县区
|
|
|
row.AddCell().SetValue(v["projectname"]) //项目名称
|
|
|
row.AddCell().SetValue(v["buyer"]) //采购单位
|
|
|
row.AddCell().SetValue(v[""]) //采购单位类别---私有标签tagname
|
|
|
- if v["bidamount"] != nil { //中标金额
|
|
|
+ if v["bidamount"] != nil { //中标金额
|
|
|
row.AddCell().SetFloat(qu.Float64All(v["bidamount"]))
|
|
|
} else {
|
|
|
row.AddCell()
|