}                                                          //for Chosen Plugin DDL

        public List <string> AddEditActivity(int memberId, int activityID, int activityStatusID, bool?isParticipated, DateTime activityDate, string activityNote, string userId)
        {
            Error error = new Error();

            error.errCode = ErrorDetail.Success;
            List <string> errs     = new List <string>();
            List <string> warnings = new List <string>();
            string        warning  = String.Empty;

            using (LRCEntities context = new LRCEntities())
            {
                try
                {
                    var existingActivity = context.tb_MemberActivity.Where(t => t.MemberID == memberId && t.ActivityID == activityID).FirstOrDefault();
                    if (existingActivity == null) // Add new activity for selected Member
                    {
                        tb_MemberActivity memberActivity = new tb_MemberActivity
                        {
                            ActivityID       = activityID,
                            MemberID         = memberId,
                            ActivityStatusID = activityStatusID,
                            Participated     = isParticipated
                        };
                        context.tb_MemberActivity.Add(memberActivity);
                    }
                    else //Edit existing activity for selected Member
                    {
                        existingActivity.ActivityStatusID = activityStatusID;
                        existingActivity.Participated     = isParticipated;
                    }

                    tb_Activity activity = context.tb_Activity.Find(activityID);
                    // Change if Activity was edited (activityDate or ActivityNote fields)
                    if (activity.ActivityDate != activityDate || activity.ActivityNote.ToUpper() != activityNote.ToUpper())
                    {
                        activity.ModifiedBy       = userId;
                        activity.ModifiedDateTime = DateTime.UtcNow;
                        activity.ActivityDate     = activityDate;
                        activity.ActivityNote     = activityNote;
                    }
                    context.SaveChanges();
                }
                catch (DbEntityValidationException ex)
                {
                    error.errCode = ErrorDetail.DataImportError;
                    error.errMsg  = ErrorDetail.GetMsg(error.errCode);
                    foreach (DbEntityValidationResult validationError in ex.EntityValidationErrors)
                    {
                        error.errMsg += ". Object: " + validationError.Entry.Entity.ToString();
                        foreach (DbValidationError err in validationError.ValidationErrors)
                        {
                            error.errMsg += ". " + err.ErrorMessage;
                        }
                    }
                    errs.Add("Error #" + error.errCode.ToString() + "!" + error.errMsg);
                    return(errs);
                }
            }
            return(errs);
        }
Exemple #2
0
        public ActionResult CreateActivity([Bind(Include = "_ActivityName,_ActivityDate,_ActivityNote,_CollegeID,_CampusID,_Callback,_MemberId,_ReturnCollegeID")] ActivityModels model, FormCollection formCollection)
        {
            Error error = new Error();

            error.errCode = ErrorDetail.Success;
            error.errMsg  = ErrorDetail.GetMsg(error.errCode);
            List <string> errs = new List <string>();

            model._Colleges = new List <SelectListItem>
            {
                new SelectListItem()
                {
                    Value = "0", Text = "-- Select One --"
                }
            }.Concat(db.tb_College.Select(x => new SelectListItem
            {
                Value = x.CollegeID.ToString(), Text = x.CollegeName
            }));
            model._Campuses = new SelectList(db.tb_Campus.Where(s => s.CollegeID == model._CollegeID).OrderBy(s => s.CampusName), "CampusID", "CampusName");

            var userId = HttpContext.GetOwinContext().Authentication.User.Identity.GetUserId();

            using (LRCEntities context = new LRCEntities())
            {
                tb_Activity tb_Activity = new tb_Activity
                {
                    ActivityName  = model._ActivityName,
                    ActivityDate  = model._ActivityDate,
                    CampusID      = model._CampusID,
                    ActivityNote  = model._ActivityNote,
                    AddedBy       = userId,
                    AddedDateTime = DateTime.UtcNow
                };
                context.tb_Activity.Add(tb_Activity);
                try
                {
                    context.SaveChanges();
                }
                catch (DbEntityValidationException ex)
                {
                    error.errCode = ErrorDetail.DataImportError;
                    error.errMsg  = ErrorDetail.GetMsg(error.errCode);
                    foreach (DbEntityValidationResult validationError in ex.EntityValidationErrors)
                    {
                        error.errMsg += ". Object: " + validationError.Entry.Entity.ToString();
                        foreach (DbValidationError err in validationError.ValidationErrors)
                        {
                            error.errMsg += ". " + err.ErrorMessage;
                        }
                    }
                    errs.Add("Error #" + error.errCode.ToString() + "!" + error.errMsg);
                    ViewData["ErrorList"] = errs;
                    return(View(model));
                }
            }
            switch (model._Callback)
            {
            case "AddActivityByMember":
                return(RedirectToAction("AddActivityByMember"));

            case "AddActivity":
                return(RedirectToAction("AddActivity", new { @id = model._MemberId }));

            case "AddPersonAssessmentActivity":
                return(RedirectToAction("AddPersonAssessmentActivity", "Assessment", new { @id = model._MemberId, CollegeID = model._ReturnCollegeID }));

            default:
                break;
            }
            return(View(model));
        }