|
@@ -401,7 +401,7 @@ func MapDataToArr(tmpMap map[string]bool) (tmpArr []string) {
|
|
|
}
|
|
|
|
|
|
//合并数据
|
|
|
-func MergeData(history, tmp map[string]interface{}, isTagRule, isDepartRmvRep bool) {
|
|
|
+func MergeData(history, tmp map[string]interface{}, isTagRule, isDepartRmvRep bool, pushModel int) {
|
|
|
//matchkey、matchtype、ruleid均非空
|
|
|
matchkey1 := qu.ObjToString(history["matchkey"])
|
|
|
matchkey2 := qu.ObjToString(tmp["matchkey"])
|
|
@@ -419,6 +419,59 @@ func MergeData(history, tmp map[string]interface{}, isTagRule, isDepartRmvRep bo
|
|
|
rulename2 := qu.ObjToString(tmp["rulename"])
|
|
|
history["rulename"] = MergeField(rulename1, rulename2)
|
|
|
|
|
|
+ if isTagRule { //标签模式 tagname、tagid合并
|
|
|
+ tagname1 := qu.ObjToString(history["tagname"])
|
|
|
+ tagname2 := qu.ObjToString(tmp["tagname"])
|
|
|
+ if tagNameResult := MergeField(tagname1, tagname2); tagNameResult != "" {
|
|
|
+ history["tagname"] = tagNameResult
|
|
|
+ }
|
|
|
+
|
|
|
+ tagid1 := qu.ObjToString(history["tagid"])
|
|
|
+ tagid2 := qu.ObjToString(tmp["tagid"])
|
|
|
+ if tagIdResult := MergeField(tagid1, tagid2); tagIdResult != "" {
|
|
|
+ history["tagid"] = tagIdResult
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if isDepartRmvRep { //全局模式 部门合并
|
|
|
+ departname1 := qu.ObjToString(history["departname"])
|
|
|
+ departname2 := qu.ObjToString(tmp["departname"])
|
|
|
+ history["departname"] = MergeField(departname1, departname2)
|
|
|
+ departid1 := qu.ObjToString(history["departid"])
|
|
|
+ departid2 := qu.ObjToString(tmp["departid"])
|
|
|
+ history["departid"] = MergeField(departid1, departid2)
|
|
|
+ if pushModel == 1 {
|
|
|
+ item1 := qu.ObjToString(history["item"])
|
|
|
+ item2 := qu.ObjToString(tmp["item"])
|
|
|
+ history["item"] = MergeField(item1, item2)
|
|
|
+ history["itemdist"].(map[string]interface{})[departname2] = matchkey2
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+func MergeDatas(history, tmp map[string]interface{}, isTagRule, isDepartRmvRep bool) {
|
|
|
+ //matchkey、matchtype、ruleid均非空
|
|
|
+ matchkey1 := qu.ObjToString(history["matchkey"])
|
|
|
+ matchkey2 := qu.ObjToString(tmp["matchkey"])
|
|
|
+ history["matchkey"] = MergeField(matchkey1, matchkey2)
|
|
|
+
|
|
|
+ matchkeytype1 := qu.ObjToString(history["matchtype"])
|
|
|
+ matchkeytype2 := qu.ObjToString(tmp["matchtype"])
|
|
|
+ history["matchtype"] = MergeField(matchkeytype1, matchkeytype2)
|
|
|
+
|
|
|
+ ruleid1 := qu.ObjToString(history["ruleid"])
|
|
|
+ ruleid2 := qu.ObjToString(tmp["ruleid"])
|
|
|
+ history["ruleid"] = MergeField(ruleid1, ruleid2)
|
|
|
+
|
|
|
+ rulename1 := qu.ObjToString(history["rulename"])
|
|
|
+ rulename2 := qu.ObjToString(tmp["rulename"])
|
|
|
+ history["rulename"] = MergeField(rulename1, rulename2)
|
|
|
+
|
|
|
+ item1 := qu.ObjToString(history["item"])
|
|
|
+ item2 := qu.ObjToString(tmp["item"])
|
|
|
+ history["item"] = MergeField(item1, item2)
|
|
|
+ history["itemdist"].(map[string]interface{})[item2] = matchkey2
|
|
|
+ qu.Debug("组装后的item:", history["item"], history["itemdist"])
|
|
|
+
|
|
|
if isTagRule { //标签模式 tagname、tagid合并
|
|
|
tagname1 := qu.ObjToString(history["tagname"])
|
|
|
tagname2 := qu.ObjToString(tmp["tagname"])
|
|
@@ -521,7 +574,7 @@ func AssembelSave(tmp map[string]interface{}, IsSearchHosp, IsSearchEnps bool, a
|
|
|
if qu.ObjToString(tmp["toptype"]) == "结果" || qu.ObjToString(tmp["toptype"]) == "其它" || qu.ObjToString(tmp["subtype"]) == "单一" {
|
|
|
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 {
|
|
@@ -529,11 +582,11 @@ func AssembelSave(tmp map[string]interface{}, IsSearchHosp, IsSearchEnps bool, a
|
|
|
for ks, vks := range tmp {
|
|
|
s_data[ks] = vks
|
|
|
}
|
|
|
- delete(s_data,"legal_person")
|
|
|
- delete(s_data,"company_address")
|
|
|
- delete(s_data,"winner_credit_no")
|
|
|
- delete(s_data,"company_email")
|
|
|
- delete(s_data,"company_phone")
|
|
|
+ delete(s_data, "legal_person")
|
|
|
+ delete(s_data, "company_address")
|
|
|
+ delete(s_data, "winner_credit_no")
|
|
|
+ delete(s_data, "company_email")
|
|
|
+ delete(s_data, "company_phone")
|
|
|
s_data["s_winner"] = w
|
|
|
SearchEnterpriseInfos(s_data, w)
|
|
|
GetWinnerType(w, s_data)
|