public static async Task <LG.Data.Models.Users.UserModel> Update(LG.Data.Models.Shared.Contact contact) { var phones = new List <PhoneBase>(); var user = new UserModel() { CorporationRID = 10, ClientRID = contact.ContactForRID, EventAction = Action.Update, GeneralInfo = new PersonInfo() { FName = contact.PersonInfo.FName, MName = contact.PersonInfo.MName, LName = contact.PersonInfo.LName } }; user.EventAction = Models.Enums.Action.Update; contact.EventAction = ContactAction.Update; for (var i = 0; i < contact.Phones.Count; i++) { await LG.Data.Shared.ContactInfoService.SavePhone(contact, i); } var r3 = LG.Data.Shared.ContactInfoService.SavePersonInfo(user); await r3; if (r3.IsCompleted) { return(user); } return(null); }
public static async Task <LG.Data.Models.Shared.Contact> Save(LG.Data.Models.Shared.Contact contact) { switch (contact.EventAction) { case ContactAction.Add: var client = LG.Services.ClientConnection.GetEmsConnection(); try { client.Open(); var response = await client.AddNewBEntityAsContactAsync(new AddNewBEntityAsContactRequest() { MessageGuid = Guid.NewGuid(), Contact = new ContactInput() { IsActive = contact.IsActive, ContactForRID = contact.ContactForRID, ContactUsages = contact.ContactUsages, EmailAddresses = contact.NewEmailAddresses, Addresses = new List <AddressInput>(), Phones = contact.NewPhones, PersonInfo = new PersonInfoInput() { FName = contact.PersonInfo.FName, MName = contact.PersonInfo.MName, LName = contact.PersonInfo.LName }, }, PropBag = "<PropBag>LG.Data.Core.Clients.ContactDataService.Save(LG.Data.Models.Shared.Contact contact)</PropBag>" }); client.Close(); contact.RID = response.ContactRID; } catch (Exception ex) { contact.IsError = true; contact.Message = ex.ToString(); } break; case ContactAction.Update: var userModel = new LG.Data.Models.Users.UserModel() { CorporationRID = 10, ClientRID = contact.ContactForRID, GeneralInfo = new LG.Data.Models.Shared.PersonInfo() { FName = contact.PersonInfo.FName, MName = contact.PersonInfo.MName, LName = contact.PersonInfo.LName }, UserRID = contact.RID, }; break; } return(contact); }
public static async Task <LG.Data.Models.Shared.Contact> Save(LG.Data.Models.Shared.Contact contact) { return(await LG.Data.Core.Clients.ContactDataService.Save(contact)); }
public static async Task <BaseModel> SavePhoneTask(LG.Data.Models.Shared.Contact entity, Int32 index) { var client = ClientConnection.GetEmsConnection(); try { client.Open(); if (entity.EventAction == Models.Enums.ContactAction.Add) { #region [@ Add @] var response = await client.AddPhoneAsync( new AddPhoneRequest { MessageGuid = Guid.NewGuid(), RID = entity.RID, Phone = entity.Phones[index], PropBag = PropBag }); client.Close(); #endregion return(new BaseModel { IsError = response.ReturnStatus.IsError, Message = response.ReturnStatus.IsError ? response.ReturnStatus.ErrorMessage : response.ReturnStatus.GeneralMessage }); } else { #region [@ Update @] var response = await client.UpdatePhoneAsync( new UpdatePhoneRequest { MessageGuid = new Guid(), RID = entity.RID, NewPhone = entity.Phones[index], IsPrimary = entity.Phones[index].PhoneUsages[0].IsPrimary, PhoneIDToUpdate = entity.Phones[index].ID, NewPhoneUsageEnum = entity.Phones[index].PhoneUsages[0].PhoneUsageEnum, PhoneUsageEnumToUpdate = entity.Phones[index].PhoneUsages[0].PhoneUsageEnum, PropBag = PropBag }); client.Close(); #endregion return(new BaseModel { IsError = response.ReturnStatus.IsError, Message = response.ReturnStatus.IsError ? response.ReturnStatus.ErrorMessage : response.ReturnStatus.GeneralMessage }); } } catch (Exception ex) { client.Close(); return(new BaseModel { IsError = true, Message = ex.ToString() }); } }