diff --git a/AsbCloudDb/Model/WellContact.cs b/AsbCloudDb/Model/RelationContactWell.cs similarity index 100% rename from AsbCloudDb/Model/WellContact.cs rename to AsbCloudDb/Model/RelationContactWell.cs diff --git a/AsbCloudInfrastructure/Services/WellContactService.cs b/AsbCloudInfrastructure/Services/WellContactService.cs index f0de37c7..29ccde7f 100644 --- a/AsbCloudInfrastructure/Services/WellContactService.cs +++ b/AsbCloudInfrastructure/Services/WellContactService.cs @@ -30,7 +30,18 @@ namespace AsbCloudInfrastructure.Services { Caption = c.Caption, Id = c.Id, - Users = c.Users.Select(user => Convert(user, wellId)) + Users = c.Users.Select(u => new UserContactDto() + { + Id = u.Id, + Name = u.Name, + Patronymic = u.Patronymic, + Surname = u.Surname, + Company = u.Company.Adapt(), + Email = u.Email, + Phone = u.Phone, + Position = u.Position, + IsContact = u.RelationContactsWells.Any(rel => rel.IdWell == wellId) + }) }); var entities = await query.AsNoTracking() @@ -58,16 +69,11 @@ namespace AsbCloudInfrastructure.Services var items = db.RelationContactsWells .Where(x => x.IdWell == idWell && x.User.Company.IdCompanyType == contactTypeId); - var wellContacts = new List(); - foreach (var userId in userIds) + var wellContacts = userIds.Select(userId => new RelationContactWell() { - var wellContact = new RelationContactWell() - { - IdWell = idWell, - IdUser = userId, - }; - wellContacts.Add(wellContact); - } + IdWell = idWell, + IdUser = userId, + }); db.RelationContactsWells.RemoveRange(items); db.RelationContactsWells.AddRange(wellContacts);