|
@@ -177,7 +177,7 @@ func (p *ProjectTask) startProjectMerge(info *Info, tmp map[string]interface{})
|
|
|
|
|
|
ex := 0
|
|
ex := 0
|
|
resArr := []*ProjectInfo{}
|
|
resArr := []*ProjectInfo{}
|
|
- for _, res := range resN{
|
|
|
|
|
|
+ for _, res := range resN {
|
|
choose, e := CompareStatus(resN[0], info)
|
|
choose, e := CompareStatus(resN[0], info)
|
|
if !choose {
|
|
if !choose {
|
|
ex = e
|
|
ex = e
|
|
@@ -220,7 +220,7 @@ func (p *ProjectTask) startProjectMerge(info *Info, tmp map[string]interface{})
|
|
}
|
|
}
|
|
}
|
|
}
|
|
p.UpdateProject(tmp, info, resArr[0], kv+1, resArr[0].comStr, ex)
|
|
p.UpdateProject(tmp, info, resArr[0], kv+1, resArr[0].comStr, ex)
|
|
- }else {
|
|
|
|
|
|
+ } else {
|
|
bFindProject = false
|
|
bFindProject = false
|
|
findPid = ""
|
|
findPid = ""
|
|
}
|
|
}
|
|
@@ -603,10 +603,10 @@ func (p *ProjectTask) NewCachePinfo(id primitive.ObjectID, thisinfo *Info, bidty
|
|
FirstTime: thisinfo.Publishtime,
|
|
FirstTime: thisinfo.Publishtime,
|
|
LastTime: thisinfo.Publishtime,
|
|
LastTime: thisinfo.Publishtime,
|
|
Budget: thisinfo.Budget,
|
|
Budget: thisinfo.Budget,
|
|
- Package: pkg,
|
|
|
|
|
|
+ Package: pkg,
|
|
Bidamount: thisinfo.Bidamount,
|
|
Bidamount: thisinfo.Bidamount,
|
|
- Bidstatus: thisinfo.SubType,
|
|
|
|
- Bidtype: bidtype,
|
|
|
|
|
|
+ Bidstatus: thisinfo.SubType,
|
|
|
|
+ Bidtype: bidtype,
|
|
}
|
|
}
|
|
if thisinfo.LenPTC > 5 {
|
|
if thisinfo.LenPTC > 5 {
|
|
p1.MPC = append(p1.MPC, thisinfo.PTC)
|
|
p1.MPC = append(p1.MPC, thisinfo.PTC)
|
|
@@ -647,11 +647,11 @@ func (p *ProjectTask) UpdateProject(tmp map[string]interface{}, thisinfo *Info,
|
|
if bidstatus[bs] != "预告" && bidstatus[bs] != "合同" {
|
|
if bidstatus[bs] != "预告" && bidstatus[bs] != "合同" {
|
|
set["jgtime"] = tmp["publishtime"]
|
|
set["jgtime"] = tmp["publishtime"]
|
|
}
|
|
}
|
|
- }else if tmp["infoformat"] == 2 {
|
|
|
|
|
|
+ } else if tmp["infoformat"] == 2 {
|
|
set["bidstatus"] = "拟建"
|
|
set["bidstatus"] = "拟建"
|
|
- }else if tmp["subytpe"] == "招标" {
|
|
|
|
|
|
+ } else if tmp["subytpe"] == "招标" {
|
|
set["bidstatus"] = thisinfo.TopType
|
|
set["bidstatus"] = thisinfo.TopType
|
|
- }else {
|
|
|
|
|
|
+ } else {
|
|
set["bidstatus"] = "其它"
|
|
set["bidstatus"] = "其它"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
@@ -705,7 +705,6 @@ func (p *ProjectTask) UpdateProject(tmp map[string]interface{}, thisinfo *Info,
|
|
// set["buyerclass"] = pInfo.Buyerclass
|
|
// set["buyerclass"] = pInfo.Buyerclass
|
|
//}
|
|
//}
|
|
|
|
|
|
-
|
|
|
|
//8--代理机构
|
|
//8--代理机构
|
|
if (pInfo.Agency == "" && thisinfo.Agency != "") || (len([]rune(pInfo.Agency)) < 5 && len([]rune(thisinfo.Agency)) > 5) {
|
|
if (pInfo.Agency == "" && thisinfo.Agency != "") || (len([]rune(pInfo.Agency)) < 5 && len([]rune(thisinfo.Agency)) > 5) {
|
|
pInfo.Agency = thisinfo.Agency
|
|
pInfo.Agency = thisinfo.Agency
|
|
@@ -773,10 +772,10 @@ func (p *ProjectTask) UpdateProject(tmp map[string]interface{}, thisinfo *Info,
|
|
|
|
|
|
if thisinfo.HasPackage { //多包处理
|
|
if thisinfo.HasPackage { //多包处理
|
|
set["multipackage"] = 1
|
|
set["multipackage"] = 1
|
|
- pkg, _, _:= PackageFormat(thisinfo, pInfo)
|
|
|
|
|
|
+ pkg, _, _ := PackageFormat(thisinfo, pInfo)
|
|
pInfo.Package = pkg
|
|
pInfo.Package = pkg
|
|
set["package"] = pInfo.Package
|
|
set["package"] = pInfo.Package
|
|
- }else {
|
|
|
|
|
|
+ } else {
|
|
set["multipackage"] = 0
|
|
set["multipackage"] = 0
|
|
}
|
|
}
|
|
|
|
|
|
@@ -808,7 +807,6 @@ func (p *ProjectTask) UpdateProject(tmp map[string]interface{}, thisinfo *Info,
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
-
|
|
|
|
/**
|
|
/**
|
|
* 更新项目时,项目状态的处理
|
|
* 更新项目时,项目状态的处理
|
|
* 返回是否新增项目,异常标记
|
|
* 返回是否新增项目,异常标记
|
|
@@ -821,29 +819,29 @@ func CompareStatus(project *ProjectInfo, info *Info) (bool, int) {
|
|
if info.TopType == "拟建" || info.TopType == "预告" || info.TopType == "招标" {
|
|
if info.TopType == "拟建" || info.TopType == "预告" || info.TopType == "招标" {
|
|
if project.Bidstatus == "拟建" || project.Bidstatus == "预告" || project.Bidstatus == "招标" {
|
|
if project.Bidstatus == "拟建" || project.Bidstatus == "预告" || project.Bidstatus == "招标" {
|
|
return false, 0
|
|
return false, 0
|
|
- }else {
|
|
|
|
|
|
+ } else {
|
|
return true, 0
|
|
return true, 0
|
|
}
|
|
}
|
|
- }else if info.TopType == "结果" {
|
|
|
|
|
|
+ } else if info.TopType == "结果" {
|
|
if project.Bidstatus == "拟建" || project.Bidstatus == "预告" || project.Bidstatus == "招标" {
|
|
if project.Bidstatus == "拟建" || project.Bidstatus == "预告" || project.Bidstatus == "招标" {
|
|
return false, 0
|
|
return false, 0
|
|
- }else if project.Bidstatus == info.SubType {
|
|
|
|
|
|
+ } else if project.Bidstatus == info.SubType {
|
|
key := titleGetPc.FindStringSubmatch(info.ProjectName)
|
|
key := titleGetPc.FindStringSubmatch(info.ProjectName)
|
|
if key != nil {
|
|
if key != nil {
|
|
return false, 0
|
|
return false, 0
|
|
- }else {
|
|
|
|
|
|
+ } else {
|
|
return true, 0
|
|
return true, 0
|
|
}
|
|
}
|
|
- }else if project.Bidstatus == "成交" && info.SubType == "中标" {
|
|
|
|
|
|
+ } else if project.Bidstatus == "成交" && info.SubType == "中标" {
|
|
return true, 0
|
|
return true, 0
|
|
- }else if project.Bidstatus == "流标" || project.Bidstatus == "废标" {
|
|
|
|
|
|
+ } else if project.Bidstatus == "流标" || project.Bidstatus == "废标" {
|
|
return false, 2
|
|
return false, 2
|
|
- }else if project.Bidstatus == "合同" || project.Bidstatus == "其它" {
|
|
|
|
|
|
+ } else if project.Bidstatus == "合同" || project.Bidstatus == "其它" {
|
|
return false, 3
|
|
return false, 3
|
|
- }else {
|
|
|
|
|
|
+ } else {
|
|
return false, 0
|
|
return false, 0
|
|
}
|
|
}
|
|
- }else {
|
|
|
|
|
|
+ } else {
|
|
return false, 0
|
|
return false, 0
|
|
}
|
|
}
|
|
}
|
|
}
|
|
@@ -862,16 +860,16 @@ func ComparePlace(project *ProjectInfo, info *Info) bool {
|
|
if info.Area == project.Area {
|
|
if info.Area == project.Area {
|
|
if info.City == "" {
|
|
if info.City == "" {
|
|
return false
|
|
return false
|
|
- }else if info.City == project.City {
|
|
|
|
|
|
+ } else if info.City == project.City {
|
|
if info.District == "" || info.District == project.District {
|
|
if info.District == "" || info.District == project.District {
|
|
return false
|
|
return false
|
|
- }else {
|
|
|
|
|
|
+ } else {
|
|
return true
|
|
return true
|
|
}
|
|
}
|
|
- }else {
|
|
|
|
|
|
+ } else {
|
|
return true
|
|
return true
|
|
}
|
|
}
|
|
- }else {
|
|
|
|
|
|
+ } else {
|
|
return true
|
|
return true
|
|
}
|
|
}
|
|
}
|
|
}
|
|
@@ -892,7 +890,7 @@ func packageEle(map1 map[string]interface{}) (map[string]interface{}, float64, f
|
|
budget := 0.0
|
|
budget := 0.0
|
|
bidamount := 0.0
|
|
bidamount := 0.0
|
|
p2 := map[string]interface{}{}
|
|
p2 := map[string]interface{}{}
|
|
- for _, k := range PackageEle{
|
|
|
|
|
|
+ for _, k := range PackageEle {
|
|
if map1[k] != nil {
|
|
if map1[k] != nil {
|
|
p2[k] = map1[k]
|
|
p2[k] = map1[k]
|
|
}
|
|
}
|
|
@@ -931,7 +929,7 @@ func PackageFormat(info *Info, project *ProjectInfo) (map[string]interface{}, fl
|
|
continue
|
|
continue
|
|
}
|
|
}
|
|
if v4, ok := v3.([]map[string]interface{}); ok {
|
|
if v4, ok := v3.([]map[string]interface{}); ok {
|
|
- if v4[0]["origin"].(string) == v2["origin"].(string) && v4[0]["name"].(string) == v2["name"].(string) {
|
|
|
|
|
|
+ if qu.ObjToString(v4[0]["origin"]) == qu.ObjToString(v2["origin"]) && qu.ObjToString(v4[0]["name"]) == qu.ObjToString(v2["name"]) {
|
|
v4 = append(v4, v2)
|
|
v4 = append(v4, v2)
|
|
p1[k] = v4
|
|
p1[k] = v4
|
|
addFlag = true
|
|
addFlag = true
|
|
@@ -946,7 +944,7 @@ func PackageFormat(info *Info, project *ProjectInfo) (map[string]interface{}, fl
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
- }else {
|
|
|
|
|
|
+ } else {
|
|
p1["ids"] = []string{info.Id}
|
|
p1["ids"] = []string{info.Id}
|
|
for k, v := range info.Package {
|
|
for k, v := range info.Package {
|
|
v1 := v.(map[string]interface{})
|
|
v1 := v.(map[string]interface{})
|
|
@@ -959,4 +957,4 @@ func PackageFormat(info *Info, project *ProjectInfo) (map[string]interface{}, fl
|
|
}
|
|
}
|
|
}
|
|
}
|
|
return p1, budget, bidamount
|
|
return p1, budget, bidamount
|
|
-}
|
|
|
|
|
|
+}
|