private void PerformSave(ExcelImportEventArgs arg) { ExcelSheet excelSheet = arg.Result; // Extract data from imported Excel sheet List <ContactDto> contacts = new List <ContactDto>(); foreach (ExcelSheetRow excelRow in excelSheet.Rows) { ContactDto contact = new ContactDto(); ExtractImportedSheetRow(contact, excelRow); contact.EmployeeId = CurrentUserContext.User.MatchId; contacts.Add(contact); } // Save batch using (IUnitOfWork uow = UnitOfWorkFactory.Instance.Start(DataStoreResolver.CRMDataStoreKey)) { ContactFacade facade = new ContactFacade(uow); IFacadeUpdateResult <ContactData> result = facade.SaveContacts(contacts); if (result.IsSuccessful) { arg.Message = string.Format("Batch save done. \\nTotal {0} rows.", contacts.Count); } else { // Deal with Update result ProcUpdateResult(result.ValidationResult, result.Exception); } } }
private IEnumerable <ContactDto> GetContactList() { using (IUnitOfWork uow = UnitOfWorkFactory.Instance.Start(DataStoreResolver.CRMDataStoreKey)) { ContactFacade ContactFacade = new ContactFacade(uow); return(ContactFacade.RetrieveAllContact(new ContactConverter())); } }
private void RetrieveData() { using (IUnitOfWork uow = UnitOfWorkFactory.Instance.Start(DataStoreResolver.CRMDataStoreKey)) { ContactFacade facade = new ContactFacade(uow); RetrieveInstances(facade); } }
protected void ucIDetail_ChildListInstanceRowDeleting(object sender, InstanceRowDeletingEventArgs e) { using (IUnitOfWork uow = UnitOfWorkFactory.Instance.Start(DataStoreResolver.CRMDataStoreKey)) { switch ((InstanceTypes)Enum.Parse(typeof(InstanceTypes), e.InstanceType)) { case InstanceTypes.Contact: ContactFacade facade = new ContactFacade(uow); IFacadeUpdateResult <ContactData> result = facade.DeleteContact(e.Instance.Id); e.IsSuccessful = result.IsSuccessful; if (result.IsSuccessful) { // Refresh data in session CurrentInstance.Contacts = facade.RetrieveContactsByCustomer(CurrentInstance.Id, new ContactConverter()); } else { // Deal with Update result ProcUpdateResult(result.ValidationResult, result.Exception); } break; case InstanceTypes.ScheduleEvent: ScheduleEventFacade facade2 = new ScheduleEventFacade(uow); // Delete data IFacadeUpdateResult <ScheduleEventData> result2 = facade2.DeleteScheduleEvent(e.Instance.Id); e.IsSuccessful = result2.IsSuccessful; if (result2.IsSuccessful) { // Refresh data in session CurrentInstance.ScheduleEvents = facade2.RetrieveScheduleEventsByCustomer(CurrentInstance.Id, new ScheduleEventConverter()); } else { ProcUpdateResult(result2.ValidationResult, result2.Exception); } break; case InstanceTypes.ShipTo: ShipToFacade facade3 = new ShipToFacade(uow); // Delete data IFacadeUpdateResult <ShipToData> result3 = facade3.DeleteShipTo(e.Instance.Id); e.IsSuccessful = result3.IsSuccessful; if (result3.IsSuccessful) { // Refresh data in session CurrentInstance.ShipTos = facade3.RetrieveShipTosByCustomer(CurrentInstance.Id, new ShipToConverter()); } else { ProcUpdateResult(result3.ValidationResult, result3.Exception); } break; } } }
private void RetrieveData() { using (IUnitOfWork uow = UnitOfWorkFactory.Instance.Start(DataStoreResolver.CRMDataStoreKey)) { ContactFacade facade = new ContactFacade(uow); ContactDto instance = facade.RetrieveOrNewContact(InstanceId, new ContactConverter()); CurrentInstance = instance; ucIEdit.CurrentInstance = instance; } }
private void RetrieveInstances(ContactFacade facade) { if (CurrentUserContext.IsAdmin) { CurrentInstances = facade.RetrieveAllContact(new ContactConverter()); } else if (CurrentUserContext.IsEmployee) { CurrentInstances = facade.RetrieveContactsByEmployee(CurrentUserContext.User.MatchId, new ContactConverter()); } }
/// <summary> /// Invoked when an item on the recentConversationsListView is clicked. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void recentConversationsListView_ItemClick(object sender, ItemClickEventArgs e) { //profile to use for 'currentCorrespondentButton' in chatpage. Profile _profile = ContactFacade.GetProfile(e.ClickedItem as RecentConversation); if (AppShellNavigation.AppShell.IsInMobileMode) { AppShellNavigation.AppShell.ShowChatPageOnly(); } if (_profile != null) { if (MessageFacade.Correspondent == null || MessageFacade.Correspondent.User.Id != _profile.User.Id) { MessageFacade.Correspondent = _profile; AppShellNavigation.ChatFrame.Navigate(typeof(ChatPage), _profile); } } }
protected void ucIList_InstanceRowDeleting(object sender, InstanceRowDeletingEventArgs e) { using (IUnitOfWork uow = UnitOfWorkFactory.Instance.Start(DataStoreResolver.CRMDataStoreKey)) { ContactFacade facade = new ContactFacade(uow); IFacadeUpdateResult <ContactData> result = facade.DeleteContact(e.Instance.Id); e.IsSuccessful = result.IsSuccessful; if (result.IsSuccessful) { // Refresh whole list RetrieveInstances(facade); } else { // Deal with Update result ProcUpdateResult(result.ValidationResult, result.Exception); } } }
private DataRow ContactDataBind(ContactDTO contact, string protocolId, bool isSender) { var contactRow = _protocolDataSet.ContactDataTable.NewContactDataTableRow(); contactRow.Protocol_ID = protocolId; contactRow.Contact_IsSender = isSender; contactRow.Contact_ID = contact.Id; if (contact.Contact != null) { contactRow.Contact_Description = contact.Contact.Description; contactRow.Contact_FullIncrementalPath = contact.Contact.FullIncrementalPath; var formattedDescription = string.Empty; ContactFacade.FormatContacts(contact.Contact, ref formattedDescription); contactRow.Contact_FormattedDescription = formattedDescription; contactRow.Contact_BirthDate = string.Format("{0:dd/MM/yyyy}", contact.Contact.BirthDate); contactRow.Contact_FullDescription = contact.Contact.FullDescription; contactRow.Contact_LastName = contact.Contact.LastName; contactRow.Contact_FirstName = contact.Contact.FirstName; if (contact.Contact.Address != null) { contactRow.Contact_Località = string.Format("{0} {1}{2}", contact.Contact.Address.ZipCode, contact.Contact.Address.City, !string.IsNullOrEmpty(contact.Contact.Address.CityCode) ? string.Format(" ({0})", contact.Contact.Address.CityCode) : string.Empty); contactRow.Contact_Indirizzo = string.Format("{0}{1}{2}", (contact.Contact.Address.PlaceName != null ? contact.Contact.Address.PlaceName.Description + " " : string.Empty), contact.Contact.Address.Address, !string.IsNullOrEmpty(contact.Contact.Address.CivicNumber) ? string.Format(", {0}", contact.Contact.Address.CivicNumber) : string.Empty); contactRow.Contact_Provincia = contact.Contact.Address.CityCode; contactRow.Contact_Citta = contact.Contact.Address.City; contactRow.Contact_CAP = contact.Contact.Address.ZipCode; } } return(contactRow); }
protected void ucIEdit_InstanceSaving(object sender, InstanceSavingEventArgs e) { ContactDto instance = e.Instance as ContactDto; if (instance != null) { using (IUnitOfWork uow = UnitOfWorkFactory.Instance.Start(DataStoreResolver.CRMDataStoreKey)) { ContactFacade facade = new ContactFacade(uow); IFacadeUpdateResult <ContactData> result = facade.SaveContact(instance); e.IsSuccessful = result.IsSuccessful; if (result.IsSuccessful) { // Refresh Instance CurrentInstance = result.ToDto <ContactDto>(new ContactConverter()); } else { // Deal with Update result ProcUpdateResult(result.ValidationResult, result.Exception); } } } }
protected void ucIDetail_ChildListInstanceRowDeleting(object sender, InstanceRowDeletingEventArgs e) { using (IUnitOfWork uow = UnitOfWorkFactory.Instance.Start(DataStoreResolver.CRMDataStoreKey)) { switch ((InstanceTypes)Enum.Parse(typeof(InstanceTypes), e.InstanceType)) { case InstanceTypes.ContactContactMethod: ContactFacade facade = new ContactFacade(uow); IFacadeUpdateResult <ContactData> result = facade.DeleteContactContactMethod(CurrentInstance.Id, e.Instance.Id); e.IsSuccessful = result.IsSuccessful; if (result.IsSuccessful) { // Refresh whole list ContactDto savedCurrentInstance = result.ToDto(new ContactConverter()); CurrentInstance.ContactContactMethods = savedCurrentInstance.ContactContactMethods; // Note: Can't refresh CurrentInstance this way, it will ruin other child list data //ucIDetail.CurrentInstance = savedCurrentInstance; } else { // Deal with Update result ProcUpdateResult(result.ValidationResult, result.Exception); } break; case InstanceTypes.ScheduleEvent: ScheduleEventFacade facade2 = new ScheduleEventFacade(uow); // Delete data IFacadeUpdateResult <ScheduleEventData> result2 = facade2.DeleteScheduleEvent(e.Instance.Id); e.IsSuccessful = result2.IsSuccessful; if (result2.IsSuccessful) { // Refresh data in session CurrentInstance.ScheduleEvents = facade2.RetrieveScheduleEventsByContact(CurrentInstance.Id, new ScheduleEventConverter()); } else { // Deal with Update result ProcUpdateResult(result2.ValidationResult, result2.Exception); } break; case InstanceTypes.Activity: ActivityFacade facade3 = new ActivityFacade(uow); // Delete data IFacadeUpdateResult <ActivityData> result3 = facade3.DeleteActivity(e.Instance.Id); e.IsSuccessful = result3.IsSuccessful; if (result3.IsSuccessful) { // Refresh data in session CurrentInstance.Activitys = facade3.RetrieveActivitysByContact(CurrentInstance.Id, new ActivityConverter()); } else { // Deal with Update result ProcUpdateResult(result3.ValidationResult, result3.Exception); } break; case InstanceTypes.Transaction: TransactionFacade facade4 = new TransactionFacade(uow); // Delete data IFacadeUpdateResult <TransactionData> result4 = facade4.DeleteTransaction(e.Instance.Id); e.IsSuccessful = result4.IsSuccessful; if (result4.IsSuccessful) { // Refresh data in session CurrentInstance.Transactions = facade4.RetrieveTransactionsByContact(CurrentInstance.Id, new TransactionConverter()); } else { // Deal with Update result ProcUpdateResult(result4.ValidationResult, result4.Exception); } break; } } }
protected void ucIDetail_ChildListInstanceRowSaving(object sender, InstanceRowSavingEventArgs e) { using (IUnitOfWork uow = UnitOfWorkFactory.Instance.Start(DataStoreResolver.CRMDataStoreKey)) { switch ((InstanceTypes)Enum.Parse(typeof(InstanceTypes), e.InstanceType)) { case InstanceTypes.ContactContactMethod: ContactFacade facade = new ContactFacade(uow); ContactContactMethodDto contactMethodDto = e.Instance as ContactContactMethodDto; // Save data IFacadeUpdateResult <ContactData> result = facade.SaveContactContactMethod(CurrentInstance.Id, contactMethodDto); e.IsSuccessful = result.IsSuccessful; if (result.IsSuccessful) { // Refresh ContactDto savedCurrentInstance = result.ToDto(new ContactConverter()); CurrentInstance.ContactContactMethods = savedCurrentInstance.ContactContactMethods; // Note: Can't refresh CurrentInstance this way, it will ruin other child list data //ucIDetail.CurrentInstance = savedInstance; } else { // Deal with Update result ProcUpdateResult(result.ValidationResult, result.Exception); } break; case InstanceTypes.ScheduleEvent: ScheduleEventFacade facade2 = new ScheduleEventFacade(uow); ScheduleEventDto eventDto = e.Instance as ScheduleEventDto; eventDto.ObjectId = CurrentInstance.Id; eventDto.ObjectTypeId = (int)EventObjectTypes.Contact; // Save data IFacadeUpdateResult <ScheduleEventData> result2 = facade2.SaveScheduleEvent(eventDto); e.IsSuccessful = result2.IsSuccessful; if (result2.IsSuccessful) { // Refresh data in session CurrentInstance.ScheduleEvents = facade2.RetrieveScheduleEventsByContact(CurrentInstance.Id, new ScheduleEventConverter()); } else { // Deal with Update result ProcUpdateResult(result2.ValidationResult, result2.Exception); } break; case InstanceTypes.Activity: ActivityFacade facade3 = new ActivityFacade(uow); ActivityDto activityDto = e.Instance as ActivityDto; activityDto.ContactId = CurrentInstance.Id; activityDto.CustomerId = CurrentInstance.CustomerId; activityDto.EmployeeId = CurrentUserContext.User.MatchId; // Save data IFacadeUpdateResult <ActivityData> result3 = facade3.SaveActivity(activityDto); e.IsSuccessful = result3.IsSuccessful; if (result3.IsSuccessful) { // Refresh data in session CurrentInstance.Activitys = facade3.RetrieveActivitysByContact(CurrentInstance.Id, new ActivityConverter()); } else { // Deal with Update result ProcUpdateResult(result3.ValidationResult, result3.Exception); } break; case InstanceTypes.Transaction: TransactionFacade facade4 = new TransactionFacade(uow); TransactionDto TransactionDto = e.Instance as TransactionDto; TransactionDto.ContactId = CurrentInstance.Id; TransactionDto.CustomerId = CurrentInstance.CustomerId; // Save data IFacadeUpdateResult <TransactionData> result4 = facade4.SaveTransaction(TransactionDto); e.IsSuccessful = result4.IsSuccessful; if (result4.IsSuccessful) { // Refresh data in session CurrentInstance.Transactions = facade4.RetrieveTransactionsByContact(CurrentInstance.Id, new TransactionConverter()); } else { // Deal with Update result ProcUpdateResult(result4.ValidationResult, result4.Exception); } break; } } }
protected void ucIDetail_ChildListInstanceRowSaving(object sender, InstanceRowSavingEventArgs e) { using (IUnitOfWork uow = UnitOfWorkFactory.Instance.Start(DataStoreResolver.CRMDataStoreKey)) { switch ((InstanceTypes)Enum.Parse(typeof(InstanceTypes), e.InstanceType)) { case InstanceTypes.Contact: ContactFacade facade = new ContactFacade(uow); ContactDto contactDto = e.Instance as ContactDto; contactDto.CustomerId = CurrentInstance.Id; // Save data IFacadeUpdateResult <ContactData> result = facade.SaveContact(contactDto); e.IsSuccessful = result.IsSuccessful; if (result.IsSuccessful) { // Refresh data in session CurrentInstance.Contacts = facade.RetrieveContactsByCustomer(CurrentInstance.Id, new ContactConverter()); } else { ProcUpdateResult(result.ValidationResult, result.Exception); } break; case InstanceTypes.ScheduleEvent: ScheduleEventFacade facade2 = new ScheduleEventFacade(uow); ScheduleEventDto eventDto = e.Instance as ScheduleEventDto; eventDto.ObjectId = CurrentInstance.Id; eventDto.ObjectTypeId = (int)EventObjectTypes.Customer; // Save data IFacadeUpdateResult <ScheduleEventData> result2 = facade2.SaveScheduleEvent(eventDto); e.IsSuccessful = result2.IsSuccessful; if (result2.IsSuccessful) { // Refresh data in session CurrentInstance.ScheduleEvents = facade2.RetrieveScheduleEventsByCustomer(CurrentInstance.Id, new ScheduleEventConverter()); } else { ProcUpdateResult(result2.ValidationResult, result2.Exception); } break; case InstanceTypes.ShipTo: ShipToFacade facade3 = new ShipToFacade(uow); ShipToDto shipToDto = e.Instance as ShipToDto; shipToDto.CustomerId = CurrentInstance.Id; // Save data IFacadeUpdateResult <ShipToData> result3 = facade3.SaveShipTo(shipToDto); e.IsSuccessful = result3.IsSuccessful; if (result3.IsSuccessful) { // Refresh data in session CurrentInstance.ShipTos = facade3.RetrieveShipTosByCustomer(CurrentInstance.Id, new ShipToConverter()); } else { ProcUpdateResult(result3.ValidationResult, result3.Exception); } break; } } }
public ContactsPageViewModel() { _allFriends = ContactFacade.GetAllFriends(out error); _recentConversations = ContactFacade.GetRecentConversations(out error); Friends = ContactFacade.GetFriendProfiles(); }