public string PostXmFF([FromBody] XmDistributeModel data) { var selectdata = QtXmDistributeService.Find(x => x.FProjcode == data.FProjcode).Data.ToList(); var orglist = new List <Int64>(); var rundata = new List <QtXmDistributeModel>(); if (selectdata != null && selectdata.Count > 0) { //既然能选到 数据库必有数据 var data1 = QtXmDistributeService.Find(x => x.FProjcode == data.FProjcode).Data.ToList(); orglist = (data1 != null && data1.Count > 0) ? data1.Select(x => x.Orgid).ToList() : new List <long>(); } var AddOrg = (data.EnableOrgList != null && data.EnableOrgList.Count > 0) ? data.EnableOrgList.Except(orglist).ToList():null; var deleteOrg = (data.EnableOrgList != null && data.EnableOrgList.Count > 0)?orglist.Except(data.EnableOrgList).ToList(): orglist; SavedResult <Int64> savedresult = new SavedResult <Int64>(); if (deleteOrg != null && deleteOrg.Count > 0) { rundata = QtXmDistributeService.Find(x => x.FProjcode == data.FProjcode && deleteOrg.Contains(x.Orgid)).Data.ToList(); foreach (var b in rundata) { b.PersistentState = PersistentState.Deleted; } } if (AddOrg != null && AddOrg.Count > 0) { var orglist1 = CorrespondenceSettingsService.GetOrgCodeList(AddOrg); foreach (var a in AddOrg) { QtXmDistributeModel model = new QtXmDistributeModel(); model.FProjcode = data.FProjcode; model.FProjname = data.FProjname; model.FBusiness = data.FBusiness; model.Orgid = a; model.Orgcode = orglist1.Find(x => x.PhId == a).OCode; model.Distributeorgid = data.orgid; model.Distributeuserid = data.userid; model.PersistentState = PersistentState.Added; rundata.Add(model); } } savedresult = QtXmDistributeService.Save <Int64>(rundata, ""); return(DataConverterHelper.SerializeObject(savedresult)); }