protected void Page_Load(object sender, EventArgs e) { RunSecurity(CRM.Code.Models.Admin.AllowedSections.NotSet); PersonOrganisation = db.CRM_PersonOrganisations.SingleOrDefault(c => c.ID.ToString() == Request.QueryString["pid"]); btnSubmitChanges.Visible = PermissionManager.CanUpdate; if (!PermissionManager.CanAdd && Entity == null) { Response.Redirect("list.aspx"); } ucNavPerson.Entity = Entity; ucLogNotes.INotes = PersonOrganisation; ucACOrganisation.EventHandler = lnkSelect_Click; ucACOrganisation.Config = new AutoCompleteConfig(JSONSet.DataSets.organisation); // buttons // btnSubmit.EventHandler = btnSubmit_Click; btnSubmitChanges.EventHandler = btnSubmitChanges_Click; btnDelete.EventHandler = btnDelete_Click; btnReinstate.EventHandler = btnReinstate_Click; // Security // btnSubmitChanges.Visible = PermissionManager.CanUpdate; btnDelete.Visible = PermissionManager.CanDelete; if (!PermissionManager.CanAdd && Entity == null) { Response.Redirect("list.aspx"); } // confirmations // confirmationDelete.StandardDeleteHidden("personal organisation record", btnRealDelete_Click); // process // CRMContext = PersonOrganisation; if (!IsPostBack) { ddlRole.DataSource = CRM_Role.BaseSet(db); ddlRole.DataBind(); if (PersonOrganisation != null) { PopulateFields(); } } }
protected void RunImport(int startLine, int endLine) { MainDataContext db = new MainDataContext(); HttpServerUtility Server = HttpContext.Current.Server; string path = "/TaskScript/Art_Booking.csv"; using (StreamReader reader = new StreamReader(Server.MapPath(path))) { lineNumber = 0; while (!reader.EndOfStream) { lineNumber++; string contents = reader.ReadLine(); if (lineNumber >= startLine && lineNumber <= endLine) { string[] contentsSplit = contents.Split(','); string errorMessage = ""; CRM_Person person = db.CRM_Persons.FirstOrDefault(f => f.PrimaryEmail.Trim().ToLower() == contentsSplit[(int)accountPos.Email].Trim().ToLower() && f.Lastname.Trim().ToLower() == contentsSplit[(int)accountPos.Lastname].Trim().ToLower()); if (person == null) { CRM_Address address = new CRM_Address(); address.AddressLine1 = contentsSplit[(int)accountPos.Address1]; address.AddressLine2 = contentsSplit[(int)accountPos.Address2]; address.AddressLine3 = contentsSplit[(int)accountPos.Address3]; address.AddressLine4 = contentsSplit[(int)accountPos.Address4]; address.AddressLine5 = ""; address.Town = ""; address.County = contentsSplit[(int)accountPos.Address4]; address.Postcode = contentsSplit[(int)accountPos.Postcode]; address.CountryID = 1; db.CRM_Addresses.InsertOnSubmit(address); db.SubmitChanges(); person = new CRM_Person(); db.CRM_Persons.InsertOnSubmit(person); person.AddressType = (byte)CRM_Address.Types.Home; person.DateAdded = UKTime.Now; person.IsArchived = false; person.IsChild = false; person.IsCarerMinder = false; person.PreviousNames = ""; person.PrimaryEmail = contentsSplit[(int)accountPos.Email]; person.PrimaryTelephone = contentsSplit[(int)accountPos.Phone1]; person.Telephone2 = contentsSplit[(int)accountPos.Phone2]; person.IsDoNotMail = false; person.LegacyID = null; person.CRM_AddressID = address.ID; person.Password = ""; person.TempCode = ""; } person.DateModified = UKTime.Now; person.Title = ""; person.Firstname = contentsSplit[(int)accountPos.Firstname]; person.Lastname = contentsSplit[(int)accountPos.Lastname]; person.IsMale = null; person.IsDoNotEmail = false; db.SubmitChanges(); if (!String.IsNullOrEmpty(contentsSplit[(int)accountPos.Company])) { CRM_Organisation org = db.CRM_Organisations.FirstOrDefault(f => f.Name.Trim().ToLower() == contentsSplit[(int)accountPos.Company].Trim().ToLower()); if (org == null) { CRM_Address orgAddress = new CRM_Address() { AddressLine1 = contentsSplit[(int)accountPos.Address1], AddressLine2 = contentsSplit[(int)accountPos.Address2], AddressLine3 = contentsSplit[(int)accountPos.Address3], AddressLine4 = contentsSplit[(int)accountPos.Address4], AddressLine5 = "", County = "", Town = "", Postcode = contentsSplit[(int)accountPos.Postcode], CountryID = 1 }; db.CRM_Addresses.InsertOnSubmit(orgAddress); db.SubmitChanges(); org = new CRM_Organisation() { CRM_OrganisationTypeID = 1, CRM_AddressID = orgAddress.ID, Name = contentsSplit[(int)accountPos.Company], IsArchived = false, PrimaryContactReference = person.Reference, }; db.CRM_Organisations.InsertOnSubmit(org); db.SubmitChanges(); } CRM_Role role = db.CRM_Roles.FirstOrDefault(f => f.Name == ""); CRM_PersonOrganisation personOrg = new CRM_PersonOrganisation() { CRM_OrganisationID = org.ID, CRM_RoleID = role.ID, IsArchived = false, Email = "", Telephone = "", CRM_PersonID = person.ID }; db.CRM_PersonOrganisations.InsertOnSubmit(personOrg); db.SubmitChanges(); } //constituent type CRM_FormFieldAnswer consTypeAnswer = db.CRM_FormFieldAnswers.FirstOrDefault(f => f.TargetReference == person.Reference && f.CRM_FormFieldID == 1); //origin CRM_FormFieldAnswer originAnswer = db.CRM_FormFieldAnswers.FirstOrDefault(f => f.TargetReference == person.Reference && f.CRM_FormFieldID == 2); if (consTypeAnswer == null) { consTypeAnswer = new CRM_FormFieldAnswer() { Answer = "Group Booking", CRM_FormFieldID = 1, TargetReference = person.Reference }; db.CRM_FormFieldAnswers.InsertOnSubmit(consTypeAnswer); db.SubmitChanges(); } else { string[] items = consTypeAnswer.Answer.Split(new string[] { "<br/>" }, StringSplitOptions.None); if (!items.Any(i => i == "Group Booking")) { consTypeAnswer.Answer += "<br/>Group Booking"; } db.SubmitChanges(); } if (originAnswer == null) { originAnswer = new CRM_FormFieldAnswer() { Answer = "Import", CRM_FormFieldID = 2, TargetReference = person.Reference }; db.CRM_FormFieldAnswers.InsertOnSubmit(originAnswer); db.SubmitChanges(); } else { string[] items = originAnswer.Answer.Split(new string[] { "<br/>" }, StringSplitOptions.None); if (!items.Any(i => i == "Import")) { consTypeAnswer.Answer += "<br/>Import"; } db.SubmitChanges(); } } } } }
public void RunImport(int startLine, int endLine) { MainDataContext db = new MainDataContext(); HttpServerUtility Server = HttpContext.Current.Server; string path = "/TaskScript/FinalListforCoalFace.csv"; using (StreamReader reader = new StreamReader(Server.MapPath(path))) { lineNumber = 0; while (!reader.EndOfStream) { lineNumber++; string contents = reader.ReadLine(); if (lineNumber >= startLine && lineNumber <= endLine) { string[] contentsSplit = contents.Split(','); string errorMessage = ""; CRM_FormFieldItem ffItem = db.CRM_FormFieldItems.FirstOrDefault(f => f.Label == contentsSplit[(int)accountPos.Constituent]); if (ffItem == null) { ffItem = new CRM_FormFieldItem() { Label = contentsSplit[(int)accountPos.Constituent], CRM_FormFieldID = 1, OrderNo = Code.Utils.Ordering.Ordering.GetNextOrderID(db.CRM_FormFieldItems), IsActive = true, IsArchived = false }; db.CRM_FormFieldItems.InsertOnSubmit(ffItem); db.SubmitChanges(); } CRM_Person person = db.CRM_Persons.FirstOrDefault(f => f.LegacyID != null && f.LegacyID.ToString() == contentsSplit[(int)accountPos.LegacyID]); if (person == null) { CRM_Address address = new CRM_Address(); address.AddressLine1 = contentsSplit[(int)accountPos.Address1]; address.AddressLine2 = contentsSplit[(int)accountPos.Address2]; address.AddressLine3 = contentsSplit[(int)accountPos.Address3]; address.AddressLine4 = contentsSplit[(int)accountPos.Address4]; address.AddressLine5 = contentsSplit[(int)accountPos.Address5]; address.Town = contentsSplit[(int)accountPos.City]; address.County = contentsSplit[(int)accountPos.County]; address.Postcode = contentsSplit[(int)accountPos.Postcode]; address.CountryID = 1; db.CRM_Addresses.InsertOnSubmit(address); db.SubmitChanges(); person = new CRM_Person(); db.CRM_Persons.InsertOnSubmit(person); if (contentsSplit[(int)accountPos.AddressType] == "Business") { person.AddressType = (byte)CRM_Address.Types.Business; } person.AddressType = (byte)CRM_Address.Types.Home; person.DateAdded = UKTime.Now; person.DateModified = UKTime.Now; person.IsArchived = false; person.IsChild = false; person.IsCarerMinder = false; person.PreviousNames = ""; person.PrimaryEmail = ""; person.PrimaryTelephone = ""; person.Telephone2 = ""; person.IsDoNotMail = false; person.LegacyID = Convert.ToInt32(contentsSplit[(int)accountPos.LegacyID]); person.CRM_AddressID = address.ID; person.Password = ""; person.TempCode = ""; } person.Title = contentsSplit[(int)accountPos.Title]; person.Firstname = contentsSplit[(int)accountPos.Firstname]; person.Lastname = contentsSplit[(int)accountPos.Surname]; if (contentsSplit[(int)accountPos.Gender] == "Male") { person.IsMale = true; } else if (contentsSplit[(int)accountPos.Gender] == "Female") { person.IsMale = false; } else { person.IsMale = null; } if (contentsSplit[(int)accountPos.NoEmail] == "Yes") { person.IsDoNotEmail = true; } db.SubmitChanges(); CRM_FormFieldAnswer answer = new CRM_FormFieldAnswer() { Answer = contentsSplit[(int)accountPos.Constituent], CRM_FormFieldID = ffItem.CRM_FormFieldID, TargetReference = person.Reference }; db.CRM_FormFieldAnswers.InsertOnSubmit(answer); db.SubmitChanges(); if (contentsSplit[(int)accountPos.PhoneNumber11].Contains("@")) { person.PrimaryEmail = contentsSplit[(int)accountPos.PhoneNumber11]; } else { person.PrimaryTelephone = contentsSplit[(int)accountPos.PhoneNumber11]; person.PrimaryEmail = contentsSplit[(int)accountPos.PhoneNumber12]; } if (!contentsSplit[(int)accountPos.PhoneNumber12].Contains("@")) { person.Telephone2 = contentsSplit[(int)accountPos.PhoneNumber12]; } db.SubmitChanges(); if (!String.IsNullOrEmpty(contentsSplit[(int)accountPos.MembershipID].Trim())) { CRM_AnnualPassCard card = new CRM_AnnualPassCard() { MembershipNumber = Convert.ToInt32(contentsSplit[(int)accountPos.MembershipID]) }; db.CRM_AnnualPassCards.InsertOnSubmit(card); db.SubmitChanges(); CRM_AnnualPass pass = new CRM_AnnualPass(); pass.CRM_AnnualPassCardID = card.ID; pass.AmountPaid = 0; pass.CRM_AnnualPassTypeID = 15; pass.IsArchived = false; pass.DiscountApplied = ""; pass.PrimaryContactReference = person.Reference; try { if (!String.IsNullOrEmpty(contentsSplit[(int)accountPos.MembershipExpiry]) && String.IsNullOrEmpty((contentsSplit[(int)accountPos.MembershipLastRenew]))) { pass.StartDate = Code.Utils.Text.Text.FormatInputDate(contentsSplit[(int)accountPos.MembershipExpiry]); } else { pass.StartDate = Code.Utils.Text.Text.FormatInputDate(contentsSplit[(int)accountPos.MembershipExpiry]).AddYears(-1); } } catch { pass.StartDate = UKTime.Now; } try { pass.ExpiryDate = Code.Utils.Text.Text.FormatInputDate(contentsSplit[(int)accountPos.MembershipExpiry]); } catch { pass.ExpiryDate = new DateTime(2075, 12, 31); } db.CRM_AnnualPasses.InsertOnSubmit(pass); db.SubmitChanges(); CRM_AnnualPassPerson passPerson = new CRM_AnnualPassPerson() { CRM_AnnualPassID = pass.ID, CRM_PersonID = person.ID, IsArchived = false }; db.CRM_AnnualPassPersons.InsertOnSubmit(passPerson); db.SubmitChanges(); } if (!String.IsNullOrEmpty(contentsSplit[(int)accountPos.OrgName])) { CRM_Organisation org = db.CRM_Organisations.FirstOrDefault(f => f.Name == contentsSplit[(int)accountPos.OrgName]); if (org == null) { CRM_Address orgAddress = new CRM_Address() { AddressLine1 = contentsSplit[(int)accountPos.OrgAddr1], AddressLine2 = contentsSplit[(int)accountPos.OrgAddr2], AddressLine3 = contentsSplit[(int)accountPos.OrgAddr3], AddressLine4 = contentsSplit[(int)accountPos.OrgAddr4], AddressLine5 = "", County = "", Town = contentsSplit[(int)accountPos.OrgAddrCity], Postcode = contentsSplit[(int)accountPos.Postcode], CountryID = 1 }; db.CRM_Addresses.InsertOnSubmit(orgAddress); db.SubmitChanges(); org = new CRM_Organisation() { CRM_OrganisationTypeID = 1, CRM_AddressID = orgAddress.ID, Name = contentsSplit[(int)accountPos.OrgName], IsArchived = false, PrimaryContactReference = person.Reference }; db.CRM_Organisations.InsertOnSubmit(org); db.SubmitChanges(); } CRM_Role role = db.CRM_Roles.FirstOrDefault(f => f.Name == contentsSplit[(int)accountPos.OrgPosition]); if (role == null) { role = new CRM_Role(); db.CRM_Roles.InsertOnSubmit(role); role.Name = contentsSplit[(int)accountPos.OrgPosition]; db.SubmitChanges(); } CRM_PersonOrganisation personOrg = new CRM_PersonOrganisation() { CRM_OrganisationID = org.ID, CRM_RoleID = role.ID, IsArchived = false, Email = "", Telephone = "", CRM_PersonID = person.ID }; db.CRM_PersonOrganisations.InsertOnSubmit(personOrg); db.SubmitChanges(); } } } } }
public void RunImport(int startLine, int endLine) { MainDataContext db = new MainDataContext(); HttpServerUtility Server = HttpContext.Current.Server; string path = "/TaskScript/FinalListforCoalFace.csv"; using (StreamReader reader = new StreamReader(Server.MapPath(path))) { lineNumber = 0; while (!reader.EndOfStream) { lineNumber++; string contents = reader.ReadLine(); if (lineNumber >= startLine && lineNumber <= endLine) { string[] contentsSplit = contents.Split(','); string errorMessage = ""; CRM_Person person = db.CRM_Persons.FirstOrDefault(f => f.LegacyID != null && f.LegacyID.ToString() == contentsSplit[(int)accountPos.LegacyID]); if (person != null && contentsSplit[(int)accountPos.Constituent] == "Schools and universities") { /* * if (contentsSplit[(int)accountPos.PhoneNumber11].Contains("@")) * { * person.PrimaryEmail = contentsSplit[(int)accountPos.PhoneNumber11]; * } * else * { * person.PrimaryTelephone = contentsSplit[(int)accountPos.PhoneNumber11]; * person.PrimaryEmail = contentsSplit[(int)accountPos.PhoneNumber12]; * } * * if (!contentsSplit[(int)accountPos.PhoneNumber12].Contains("@")) * { * person.Telephone2 = contentsSplit[(int)accountPos.PhoneNumber12]; * } * * db.SubmitChanges(); */ if (!String.IsNullOrEmpty(contentsSplit[(int)accountPos.Address1])) { CRM_School org = db.CRM_Schools.FirstOrDefault(f => f.Name == contentsSplit[(int)accountPos.Address1]); if (org == null) { string name = ""; CRM_Address orgAddress = new CRM_Address(); if (!String.IsNullOrEmpty(contentsSplit[(int)accountPos.OrgAddr1].Trim())) { orgAddress = new CRM_Address() { AddressLine1 = contentsSplit[(int)accountPos.OrgAddr1], AddressLine2 = contentsSplit[(int)accountPos.OrgAddr2], AddressLine3 = contentsSplit[(int)accountPos.OrgAddr3], AddressLine4 = contentsSplit[(int)accountPos.OrgAddr4], AddressLine5 = "", County = "", Town = contentsSplit[(int)accountPos.OrgAddrCity], Postcode = contentsSplit[(int)accountPos.OrgAddrPostcode], CountryID = 1 }; db.CRM_Addresses.InsertOnSubmit(orgAddress); db.SubmitChanges(); name = contentsSplit[(int)accountPos.OrgName]; } else { orgAddress = new CRM_Address() { AddressLine1 = contentsSplit[(int)accountPos.Address1], AddressLine2 = contentsSplit[(int)accountPos.Address2], AddressLine3 = contentsSplit[(int)accountPos.Address3], AddressLine4 = contentsSplit[(int)accountPos.Address4], AddressLine5 = "", County = "", Town = contentsSplit[(int)accountPos.City], Postcode = contentsSplit[(int)accountPos.Postcode], CountryID = 1 }; db.CRM_Addresses.InsertOnSubmit(orgAddress); db.SubmitChanges(); name = contentsSplit[(int)accountPos.Address1]; } org = new CRM_School() { CRM_SchoolTypeID = 1, CRM_AddressID = orgAddress.ID, Name = name, IsArchived = false, PrimaryContactReference = person.Reference, SENSupportFreq = "", SageAccountNumber = "", Phone = "", Email = "" }; db.CRM_Schools.InsertOnSubmit(org); db.SubmitChanges(); } CRM_Role role = db.CRM_Roles.FirstOrDefault(f => f.Name == contentsSplit[(int)accountPos.OrgPosition]); if (role == null) { role = new CRM_Role(); db.CRM_Roles.InsertOnSubmit(role); role.Name = contentsSplit[(int)accountPos.OrgPosition]; db.SubmitChanges(); } CRM_PersonSchool personOrg = new CRM_PersonSchool() { CRM_SchoolID = org.ID, CRM_RoleID = role.ID, IsArchived = false, Email = "", Telephone = contentsSplit[(int)accountPos.PhoneNumber21], CRM_PersonID = person.ID }; db.CRM_PersonSchools.InsertOnSubmit(personOrg); db.SubmitChanges(); } } } } } }