コード例 #1
0
        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;
            }
        }
コード例 #2
0
ファイル: Organization.cs プロジェクト: clearfunction/bvcms
 private void detach_PrevOrgMemberExtras(PrevOrgMemberExtra entity)
 {
     this.SendPropertyChanging();
     entity.Organization = null;
 }
コード例 #3
0
        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);
            }
        }
コード例 #4
0
 private void detach_PrevOrgMemberExtras(PrevOrgMemberExtra entity)
 {
     this.SendPropertyChanging();
     entity.EnrollmentTransaction = null;
 }
コード例 #5
0
ファイル: Person.cs プロジェクト: clearfunction/bvcms
 private void attach_PrevOrgMemberExtras(PrevOrgMemberExtra entity)
 {
     this.SendPropertyChanging();
     entity.Person = this;
 }