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.Activity: ActivityFacade facade = new ActivityFacade(uow); ActivityDto instanceDto = e.Instance as ActivityDto; instanceDto.EmployeeId = CurrentInstance.Id; // Save data IFacadeUpdateResult <ActivityData> result = facade.SaveActivity(instanceDto); e.IsSuccessful = result.IsSuccessful; if (result.IsSuccessful) { // Refresh data in session CurrentInstance.Activitys = facade.RetrieveActivitysByEmployee(CurrentInstance.Id, new ActivityConverter()); } else { ProcUpdateResult(result.ValidationResult, result.Exception); } break; } } }
protected void ucIList_InstanceRowSaving(object sender, InstanceRowSavingEventArgs e) { using (IUnitOfWork uow = UnitOfWorkFactory.Instance.Start(DataStoreResolver.CRMDataStoreKey)) { ActivityDto project = e.Instance as ActivityDto; ActivityFacade facade = new ActivityFacade(uow); IFacadeUpdateResult <ActivityData> result = facade.SaveActivity(project); e.IsSuccessful = result.IsSuccessful; if (result.IsSuccessful) { // Refresh whole list RetrieveInstances(facade); } else { // Deal with Update result ProcUpdateResult(result.ValidationResult, result.Exception); } } }
protected void ucIEdit_InstanceSaving(object sender, InstanceSavingEventArgs e) { ActivityDto instance = e.Instance as ActivityDto; if (instance != null) { using (IUnitOfWork uow = UnitOfWorkFactory.Instance.Start(DataStoreResolver.CRMDataStoreKey)) { ActivityFacade facade = new ActivityFacade(uow); IFacadeUpdateResult <ActivityData> result = facade.SaveActivity(instance); e.IsSuccessful = result.IsSuccessful; if (result.IsSuccessful) { // Refresh Instance CurrentInstance = result.ToDto <ActivityDto>(new ActivityConverter()); } else { // Deal with Update result ProcUpdateResult(result.ValidationResult, result.Exception); } } } }
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; } } }