static void CompareBuild(string agencyCom_EstateId) { BuildCmService buildCmService = new BuildCmService(); List <BuildCmType> agencyComBuildList = buildCmService.ListBuild(agencyCom_EstateId).ToList(); BuildFwService buildFwService = new BuildFwService(); List <BuildFwType> frameworkBuildList = buildFwService.ListBuildByCm(agencyCom_EstateId).ToList(); if (frameworkBuildList != null && frameworkBuildList.Count > 0) { frameworkBuildList.ForEach(agencyComBuild => { if (agencyComBuildList != null && agencyComBuildList.Count > 0) { var obj = agencyComBuildList.Find(item => item.BuildName == agencyComBuild.BuildName); if (obj != null) { agencyComBuildList.RemoveAll(item => item.BuildName == agencyComBuild.BuildName); Console.WriteLine("时间 : [{0}], 比较栋座 [{1}]", DateTime.Now.ToString("yyyy-MM-dd hh:mm:ss"), obj.BuildName); buildCmService.InsertComparedBuild(obj.BuildId, obj.EstateId, obj.BuildName, obj.Address, agencyComBuild.BuildId, agencyComBuild.EstateId, agencyComBuild.BuildName, agencyComBuild.Address, CompareUnit(obj.BuildId, agencyComBuild.BuildId)); } else { buildCmService.InsertComparedBuild(string.Empty, string.Empty, string.Empty, string.Empty, agencyComBuild.BuildId, agencyComBuild.EstateId, agencyComBuild.BuildName, agencyComBuild.Address, ComparedStatus.ADDNEW); Console.WriteLine("时间 : [{0}], 比较栋座 [{1}]", DateTime.Now.ToString("yyyy-MM-dd hh:mm:ss"), agencyComBuild.BuildName); CompareUnit(string.Empty, agencyComBuild.BuildId); } } else { buildCmService.InsertComparedBuild(string.Empty, string.Empty, string.Empty, string.Empty, agencyComBuild.BuildId, agencyComBuild.EstateId, agencyComBuild.BuildName, agencyComBuild.Address, ComparedStatus.ADDNEW); Console.WriteLine("时间 : [{0}], 比较栋座 [{1}]", DateTime.Now.ToString("yyyy-MM-dd hh:mm:ss"), agencyComBuild.BuildName); CompareUnit(string.Empty, agencyComBuild.BuildId); } }); } //delete if (agencyComBuildList != null && agencyComBuildList.Count > 0) { agencyComBuildList.ForEach(agencyComBuild => { buildCmService.InsertComparedBuild(agencyComBuild.BuildId, agencyComBuild.EstateId, agencyComBuild.BuildName, agencyComBuild.Address, string.Empty, string.Empty, string.Empty, string.Empty, ComparedStatus.DELETE); CompareUnit(agencyComBuild.BuildId, string.Empty); }); } }