Sfoglia il codice sorgente

2021-1123
修复任务空间同步的bug

zhaoyk 3 anni fa
parent
commit
5807d73c1d

+ 4 - 5
src/main/java/com/persagy/bdtp/adm/service/impl/SyncSpaceImpl.java

@@ -145,7 +145,7 @@ public class SyncSpaceImpl implements ISyncSpace {
 				if(change)
 					toModify.add(job);
 			} else { //id未匹配
-				job = matchByOutline(jobMap, sp);
+				job = matchByOutline(jobMap, spOutline);
 				if(job != null) { //轮廓完全一致的任务空间,重新设置spaceId
 					job.setSpaceId(spId);
 					toModify.add(job);
@@ -180,15 +180,14 @@ public class SyncSpaceImpl implements ISyncSpace {
 		return sync(groupCode, projectId, userId, null, zone);
 	}
 
-	private AdmJobSpace matchByOutline(HashMap<String, AdmJobSpace> jobMap, ObjectNode space){
+	private AdmJobSpace matchByOutline(HashMap<String, AdmJobSpace> jobMap, ArrayNode spOutline){
 		if(jobMap.size() == 0)
 			return null;
 
-		ArrayNode o1 = (ArrayNode) space.get("outline");
-		if(!isValidOutline(o1))
+		if(!isValidOutline(spOutline))
 			return null;
 
-		Polygon[] ps = GeomUtil.getPolygon(o1);
+		Polygon[] ps = GeomUtil.getPolygon(spOutline);
 		Map.Entry<String, AdmJobSpace> target = null;
 		for(Map.Entry<String, AdmJobSpace> entry : jobMap.entrySet()){
 			ArrayNode o2 = entry.getValue().getOutline();