public EnrollmentTransaction Drop(CMSDataContext db, DateTime dropdate, string orgname) { db.SubmitChanges(); while (true) { if (!EnrollmentDate.HasValue) EnrollmentDate = CreatedDate; var sglist = (from mt in db.OrgMemMemTags where mt.PeopleId == PeopleId where mt.OrgId == OrganizationId select mt.MemberTag.Name ).ToList(); var droptrans = new EnrollmentTransaction { OrganizationId = OrganizationId, PeopleId = PeopleId, MemberTypeId = MemberTypeId, OrganizationName = orgname, TransactionDate = dropdate, TransactionTypeId = 5, // drop CreatedBy = Util.UserId1, CreatedDate = Util.Now, Pending = Pending, AttendancePercentage = AttendPct, InactiveDate = InactiveDate, UserData = UserData, Request = Request, ShirtSize = ShirtSize, Grade = Grade, Tickets = Tickets, RegisterEmail = RegisterEmail, Score = Score, SmallGroups = string.Join("\n", sglist) }; db.EnrollmentTransactions.InsertOnSubmit(droptrans); db.OrgMemMemTags.DeleteAllOnSubmit(this.OrgMemMemTags); db.SubmitChanges(); foreach (var ev in this.OrgMemberExtras) { var ev2 = new PrevOrgMemberExtra() { EnrollmentTranId = droptrans.TransactionId, OrganizationId = ev.OrganizationId, PeopleId = ev.PeopleId, Field = ev.Field, StrValue = ev.StrValue, Data = ev.Data, BitValue = ev.BitValue, IntValue = ev.IntValue, DateValue = ev.DateValue, }; db.PrevOrgMemberExtras.InsertOnSubmit(ev2); db.SubmitChanges(); } db.OrgMemberExtras.DeleteAllOnSubmit(this.OrgMemberExtras); db.OrganizationMembers.DeleteOnSubmit(this); db.ExecuteCommand(@" DELETE dbo.SubRequest FROM dbo.SubRequest sr JOIN dbo.Attend a ON a.AttendId = sr.AttendId WHERE a.OrganizationId = {0} AND a.MeetingDate > {1} AND a.PeopleId = {2} ", OrganizationId, Util.Now, PeopleId); db.ExecuteCommand("DELETE dbo.Attend WHERE OrganizationId = {0} AND MeetingDate > {1} AND PeopleId = {2} AND ISNULL(Commitment, 1) = 1", OrganizationId, Util.Now, PeopleId); db.ExecuteCommand("DELETE dbo.Attend WHERE OrganizationId = {0} AND DATEADD(DAY, DATEDIFF(DAY, 0, MeetingDate), 0) = DATEADD(DAY, DATEDIFF(DAY, 0, GETDATE()), 0) AND PeopleId = {1} AND AttendanceFlag = 0", OrganizationId, PeopleId); db.ExecuteCommand("UPDATE dbo.GoerSenderAmounts SET InActive = 1 WHERE OrgId = {0} AND (GoerId = {1} OR SupporterId = {1})", OrganizationId, PeopleId); return droptrans; } }
private void detach_PrevOrgMemberExtras(PrevOrgMemberExtra entity) { this.SendPropertyChanging(); entity.Organization = null; }
public EnrollmentTransaction Drop(CMSDataContext db, DateTime dropdate, string orgname) { db.SubmitChanges(); while (true) { if (!EnrollmentDate.HasValue) { EnrollmentDate = CreatedDate; } var sglist = (from mt in db.OrgMemMemTags where mt.PeopleId == PeopleId where mt.OrgId == OrganizationId select mt.MemberTag.Name ).ToList(); var droptrans = new EnrollmentTransaction { OrganizationId = OrganizationId, PeopleId = PeopleId, MemberTypeId = MemberTypeId, OrganizationName = orgname, TransactionDate = dropdate, TransactionTypeId = 5, // drop CreatedBy = Util.UserId1, CreatedDate = Util.Now, Pending = Pending, AttendancePercentage = AttendPct, InactiveDate = InactiveDate, UserData = UserData, Request = Request, ShirtSize = ShirtSize, Grade = Grade, Tickets = Tickets, RegisterEmail = RegisterEmail, Score = Score, SmallGroups = string.Join("\n", sglist) }; db.EnrollmentTransactions.InsertOnSubmit(droptrans); db.OrgMemMemTags.DeleteAllOnSubmit(this.OrgMemMemTags); db.SubmitChanges(); foreach (var ev in this.OrgMemberExtras) { var ev2 = new PrevOrgMemberExtra() { EnrollmentTranId = droptrans.TransactionId, OrganizationId = ev.OrganizationId, PeopleId = ev.PeopleId, Field = ev.Field, StrValue = ev.StrValue, Data = ev.Data, BitValue = ev.BitValue, IntValue = ev.IntValue, DateValue = ev.DateValue, }; db.PrevOrgMemberExtras.InsertOnSubmit(ev2); db.SubmitChanges(); } db.OrgMemberExtras.DeleteAllOnSubmit(this.OrgMemberExtras); db.OrganizationMembers.DeleteOnSubmit(this); db.ExecuteCommand(@" DELETE dbo.SubRequest FROM dbo.SubRequest sr JOIN dbo.Attend a ON a.AttendId = sr.AttendId WHERE a.OrganizationId = {0} AND a.MeetingDate > {1} AND a.PeopleId = {2} ", OrganizationId, Util.Now, PeopleId); db.ExecuteCommand("DELETE dbo.Attend WHERE OrganizationId = {0} AND MeetingDate > {1} AND PeopleId = {2} AND ISNULL(Commitment, 1) = 1", OrganizationId, Util.Now, PeopleId); db.ExecuteCommand("DELETE dbo.Attend WHERE OrganizationId = {0} AND DATEADD(DAY, DATEDIFF(DAY, 0, MeetingDate), 0) = DATEADD(DAY, DATEDIFF(DAY, 0, GETDATE()), 0) AND PeopleId = {1} AND AttendanceFlag = 0", OrganizationId, PeopleId); db.ExecuteCommand("UPDATE dbo.GoerSenderAmounts SET InActive = 1 WHERE OrgId = {0} AND (GoerId = {1} OR SupporterId = {1})", OrganizationId, PeopleId); return(droptrans); } }
private void detach_PrevOrgMemberExtras(PrevOrgMemberExtra entity) { this.SendPropertyChanging(); entity.EnrollmentTransaction = null; }
private void attach_PrevOrgMemberExtras(PrevOrgMemberExtra entity) { this.SendPropertyChanging(); entity.Person = this; }