public DivisionPhoneNumberVO(CS_LocalDivision division, CS_DivisionPhoneNumber phone) { DivisionID = division.ID; DivisionName = division.Name; DivisionAddress = division.Address; if (division.StateID.HasValue) DivisionStateName = division.CS_State.CountryAcronymName; if (division.CityID.HasValue) DivisionCityName = division.CS_City.ExtendedName; if (division.ZipCodeID.HasValue) DivisionZipCode = division.CS_ZipCode.ZipCodeNameEdited; PhoneID = phone.ID; PhoneType = phone.CS_PhoneType.Name; if (null != phone.Number) { string number = phone.Number.Trim(); PhoneNumber = string.Format("({0}) {1}", number.Substring(0, number.IndexOf("-")), number.Substring(number.IndexOf("-") + 1)); } }
public DivisionPhoneNumberVO(CS_LocalDivision division) { DivisionID = division.ID; DivisionName = division.Name; DivisionAddress = division.Address; }
/// <summary> /// Saves or Updates a local division information and its phone numbers /// </summary> /// <param name="divisionData">Division data do Save/Update</param> /// <param name="phoneNumbers">Phone numbers listing</param> public void SaveLocalDivision(CS_LocalDivision divisionData, IList<CS_DivisionPhoneNumber> phoneNumbers) { using (TransactionScope scope = new TransactionScope()) { IList<CS_DivisionPhoneNumber> addList = phoneNumbers.Where(e => e.ID == 0).ToList(); if (divisionData.ID > 0) { _localDivisionRepository.Update(divisionData); IList<CS_DivisionPhoneNumber> oldList = _localDivisionPhoneNumberRepository.ListAll(e => e.DivisionID == divisionData.ID && e.Active); List<int> updateIds = phoneNumbers.Where(e => e.ID > 0).Select(e => e.ID).ToList(); IList<CS_DivisionPhoneNumber> removeList = oldList.Where(e => !updateIds.Contains(e.ID)).ToList(); IList<CS_DivisionPhoneNumber> updateList = oldList.Where(e => updateIds.Contains(e.ID)).ToList(); foreach (CS_DivisionPhoneNumber item in removeList) { item.ModifiedBy = divisionData.ModifiedBy; item.ModificationDate = divisionData.ModificationDate; item.Active = false; } foreach (CS_DivisionPhoneNumber item in updateList) { CS_DivisionPhoneNumber updatedItem = phoneNumbers.Where(e => e.ID == item.ID).Single(); item.PhoneTypeID = updatedItem.PhoneTypeID; item.Number = updatedItem.Number; item.ModifiedBy = divisionData.ModifiedBy; item.ModificationDate = divisionData.ModificationDate; } if (removeList.Count > 0) _localDivisionPhoneNumberRepository.UpdateList(removeList); if (updateList.Count > 0) _localDivisionPhoneNumberRepository.UpdateList(updateList); } else { _localDivisionRepository.Add(divisionData); } foreach (CS_DivisionPhoneNumber item in addList) { item.DivisionID = divisionData.ID; item.CreatedBy = divisionData.ModifiedBy; item.CreationDate = divisionData.ModificationDate; item.ModifiedBy = divisionData.ModifiedBy; item.ModificationDate = divisionData.ModificationDate; item.Active = true; } if (addList.Count > 0) _localDivisionPhoneNumberRepository.AddList(addList); scope.Complete(); } }
public void DeleteLocalDivision(int divisionLocationID, string user) { using (TransactionScope scope = new TransactionScope()) { CS_LocalDivision localdivision = _localDivisionRepository.Get(e => e.ID == divisionLocationID && e.Active); if (null != localdivision) { DateTime actionDate = DateTime.Now; CS_LocalDivision updateLocalDivision = new CS_LocalDivision() { Active = false, Address = localdivision.Address, CityID = localdivision.CityID, CreatedBy = localdivision.CreatedBy, CreationDate = localdivision.CreationDate, CreationID = localdivision.CreationID, ID = localdivision.ID, ModificationDate = actionDate, //ModificationID, ModifiedBy = user, Name = localdivision.Name, StateID = localdivision.StateID, ZipCodeID = localdivision.ZipCodeID }; IList<CS_DivisionPhoneNumber> divisionPhones = _localDivisionPhoneNumberRepository.ListAll(e => e.CS_LocalDivision.ID == divisionLocationID && e.Active); IList<CS_DivisionPhoneNumber> updateDivisionPhones = new List<CS_DivisionPhoneNumber>(); for (int i = 0; i < divisionPhones.Count; i++) { updateDivisionPhones.Add ( new CS_DivisionPhoneNumber() { Active = false, CreatedBy = divisionPhones[i].CreatedBy, CreationDate = divisionPhones[i].CreationDate, CreationID = divisionPhones[i].CreationID, DivisionID = divisionPhones[i].DivisionID, ID = divisionPhones[i].ID, ModificationDate = actionDate, //ModificationID, ModifiedBy = user, Number = divisionPhones[i].Number, PhoneTypeID = divisionPhones[i].PhoneTypeID } ); } _localDivisionRepository.Update(updateLocalDivision); if (updateDivisionPhones.Count > 0) _localDivisionPhoneNumberRepository.UpdateList(updateDivisionPhones); } scope.Complete(); } }
/// <summary> /// Saves or Updates a local Division /// </summary> public void SaveLocalDivision() { CS_LocalDivision divisionData = new CS_LocalDivision(); if (_view.LocalDivisionID.HasValue) divisionData = _divisionModel.LoadLocalDivision(_view.LocalDivisionID.Value); else { divisionData.CreatedBy = _view.Username; divisionData.CreationDate = DateTime.Now; divisionData.Active = true; } divisionData.Name = _view.LocalDivisionNumber; divisionData.Address = _view.LocalDivisionAddress; divisionData.StateID = _view.LocalDivisionStateID; divisionData.CityID = _view.LocalDivisionCityID; divisionData.ZipCodeID = _view.LocalDivisionZipCodeID; divisionData.ModifiedBy = _view.Username; divisionData.ModificationDate = DateTime.Now; _divisionModel.SaveLocalDivision(divisionData, _view.LocalDivisionPhoneListing); ListFilteredPhoneListing(); _view.ShowHidePanelDivisionPhoneNumber = false; _view.ShowHidePanelButtons = false; _view.ShowHideFilter = true; _view.ClearDivisionFields(); }