瀏覽代碼

对多包表格的多包值优化

fengweiqiang 6 年之前
父節點
當前提交
59025d6bca
共有 1 個文件被更改,包括 24 次插入3 次删除
  1. 24 3
      src/jy/pretreated/analytable.go

+ 24 - 3
src/jy/pretreated/analytable.go

@@ -528,11 +528,14 @@ func (table *Table) MergerToTableresult() {
 				v1 := v.(*u.BlockPackage)
 				if v1.TableKV != nil && len(v1.TableKV.KvTags) > 0 {
 					for k2, v2 := range v1.TableKV.KvTags {
-						if bp.TableKV == nil {
-							bp.TableKV = u.NewJobKv()
+						if k2 == "" {
+							continue
 						}
 						isExists := false
 						for _, v2v := range v2 {
+							if v2v.Value == ""{
+								continue
+							}
 							for _, v2vv := range bp.TableKV.KvTags[k2] {
 								if v2v.Value == v2vv.Value {
 									isExists = true
@@ -546,7 +549,9 @@ func (table *Table) MergerToTableresult() {
 						}
 					}
 				}
-				bp.WinnerOrder = v1.WinnerOrder
+				if len(v1.WinnerOrder)>0 && len(bp.WinnerOrder) == 0{
+					bp.WinnerOrder = v1.WinnerOrder
+				}
 				//table.TableResult.PackageMap.AddKey(k, v)
 			}
 		}
@@ -580,6 +585,22 @@ func (table *Table) MergerToTableresult() {
 			}
 		}
 	}
+	if table.BlockPackage.Map != nil{
+		for _,v := range table.BlockPackage.Map{
+			if vvv, ok := v.(*u.BlockPackage); ok {
+				if len(vvv.TableKV.KvTags) > 0{
+					for kk,vv := range vvv.TableKV.KvTags{
+						if kk == ""{
+							continue
+						}
+						if len(table.TableResult.KvTags[kk]) == 0 {
+							table.TableResult.KvTags[kk] = vv
+						}
+					}
+				}
+			}
+		}
+	}
 }
 
 /**