Пример #1
0
        /// <summary>
        /// This function deletes the applicationstatuses for the applications
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        public bool DeleteApplicationStatuses(DeleteApplicationStatusHelper request)
        {
            var context = new dbDataContext();
            var appIds = request.ApplicationIds.TrimEnd(',').Split(new[] { "," }, StringSplitOptions.RemoveEmptyEntries);
            foreach (var appId in appIds)
            {
                // Deletes the application statuses
                var appHistories =
                    context.tbl_ApplicationStatusHistories.Where(
                        t => t.ApplicationId == int.Parse(appId) && t.ApplicationStatusId == request.ApplicationStatusId)
                        .ToList();
                context.tbl_ApplicationStatusHistories.DeleteAllOnSubmit(appHistories);
                context.SubmitChanges();

                // Set the status id in application table to the next recent one
                var app =
                    context.tbl_JobApplications.FirstOrDefault(t => t.JobApplicationId == int.Parse(appId));
                if (app != null)
                {
                    var nextLatestHistory = context.tbl_ApplicationStatusHistories.OrderByDescending(
                        t => t.ApplicationStatusId).FirstOrDefault(
                            t => t.ApplicationId == int.Parse(appId));
                    app.ApplicationStatusId = nextLatestHistory != null ? nextLatestHistory.ApplicationStatusId : 1;
                    app.LastUpdatedDate = DateTime.Now;
                    context.SubmitChanges();
                }

            }
            return true;
        }
 public bool DeleteApplicationStatuses(DeleteApplicationStatusHelper request)
 {
     return new JobApplications().DeleteApplicationStatuses(request);
 }