Jelajahi Sumber

Merge branch 'dev_v1.0.3.1_wh' of CRM/application into hotfix/v1.0.3.1

王浩 1 tahun lalu
induk
melakukan
a9d3184bce
1 mengubah file dengan 70 tambahan dan 11 penghapusan
  1. 70 11
      api/internal/service/employService.go

+ 70 - 11
api/internal/service/employService.go

@@ -694,7 +694,12 @@ func employInfoPerson(table, employKey, findKey string, in *types.InfoEmployinfo
 			"type":        1,
 		}
 		sourceId := gconv.String(v[employKey])
-		data[sourceId] = EmployHandle(valueMap, v, 0, in.From, len(strings.Split(in.IdArr, ",")) == 1, findKey, in.PositionId, in.PositionType, in.EmployType)
+		if _, ok := data[sourceId]; ok {
+			data[sourceId] = EmployHandle(data[sourceId], v, 0, in.From, len(strings.Split(in.IdArr, ",")) == 1, findKey, in.PositionId, in.PositionType, in.EmployType)
+		} else {
+			data[sourceId] = EmployHandle(valueMap, v, 0, in.From, len(strings.Split(in.IdArr, ",")) == 1, findKey, in.PositionId, in.PositionType, in.EmployType)
+
+		}
 	}
 	for _, v := range *infoData2 {
 		valueMap := map[string]interface{}{
@@ -707,7 +712,13 @@ func employInfoPerson(table, employKey, findKey string, in *types.InfoEmployinfo
 			"type":        1,
 		}
 		sourceId := gconv.String(v[employKey])
-		data[sourceId] = EmployHandle(valueMap, v, 0, in.From, len(strings.Split(in.IdArr, ",")) == 1, findKey, in.PositionId, in.PositionType, in.EmployType)
+		if _, ok := data[sourceId]; ok {
+			data[sourceId] = EmployHandle(data[sourceId], v, 0, in.From, len(strings.Split(in.IdArr, ",")) == 1, findKey, in.PositionId, in.PositionType, in.EmployType)
+
+		} else {
+			data[sourceId] = EmployHandle(valueMap, v, 0, in.From, len(strings.Split(in.IdArr, ",")) == 1, findKey, in.PositionId, in.PositionType, in.EmployType)
+
+		}
 	}
 	for _, v := range *niJianData {
 		valueMap := map[string]interface{}{
@@ -720,7 +731,13 @@ func employInfoPerson(table, employKey, findKey string, in *types.InfoEmployinfo
 			"type":        1,
 		}
 		sourceId := gconv.String(v[employKey])
-		data[sourceId] = EmployHandle(valueMap, v, 0, in.From, len(strings.Split(in.IdArr, ",")) == 1, findKey, in.PositionId, in.PositionType, in.EmployType)
+		if _, ok := data[sourceId]; ok {
+			data[sourceId] = EmployHandle(data[sourceId], v, 0, in.From, len(strings.Split(in.IdArr, ",")) == 1, findKey, in.PositionId, in.PositionType, in.EmployType)
+
+		} else {
+			data[sourceId] = EmployHandle(valueMap, v, 0, in.From, len(strings.Split(in.IdArr, ",")) == 1, findKey, in.PositionId, in.PositionType, in.EmployType)
+
+		}
 	}
 	for _, v := range *wuyeData1 {
 		valueMap := map[string]interface{}{
@@ -733,7 +750,13 @@ func employInfoPerson(table, employKey, findKey string, in *types.InfoEmployinfo
 			"type":        1,
 		}
 		sourceId := gconv.String(v[employKey])
-		data[sourceId] = EmployHandle(valueMap, v, 1, in.From, len(strings.Split(in.IdArr, ",")) == 1, findKey, in.PositionId, in.PositionType, in.EmployType)
+		if _, ok := data[sourceId]; ok {
+			data[sourceId] = EmployHandle(data[sourceId], v, 1, in.From, len(strings.Split(in.IdArr, ",")) == 1, findKey, in.PositionId, in.PositionType, in.EmployType)
+
+		} else {
+			data[sourceId] = EmployHandle(valueMap, v, 1, in.From, len(strings.Split(in.IdArr, ",")) == 1, findKey, in.PositionId, in.PositionType, in.EmployType)
+
+		}
 	}
 	for _, v := range *wuyeData2 {
 		valueMap := map[string]interface{}{
@@ -746,7 +769,13 @@ func employInfoPerson(table, employKey, findKey string, in *types.InfoEmployinfo
 			"type":        1,
 		}
 		sourceId := gconv.String(v[employKey])
-		data[sourceId] = EmployHandle(valueMap, v, 1, in.From, len(strings.Split(in.IdArr, ",")) == 1, findKey, in.PositionId, in.PositionType, in.EmployType)
+		if _, ok := data[sourceId]; ok {
+			data[sourceId] = EmployHandle(data[sourceId], v, 1, in.From, len(strings.Split(in.IdArr, ",")) == 1, findKey, in.PositionId, in.PositionType, in.EmployType)
+
+		} else {
+			data[sourceId] = EmployHandle(valueMap, v, 1, in.From, len(strings.Split(in.IdArr, ",")) == 1, findKey, in.PositionId, in.PositionType, in.EmployType)
+
+		}
 	}
 	return data
 }
@@ -785,7 +814,13 @@ func employInfoEnt(table, employKey, findKey, depIDArr string, in *types.InfoEmp
 			"type":        1,
 		}
 		sourceId := gconv.String(v[employKey])
-		data[sourceId] = EmployHandle(valueMap, v, 0, in.From, len(strings.Split(in.IdArr, ",")) == 1, findKey, in.PositionId, in.PositionType, in.EmployType)
+		if _, ok := data[sourceId]; ok {
+			data[sourceId] = EmployHandle(data[sourceId], v, 0, in.From, len(strings.Split(in.IdArr, ",")) == 1, findKey, in.PositionId, in.PositionType, in.EmployType)
+
+		} else {
+			data[sourceId] = EmployHandle(valueMap, v, 0, in.From, len(strings.Split(in.IdArr, ",")) == 1, findKey, in.PositionId, in.PositionType, in.EmployType)
+
+		}
 	}
 	for _, v := range *infoData2 {
 		valueMap := map[string]interface{}{
@@ -798,7 +833,13 @@ func employInfoEnt(table, employKey, findKey, depIDArr string, in *types.InfoEmp
 			"type":        1,
 		}
 		sourceId := gconv.String(v[employKey])
-		data[sourceId] = EmployHandle(valueMap, v, 0, in.From, len(strings.Split(in.IdArr, ",")) == 1, findKey, in.PositionId, in.PositionType, in.EmployType)
+		if _, ok := data[sourceId]; ok {
+			data[sourceId] = EmployHandle(data[sourceId], v, 0, in.From, len(strings.Split(in.IdArr, ",")) == 1, findKey, in.PositionId, in.PositionType, in.EmployType)
+
+		} else {
+			data[sourceId] = EmployHandle(valueMap, v, 0, in.From, len(strings.Split(in.IdArr, ",")) == 1, findKey, in.PositionId, in.PositionType, in.EmployType)
+
+		}
 	}
 	for _, v := range *niJianData {
 		valueMap := map[string]interface{}{
@@ -811,7 +852,13 @@ func employInfoEnt(table, employKey, findKey, depIDArr string, in *types.InfoEmp
 			"type":        1,
 		}
 		sourceId := gconv.String(v[employKey])
-		data[sourceId] = EmployHandle(valueMap, v, version, in.From, len(strings.Split(in.IdArr, ",")) == 1, findKey, in.PositionId, in.PositionType, in.EmployType)
+		if _, ok := data[sourceId]; ok {
+			data[sourceId] = EmployHandle(data[sourceId], v, version, in.From, len(strings.Split(in.IdArr, ",")) == 1, findKey, in.PositionId, in.PositionType, in.EmployType)
+
+		} else {
+			data[sourceId] = EmployHandle(valueMap, v, version, in.From, len(strings.Split(in.IdArr, ",")) == 1, findKey, in.PositionId, in.PositionType, in.EmployType)
+
+		}
 	}
 	for _, v := range *wuyeData1 {
 		valueMap := map[string]interface{}{
@@ -824,7 +871,13 @@ func employInfoEnt(table, employKey, findKey, depIDArr string, in *types.InfoEmp
 			"type":        1,
 		}
 		sourceId := gconv.String(v[employKey])
-		data[sourceId] = EmployHandle(valueMap, v, 1, in.From, len(strings.Split(in.IdArr, ",")) == 1, findKey, in.PositionId, in.PositionType, in.EmployType)
+		if _, ok := data[sourceId]; ok {
+			data[sourceId] = EmployHandle(data[sourceId], v, 1, in.From, len(strings.Split(in.IdArr, ",")) == 1, findKey, in.PositionId, in.PositionType, in.EmployType)
+
+		} else {
+			data[sourceId] = EmployHandle(valueMap, v, 1, in.From, len(strings.Split(in.IdArr, ",")) == 1, findKey, in.PositionId, in.PositionType, in.EmployType)
+
+		}
 	}
 	for _, v := range *wuyeData2 {
 		valueMap := map[string]interface{}{
@@ -837,7 +890,13 @@ func employInfoEnt(table, employKey, findKey, depIDArr string, in *types.InfoEmp
 			"type":        1,
 		}
 		sourceId := gconv.String(v[employKey])
-		data[sourceId] = EmployHandle(valueMap, v, 1, in.From, len(strings.Split(in.IdArr, ",")) == 1, findKey, in.PositionId, in.PositionType, in.EmployType)
+		if _, ok := data[sourceId]; ok {
+			data[sourceId] = EmployHandle(data[sourceId], v, 1, in.From, len(strings.Split(in.IdArr, ",")) == 1, findKey, in.PositionId, in.PositionType, in.EmployType)
+
+		} else {
+			data[sourceId] = EmployHandle(valueMap, v, 1, in.From, len(strings.Split(in.IdArr, ",")) == 1, findKey, in.PositionId, in.PositionType, in.EmployType)
+
+		}
 	}
 	return data
 }
@@ -862,7 +921,7 @@ func EmployHandle(valueMap map[string]interface{}, employData map[string]interfa
 			}
 		case 3:
 			if valueMap["employ2"] != nil {
-				employ3 = gconv.Bool(valueMap["employ2"])
+				employ2 = gconv.Bool(valueMap["employ2"])
 			}
 			if employStatus == 1 {
 				employ3 = true