public static Subscriber RestoreSubscriber(Subscriber sub) { using (RosettianClient client = new SIMPL.DAL.Rosettian.RosettianClient()) { if (!client.SubscriberExists(sub.ID, user)) { if (sub.Accounts != null && sub.Accounts.Count > 1 && sub.Accounts[0].ServiceEnabled == true) { sub.Accounts[0].ServiceEnabled = false; } client.CreateSubscriber(sub, user); } else { client.UpdateSubscriber(sub, user); } if (sub.Accounts != null && sub.Accounts.Count > 0) { List<ServiceProfile> serviceProfiles = sub.Accounts[0].ServiceProfiles; if (serviceProfiles != null && serviceProfiles.Count > 0) { List<Phone> expectedPhones = ((VoiceServiceProfile)serviceProfiles[0]).PhoneLines; RestorePhone(sub.ID, expectedPhones); } } return sub; } }
public static void RestorePhone(string subId, List<Phone> expected) { using (RosettianClient client = new SIMPL.DAL.Rosettian.RosettianClient()) { List<Phone> actual = client.LoadSubscriberPhones(subId, user); actual.ForEach(x => client.DeleteSubscriberPhone(subId, x.Number, user)); if (expected != null) { expected.ForEach(x => client.CreateSubscriberPhone(subId, x, user)); } } }
public static void RestoreLocation(Location loc) { using (RosettianClient client = new SIMPL.DAL.Rosettian.RosettianClient()) { if (!client.LocationExists(loc.ID, user)) { client.CreateLocation(loc, user); } else { client.UpdateLocation(loc, user); } } }
public static Equipment RestoreEquip(Equipment equip) { using (RosettianClient client = new SIMPL.DAL.Rosettian.RosettianClient()) { if (!client.EquipmentExists(equip.SerialNumber, user)) { client.CreateEquipment(equip, user); } else { client.UpdateEquipment(equip, user); } return equip; } }
public static EquipmentCollection RestoreEquip(EquipmentCriteria criteria) { using (RosettianClient client = new SIMPL.DAL.Rosettian.RosettianClient()) { if (!client.ONTExists(criteria.SerialNumber, user)) { client.CreateONT(criteria, user); } EquipmentCollection equip = client.SearchEquipment(new SearchFields { EquipmentId = criteria.SerialNumber }, user); for (int i = 0; i < equip.Count; i++) { Equipment x = equip[i]; if (x.LocationId != criteria.LocationId || x.Status != criteria.Status || x.UnitAddress != criteria.UnitAddress) { x.LocationId = criteria.LocationId; x.Status = criteria.Status; x.UnitAddress = criteria.UnitAddress; client.UpdateEquipment(x, user); } } return equip; } }
public static List<EquipmentModel> EquipmentModels() { using (RosettianClient client = new SIMPL.DAL.Rosettian.RosettianClient()) { List<EquipmentModel> models = client.GetEquipmentModelsAndTypes(user); return models; } }